基于ISA总线与KH-9300的数据采集系统软件设计

2011-09-14 12:46:51来源: 互联网

1 引言
    该数据采集系统采用硬中断方式,通过对KH-9300板卡上的8254定时器和8259中断控制器编程定时触发中断并对外部脉冲计数,设计中每隔1 s采集1次数据,数据采集卡第0和1号通道采用串行方式并使用板卡上的内部时钟进行计时,第2、3、4、5号通道输人外部计数脉冲计数。所有通道采用内部门控信号。当串行的第0~1通道计数满时,就向板卡上的8259中断控制器的IN1引脚发出中断指令。通过8259中断控制器向计算机内的8259A的中断引脚(这里设计为第5号中断引脚)发出中断指令。CPU响应中断请求,执行中断程序,对板卡上第2、3、4、5号通道进行数据采集,并把采集后的数据写入文件。

2 板卡及8254定时、计数常数的设置
    时钟跳线的设置:0号通道选内部时钟,0和1两通道级联,2~5号通道接外部脉冲,选外部时钟。门控跳线设置为所有通道都选内部门控;基地址设置为280H;中断号设置为INT5(中断向量号为13);内部时钟频率设置为2 MHz。
    (1)定时常数的计算 定时系数=要求定时的时间/时钟脉冲的周期。若定时的时间为1 s,内部时钟频率为2 MHz。则时钟脉冲的周期为1 s/2 MHz=0.5μs,定时系数为1s/0.5 μs=2×106=2 000 000。由于8254定时计数器6个通道为16位减计数器,每个通道计数值最大为216-1=65 535<2 000 000。所以必须采用2个通道计时,设计中将第0通道和第1通道串联。由2×106=1 000×2×103,则定时系数:第0通道为2 000,第1通道为1 000。
    (2)计数通道的初始化 计数通道常数设置为最大值:FFFFH。最大计数频率为65 535 Hz/s。
    (3)计数累计脉冲量计算 计数累计脉冲量=FFFFH-计数器本次读数。

3 用Turbo C编写中断服务程序的方法
    C语言中断服务程序可由3部分实现。即编写中断服务程序、安装中断服务程序、激活中断服务程序。

[1] [2] [3]

关键字:ISA总线  KH-9300  数据采集

编辑:什么鱼 引用地址:http://www.eeworld.com.cn/Test_and_measurement/2011/0914/article_3458.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
论坛活动 E手掌握
微信扫一扫加关注
论坛活动 E手掌握
芯片资讯 锐利解读
微信扫一扫加关注
芯片资讯 锐利解读
推荐阅读
全部
ISA总线
KH-9300
数据采集

小广播

独家专题更多

富士通铁电随机存储器FRAM主题展馆
富士通铁电随机存储器FRAM主题展馆
馆内包含了 纵览FRAM、独立FRAM存储器专区、FRAM内置LSI专区三大部分内容。 
走,跟Molex一起去看《中国电子消费品趋势》!
走,跟Molex一起去看《中国电子消费品趋势》!
 
带你走进LED王国——Microchip LED应用专题
带你走进LED王国——Microchip LED应用专题
 
电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2016 EEWORLD.com.cn, Inc. All rights reserved