14281030方学毅_中断方式AD转换数据采集.doc_第1页
14281030方学毅_中断方式AD转换数据采集.doc_第2页
14281030方学毅_中断方式AD转换数据采集.doc_第3页
14281030方学毅_中断方式AD转换数据采集.doc_第4页
14281030方学毅_中断方式AD转换数据采集.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

学习资料收集于网络,仅供参考中断方式的A/D采集系统 一、 实验目的该实验使用了8259A,ADC0809,数码管来完成一个数据采集系统的设计,目的是了解中断方式的A/D采集数据的实现方法,掌握硬件设计和中断程序的编写方法,是对学生综合实验能力的训练。二、 实验内容使用ADC0809的通道0,接入0-5V的直流电压,用WR电位器调整模拟电压值,A/D的转换结束信号EOC接在主8259A的IR5上,采集100个数据并存入内存中,同时将采集的16进制数据显示在数码管上。请多次调整0-5V的电压值(旋动W1旋钮),进行A/D采集,并观测内存中的数据的变化情况。三、 实验现象每次采集的100个数据可能是相同的(数码管的数据也可能不变),当WR旋动时可以采到不同的数据。四、 实验接线图图1-6 实验连线图四、程序源代码PAGE 60,78CRLFMACRO;回车换行宏定义MOVDL,0DHMOVAH,02HINT 21HMOVDL,0AHMOVAH,02HNT 21HENDMDATASEGMENTINRDB?RESULTDB?BUFFDB600 DUP(?)XORGDW100DATAENDSSTACKSEGMENTSTACKSTACKDB50DUP(?)STACKENDSCODESEGMENTASSUMECS:CODE,DS:DATA,SS:STACK,ES:DATASTART:MOVAX,DATAMOVDS,AXMOVDI, OFFSETBUFF;MOVAL,0AHMOVAH,35HINT 21H;取IRQ2中断服务程序入口地址ES:BXPUSHES;保护ES,BX,DSPUSHBXPUSHDSMOVAX,SEGADINT;填写中断向量表(N=0AH)MOVDS,AXMOVDX,OFFSETADINTMOVAL,0AHMOVAH,25HINT 21HPOP DS;恢复DSIN AL,21HMOVBP,AX;保护中断屏蔽寄存器内容于BP中ANDAL,11111011BOUT21H,AL;允许IRQ2中断MOVCX,300HMOVDX,203H;8253初始化,0通道方式3MOVAL,36HOUTDX,ALMOVDX,200HMOVAL,10H;初值得0010HOUTDX,ALMOVAL,00HOUTDX,ALCCC:STIMOVDX,220HOUTDX,AL;启动一次A/D转换HLTCLI;关中断MOVAX,SI;取A/D转换结果PUSHDSMOVBX,6000H;写入6000H:02FFH区域MOVDS,BXMOVBX,CXDECBXMOVBX,ALANDAL,0F0H;高位十六进制转ASCII码PUSHCXMOVCL,04HSHRAL CLPOP CXADDAL,30HCMPAL,39HJBEAS1ADDAL,07HAS1:MOVDL,AL;显示高位MOVAH,02HINT 21HMOVDI,AL;INC DIMOVAL,BXANDAL,0FHADDAL,30HCMPAL,39HJBE AS2ADDAL,07HAS2:MOVDL,AL;显示低位MOVAH,02HINT 21HMOVDI,ALINC DIMOVDL,20H;显示两个空格MOVAH,02HINT 21HINT 21HPOP DSLOOPCCCPOP DX;恢复IRQ2中断向量POP DSMOVAL,0AHMOVAH,25HINT 21HMOVAX,BP;恢复中断屏蔽寄存器内容OUT21H,ALWAIT_IN:MOVAH,1;程序暂停,等待键入INT 21HMOVSI,OFFSETBUFFCALLCRTSETLL:MOVAH,0CH;写像素MOVBH,0MOVCL,10MOVCX,XORG;初始列值INC XORGMOVDH,0MOVDL,SIINC SIINT 10HCMP XORG,400JLE LLEXIT:;MOVAX,2;INT 10H;恢复80*25文本显示方式MOVAX,4C00H;结束INT 21HADINTPROCNEAR;中断服务程序PUSHAX;保护AXPUSHDX;保护DXMOV DX,220H;读A/D转换结果IN AL,DXMOVSI,AX;送SIMOVAL,20HOUT20H,AL;发中断结束命令POP DXPOP AX;恢复IRETADINTENDPCRTSETPROC;屏幕设置子程序MOVAX,12HINT 10HMOVAH,0BHMOVBX,9INT 10HRET CRTSETENDPCODEENDSENDSTART五、主程序流程图主程序流程图如下图开始用35HDOS功能调用取类型0AH的中断矢量,并入栈保存用25H DOS功能调用将A/D中断服务程序入口地址写入中断矢量表中0AH类型中断的位置A/D转换结果送内存6000H段等待硬件中断关中断8259初始化:0通道,3方式,初始值为0010H开中断300CX启动0809执行本次A/D转换取中断屏蔽寄存器的内容存

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论