欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    单片机应用技术中级教程.ppt

    • 资源ID:78697581       资源大小:1.80MB        全文页数:64页
    • 资源格式: PPT        下载积分:30金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要30金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    单片机应用技术中级教程.ppt

    第七章第七章单片机的典型外围接口技术单片机的典型外围接口技术作为单片机应用系统,键盘和显示器作为最常用的输入、输出接口往往是不可缺少的外围部件;另外计算机只能接受和处理数字信号,因此对于大量的模拟信号的处理,往往需要A/D、D/A接口,本章将初步介绍这方面的一些知识。教学内容教学内容:键盘接口、键盘分类:独立联接式和矩阵式,编码键盘和非编码键盘,键盘接口电路和工作原理,LED显示器接口,静态显示电路和动态显示电路及工作原理,并行DAC接口和简单编程,并行ADC接口和接口程序。教学重点教学重点:简单键盘、LED显示接口电路及工作原理,并行DAC,ADC与80C51单片机接口方法。教学要求教学要求:掌握简单键盘、LED显示接口电路及工作原理;掌握并行DAC,ADC与80C51单片机接口方法;了解串DAC、ADC的接口键盘处理程序任务键盘处理程序任务1)1)键输入键输入检查键盘是否有键被按下,消检查键盘是否有键被按下,消除按键抖动。确定被按键的键号,除按键抖动。确定被按键的键号,获取键号。获取键号。硬件电路消除抖动或软件消除硬件电路消除抖动或软件消除抖动。抖动。2)2)键译码键译码键号为键盘位置码,根据键号查表得出被按键号为键盘位置码,根据键号查表得出被按键的键值。键值:数字键键的键值。键值:数字键0 09 9、字符键、字符键0AH0AH0FH0FH、功能键功能键10H10H 。延时等待延时等待10ms仍有按键信号?仍有按键信号?Y有按键信号?有按键信号?NYN键盘处理键盘处理按键释放?按键释放?NY3 3)键处理键处理根据键值转移到不同程序段。根据键值转移到不同程序段。若键值属于数字、字符键,则调用显示数字若键值属于数字、字符键,则调用显示数字和字符的子程序。和字符的子程序。若键值属于功能键,则进行多分支转移,执若键值属于功能键,则进行多分支转移,执行各个功能程序段。行各个功能程序段。抖动时间抖动时间10ms开关动作时间开关动作时间100ms“1”“0”10msI/O接接口口+5v+5v消除抖动电路开关开关单单片片机机键盘状态的监键盘状态的监测方法:测方法:中断中断方式还是查询方式还是查询方式方式7.1键盘接口键盘接口1。键盘的工作原理:有独立连接式和矩阵式两类键盘。(1)独立连接式键盘:这是一类最简单的键盘,每个键独立地连接一根数据输入线。如P222图图71所示。当没有任何键被按下时,所有输入线都为高电平,若某键被按下,该线被拉成低电平。其优点是结构简单、使用方便;但占口线太多。(2)矩阵式键盘:如P223图图72a所示。它包括:键盘开关矩阵;输出(行线)锁存器;输入(列线)缓冲器。2。矩阵式键盘的工作过程:逐行扫描(使某行为0,其余为高);读入列缓冲器状态,若为全1,则该行无键按下,继续另一行;若有列线为0,则该行该列的键被按下;若已判断有某键被按下,则转该键的键处理子程序。键盘扫描程序框图见P223图72b,扫描方式有:程控、定时、中断扫描。独立式键盘电路独立式键盘电路矩阵式键盘矩阵式键盘01+5vC0C1R0R1键盘键盘I/O接口接口1.1.键盘扫描方式键盘扫描方式(1).(1).扫描法扫描法列线输出,行线输入。列线输出,行线输入。列线逐行输出列线逐行输出0 0,某行有按键,行线输入有,某行有按键,行线输入有0 0,若无按键,行线输入全,若无按键,行线输入全部为部为1 1。(2).(2).反转法反转法行列线交换输入、输出,两步获取按键键号。行列线交换输入、输出,两步获取按键键号。P1.0P1.1P1.7+5v每每个个按按键键单单独独占占有有一一根根I/O接接口引线。口引线。单键管理程序单键管理程序key:key:setbsetb p1.0 p1.0 jbjb p1.0,key2;p1.0,key2;有键按下有键按下P1.0=0P1.0=0key1:key1:acallacall disdis ;延时,防止抖动延时,防止抖动 setbsetb p1.0 p1.0 jbjb p1.0,key2 p1.0,key2;键是否释放消除了连击功能键是否释放消除了连击功能 jnbjnb p1.0,key1 p1.0,key1 key2:ret key2:retORG0000HAT0:SETBP1.0SETBP1.1JBP1.0,AT2ACALLDISJBP1.0,AT4MOV30H,#00HAT1:JBP1.0,AT4ACALLDISAJMPAT1AT2:JBP1.1,AT4ACALLDISJBP1.1,AT4MOV30H,#01HAT3:JBP1.1,AT4ACALLDISAJMPAT3AT4:RETDIS:7.1.2键盘的接口电路1。直接使用I/O口的键盘电路如P224图图73所示。由于80C51的I/O口具有输出锁存与输入缓冲的功能,可用来组成键盘电路。图中用P1口组成44的16键键盘,列线接低4位并通过与门和/INT0相连;行线串联一个二极管接高4位,串联二极管是为了防止多键同时按下时使输出口短路。ORG0000HAT0:ACALLKS1JNZAT1AJMPDISAT1:ACALLDISACALLKS1JNZAT2AJMPDISAT2:MOVR2,#0FEHMOVR3,#00HAT3:MOVP1,R2MOVA,P1ANLA,#0F0HCJNEA,#0F0H,AT4MOVA,R2JNBACC.3,AT7RLAMOVR2,AMOVA,R3ADDA,#04HMOVR3,AAJMPAT3AT4:MOVB,#04HAT5:JNBACC.4,AT6INCR3RRADJNZB,AT5AJMPAT7AT6:ACALLDISACALLKS1JNZAT6AT7:RETKS1:MOVP1,#0F0HMOVA,P1ORLA,#0FHCPLARETDIS:RET2。利用I/O口和译码器的接口如P224图图74所示。利用138译码器可由三根口线产生8根列线,节省I/O口线。3。利用串行口的键盘电路如P224图图75所示。7.2显示器接口7.2.1LED显示器的工作原理1。发光二极管的控制P225图图76,只有当U1U22.8V亮2。七段LED的控制它是由若干发光二极管组合而成的8字形显示块,由a、b、c、d、e、f、g七段及小数点h组成,有共阳极和共阴极两种结构形式。如P225图图77所示。共阴极形的字形与字段的关系如P226表表71所示。共阴极LED的公共端接地。(a)外型结构;(b)共阴极;(c)共阳极数码管字型编码表显显示示字字符符字字型型共共阳阳极极共共阴阴极极dpgfedcba字型字型码码dpGfedcba字型字型码码0011000000C0H001111113FH1111111001F9H0000011006H2210100100A4H010110115BH3310110000B0H010011114FH441001100199H0110011066H551001001092H011011016DH661000001082H011111017DH7711111000F8H0000011107H881000000080H011111117FH991001000090H011011116FHAA1000100088H0111011177HBB1000001183H011111007CHCC11000110C6H0011100139H显示显示字符字符字字型型共共阳阳极极共共阴阴极极dpgfedcba字型字型码码dpGfedcba字型字型码码DD10100001A1H010111105EHEE1000011086H0111100179HFF100011108EH0111000171HHH1000100189H0111011076HLL11000111C7H0011100038HPP100011008CH0111001173HRR11001110CEH0011000131HUU11000001C1H001111103EHYY1001000191H011011106EH 10111111BFH0100000040H.011111117FH1000000080H熄熄灭灭灭灭11111111FFH0000000000H7.2.2显示器的分类与接口显示电路通常分为静态显示和动态显示两类。abhCOMafbgecdhabhCOMabhCOM每个每个LEDLED需要一个需要一个8 8位并行口位并行口COMhCOMD7D1D0D0D1D2hbbhCOMafbgecdhaaba多位多位LEDLED共用一个共用一个8 8位字段口,位字段口,各位各位LEDLED公共端用字位口控制,公共端用字位口控制,扫描输出显示不同字形。扫描输出显示不同字形。(1)静态显示电路:静态显示要求每个8字形的显示块都要有段码锁存器(如P227图图78及图图79所示)。图78采用软件译段码,273锁存;图79采用硬件译码,247译码驱动。(2)动态显示电路:它和静态显示相比,可以节省显示驱动器,但要求CPU定时对显示器进行刷新,要占用较多的CPU工作时间。其显示电路如P229图图711所示,包括显示块、字形锁存器和字位锁存器。工作过程是:先将显示字形代码送字形锁存器锁存,然后把要显示的位置送字位锁存器锁存,从而使该位点亮。为防止闪烁,显示时间为12ms,且每隔20ms以内要刷新一次。例1(P230):通过P1口及138译码器的接口电路。这是一个动态显示的例子。接口电路见P231图713。工作过程:首先,使P1口的低4位输出字形代码;P1口的高3位输出一个位扫描字(与138译码配合),显示某一位,并保持1ms。各位显示一遍之后,关显示。尔后,使P1口的高4位转为输入方式,P1口的低4位输出键扫描信号,有键按下时,转入键译码和处理程序。其中,要注意在适当的时候进行显示器刷新,以使显示不灭掉。其它的有关显示与键盘的接口方法将在后续课程中进一步讲解。7.3DAC数数/模转换接口模转换接口一、一、D/AD/A转换器的性能指标转换器的性能指标1.1.分分辨辨率率(Resolution)分辨率是指D/A转换器能分辨的最小输出模拟增量,取决于输入数字量的二进制位数。如果数字量的位数为n n,则称D/A转换器分辨率为 n n位位或称为模拟量满量程的1/21/2n n.如8位D/A转换器,转换后的电压满量程是5V,则分辨率为8位或5V/28=20mV.2.转转换换精精度度(Conversion Accuracy)指满量程时DAC的实际模拟输出值和理论值的接近程度。转换精度为1/2个最低有效位(常用1/2 LSB表示),如8位D/A转换器的精度为:(1/2)(1/256)=1/5123.偏偏移移量量误误差差(Offset Error)偏移量误差是指输入数字量为零时,输出模拟量对零的偏移值。4.线线性性度度(Linearity)线性度是指DAC的实际转换特性曲线和理想直线之间的最大偏移差。5.建建立立时时间间建立时间是描述D/A转换速度快慢的一个参数,指从输入数字量变化到输出达到终值误差1/2LSB(最低有效位)时所需的时间,通常以建立时间来表明转换速度.二、二、D/AD/A转换原理转换原理 n n位数字量与模拟量的关系式:位数字量与模拟量的关系式:V VO O=V=VREF REF/2/2n n D D(V(VREF REF-参考电压参考电压)三、三、集成集成D/AD/A转换器转换器DAC0832DAC0832 DAC0832 DAC0832 是是8 8位双缓冲器结构的位双缓冲器结构的D/AD/A转换器。转换器。单电源供电,在+5+15V范围内均可正常工作。基准电压的范围为10V,电流建立时间为1s,CMOS工艺,低功耗20mW。DAC0832共有20条引脚,双列直插式封装。引脚连接和命名如图所示。DAC0832内部结构框图D7D0D7D0:转换数据输入端,:片选信号,输入,低电平有效。ILEILE:数据锁存允许信号,输入,高电平有效。:写信号1,输入,低电平有效。:写信号2,输入,低电平有效。:数据传送控制信号,输入,低电平有效。I IOUT1OUT1:电流输出1,当DAC寄存器中各位为全“1”时,电流最大;为全“0”时,电流为0。I IOUT2OUT2:电流输出2,电路中保证IOUT1+IOUT2=常数)R Rfbfb:反馈电阻端,片内集成的电阻为15k。V Vrefref:参考电压,可正可负,范围为-10+10V。DGNDDGND:数字数字量量地。AGNDAGND:模拟量地。四、四、MCS-51MCS-51和和D/AD/A的接口的接口1.DAC08321.DAC0832输出电压与输入数字量的关系输出电压与输入数字量的关系输入数字量Bb7 b6 b5 b4 b3 b2 b1 b0单极性 Vout(理想值)双极性 Vout(理想值)+VREF时+VREF时11111111-VREF(255/256)|VREF(127/128)11000000-VREF(192/256)VREF(64/128)10000000-VREF(128/256)001111111-VREF(127/256)-VREF(1/128)00111111-VREF(63/256)-VREF(64/128)00000000-VREF(0/256)-VREF(127/128)2.DAC08322.DAC0832的的3 3种单缓冲连接方式种单缓冲连接方式(a)DAC寄存器直通方式DAC寄存器控制脚:输入寄存器控制脚:ILEILE例例1 1:D/AD/A转换程序,用转换程序,用DAC 0832DAC 0832输出输出0 05V5V锯齿波,电路为直通方锯齿波,电路为直通方式式。设设V VREFREF=-5V=-5V,DAC 0832DAC 0832地址为地址为7FFFH(CS7FFFH(CS接接P2.7)P2.7),脉冲周期要脉冲周期要求为求为100ms100ms。DACSDACS:MOVMOVDPTRDPTR,#7FFFH#7FFFH;0832 I/O0832 I/O地址地址MOVMOVA A,#0#0;开始输出开始输出0V0VDACLDACL:MOVXMOVXDPTRDPTR,A A;输出模拟量输出模拟量INCINCA A;升压升压ACALLACALL DELAYDELAY;延时延时100ms/256100ms/256AJMPAJMPDACLDACL;连续输出连续输出DELAYDELAY:;延时子程序延时子程序100ms几点说明几点说明:(1)程序每循环1次,A加1,可见锯齿波的上升沿是由256个小阶梯构成的。(2)可通过循环程序段的机器周期数,计算出锯齿波的周期,并可根据需要通过延时的办法来改变波形周期。(3)通过A加1,可得到正向的锯齿波;如要得到负向的锯齿波,只要将A加1改为A减1指令即可实现。(4)程序中A的变化范围为0255,所得到的锯齿波为满幅度。例例2 2:产生矩形波、方波 ORG 0000HMAIN:MOV DPTR,7FFFH ;指向0832口地址 SS1:MOV A,00H ;取下限值 MOVX DPTR,A ;输出 ACALL DMS1 ;调用延时程序 MOV A,#0FFH ;取上限值 MOVX DPTR,A ;输出 ACALL DMS2 ;调用延时程序 SJMP SS1 END几点说明几点说明:(1)以上程序产生的是矩形波,其低电平的宽 度 由 延 时 子 程 序DMS1所延时的时间来决定,高电平的宽度则由子程序DMS2所延时的时间来决定。(2)改变延时子程序DMS1和DMS2的延时时间,就可改变矩形波上下 沿 的 宽 度。若DMS1=DMS2(两 者 延 时一样),则输出的是方波。(3)改变上限值或下限值便可改变矩形波的幅值:单极性输出时为0-5V或0+5V;双极性输出时为-5+5V。例3.产生三角波利用DAC0832产生三角波的参考程序如下:MOV A,00H ;取下限值 MOV DPTR,7FFFH ;指向0832口地址SS1:MOVX DPTR,A ;输出 NOP ;延时 NOP NOPSS2:INC A ;转换值增量 JNZ SS1 ;未到峰值,则继续SS3:DEC A ;已到峰值,则取后沿 MOVX DPTR,A ;输出 NOP ;延时 NOP NOP JNZ SS3 ;未到谷值,则继续 SJMP SS2 ;已到谷值,则反复几点说明几点说明:(1)本程序所产生的三角波谷值为0,峰值为+5V(或-5V)。若改变下限值和上限值,那么三角波的谷值和峰值也随之改变。(2)改变延时时间可改变三角波的斜率。(3)若在谷值和峰值处延时较长时间的话,则输出梯形波,延时时间的长短取决于梯形波上下边的宽度。(b)输入寄存器直通方式(c)两个寄存器同时选通及锁存方式3.DAC08323.DAC0832的双极性输出接口的双极性输出接口DAC0832的双极性输出接口运算放大器A2的作用是把运算放大器A1的单极性输出变为双极性输出。例如,当Vref=+5V时,A1的电压输出范围为0-5V。当VOUT1=0V时,VOUT2=-5V;当VOUT1=-2.5V时,VOUT2=0V;当VOUT1=-5V时,VOUT2=+5V。VOUT2的输出范围为-5V+5V。VOUT2与参考电压Vref的关系为:数字码8031和两片DAC0832的接口(双缓冲方式)同样地,也有并行扩展与串行扩展D/A,有关并行扩展的方法我们将在其它课程中作介绍。P242245介绍了利用MAX518芯片串行扩展D/A的方法。MAX518的引脚及内部结构如P242图726所示。一片MAX518可扩展2路的8位D/A。它与80C51单片机的接口电路见P244图图728。有关的模拟I2C总线的编程可参考P244245,(各程序需补充某些语句)MAX518编程(编程(P206),),设置一路设置一路DAC0输出的程序如下:输出的程序如下:OUT0:MOVA,#ADDR;#ADDR=#58HACALLSTARTACALLWRBYTL1:ACALLCHACKJBF0,L1;确证收到确证收到ACK信号信号MOVA,#DAC0;#DAC0=#00HACALLWRBYTL2:ACALLCHACKJBF0,L2;确证收到确证收到ACK信号信号MOVA,B;取要发送的数(在取要发送的数(在B中)中)ACALLWRBYTL3:ACALLCHACKJBF0,L3;确证收到确证收到ACK信号信号ACALLSTOPRETR2R1R0RSTPD/A0设置两路DAC输出的程序及后面的三个子程序,在每一句ACALLWRBYT下面,也都要加入下面两语句:L:ACALLCHACKJBF0,L;确证收到确证收到ACK信号信号7.4ADC模模/数转换接口数转换接口一、一、A/DA/D转换器的性能指标转换器的性能指标 1.1.分辨率分辨率(Resolution)分辨率是指A/D转换器能分辨的最小输入模拟增量,取决于输入数字量的二进制位数。如果数字量的位数为n n,则称A/D转换器分辨率为 n n位位或称为模拟量满量程的1/21/2n n.如8位D/A转换器,转换后的电压满量程是5V,则分辨率为8位或5V/28=20mV.2.转换精度转换精度(Conversion Accuracy)指转换值和理论值的之间的误差。转换精度为1/2个最低有效位(常用1/2 LSB表示),也就是量化误差。如8位A/D转换器的精度(即相对量化误差)为:(1/2)(1/256)=1/512;绝对量化误差满量程电压相对量化误差5V(1/512)=9.8mV3.3.转换器转换时间转换器转换时间:把输入的模拟量转换为n位数字量所需要的时间。转换时间大约在几微秒到几百微秒之间。二、二、A/DA/D转换器芯片转换器芯片ADC0809ADC08091.ADC08091.ADC0809的内部逻辑结构的内部逻辑结构ADC0809的内部逻辑结构图ADC 0809/0808ADC 0809/0808为为8 8路输入通道、路输入通道、8 8位逐次逼近式位逐次逼近式A/DA/D转换器,可分时转换转换器,可分时转换8 8路模路模拟信号。拟信号。由一个由一个8 8位位逐次逼近逐次逼近式式A/DA/D转换转换器、器、8 8路模路模拟转换开拟转换开关、关、3-83-8地地址锁存译址锁存译码器和三码器和三态输出数态输出数据锁存器据锁存器组成组成ADC0809通道选择表ADC0809的引脚图(1)IN7IN0:模拟量输入通道。ADC0809对输入模拟量的要求主要有:信号单极性,电压范围05 V,若信号过小还需进行放大。另外,在A/D转换过程中,模拟量输入的值不应变化太快,因此,对变化速度快的模拟量,在输入前应增加采样保持电路。(2)A、B、C:地址线。A为低位地址,C为高位地址,用于对模拟通道进行选择。上图中为ADDA、ADDB和ADDC,其地址状态与通道相对应的关系见上表。(3)ALE:地址锁存允许信号。在对应ALE上跳沿,A、B、C地址状态送入地址锁存器中。2.ADC08092.ADC0809的引脚说明的引脚说明(4)START:转换启动信号。START上跳沿时,所有内部寄存器清0;START下跳沿时,开始进行A/D转换;在A/D转换期间,START应保持低电平。(5)D7D0:数据输出线。其为三态缓冲输出形式,可以和单片机的数据线直接相连。(6)OE:输出允许信号。其用于控制三态输出锁存器向单片机输出转换得到的数据。OE=0,输出数据线呈高电阻;OE=1,输出转换得到的数据。(7)CLK:时钟信号。ADC0809的内部没有时钟电路,所需时钟信号由外界提供,因此有时钟信号引脚。通常使用频率为500kHz的时钟信号。(8)EOC:转换结束状态信号。EOC=0,正在进行转换;EOC=1,转换结束。该状态信号既可作为查询的状态标志,又可以作为中断请求信号使用。转换时间约128s。(9)VCC:+5V电源。(10)Vref:参考电源。参考电压用来与输入的模拟信号进行比较,作为逐次逼近的基准。其典型值为+5V(Vref(+)=+5V,Vref(-)=0V)3.ADC 08093.ADC 0809与单片机连接与单片机连接ADC0809ADC0809的的8 8个通道个通道IN0IN7IN0IN7的地址为:的地址为:7FF8H7FFFH(7FF8H7FFFH(如下图)如下图)A/DA/D转换程序:转换程序:MOV DPTRMOV DPTR,#07FF8H#07FF8H;ADCADC口地址口地址 MOV AMOV A,#00#00 ;转换转换IN0IN0 MOVX DPTRMOVX DPTR,A A;启动启动A/DA/D转换转换 LCALL DELAYLCALL DELAY ;等待转换结束等待转换结束 MOVX AMOVX A,DPTRDPTR;取转换结果取转换结果AD07ALEINT0WRP2.7RDD07ADDABCCLKEOCALESTARTOE11111MCS-51ADC080983IN07注意:此处的A与A/D转换无关,可为任意值 4.4.转换数据的传送转换数据的传送A/D转换后得到的是数字量的数据,这些数据应传送给单片机进行处理。数据传送的关键问题是如何确认A/D转换完成,因为只有确认数据转换完成后,才能进行传送。为此,可采用下述三种方式。1)定时传送方式定时传送方式对于一种A/D转换器来说,转换时间作为一项技术指标是已知的和固定的。例如,ADC0809转换时间为128s,相当于6MHz的MCS-51单片机R64个机器周期。可据此设计一个延时子程序,A/D转换启动后即调用这个延时子程序,延迟时间一到,转换肯定已经完成了,接着就可进行数据传送。2)查询方式查询方式A/D转换芯片有表明转换完成的状态信号,例如ADC0809的EOC端。因此,可以用查询方式,软件测试EOC的状态,即可确知转换是否完成,然后进行数据传送。3)中断方式中断方式把表明转换完成的状态信号(EOC)作为中断请求信号,以中断方式进行数据传送。在图中,EOC信号经过反相器后送到单片机的INT0,因此可以采用查询该引脚或中断的方式进行转换后数据的传送。不管使用上述哪种方式,一旦确认转换完成,即可通过指令进行数据传送。首先送出口地址,并以作选通信号,当信号有效时,OE信号即有效,把转换数据送上数据总线,供单片机接收,即:MOVDPTR,#7FF8H;选中通道0MOVXA,DPTR;信号有效,输出转换后的数据到AADC0809与单片机的连接方法,及程序见课本P208-P211三、应用举例三、应用举例根据电路图,设计一个8路模拟量输入的巡回检测系统,采样数据依次存放在片内RAM78H7FH单元中,其数据采样的初始化程序和中断服务程序如下。(中断法)初始化程序:ORG0000H;主程序入口地址AJMPMAIN;跳转主程序ORG0013H;中断入口地址AJMPINT1;跳转中断服务程序主程序MAIN:MOV R0,#78H;数据暂存区首址MOV R2,#08H;8路计数初值SETBIT1;边沿触发SETBEA;开中断SETBEX1;允许中断MOVDPTR,#7FF8H;指向0809IN0通道地址MOVA,#00H;此指令可省,A可为任意值LOOP:MOVXDPTR,A;启动A/D转换HERE:SJMP HERE;等待中断 DJNZR2,LOOP;巡回未完继续中断服务程序:INT1:MOVXA,DPTR;读A/D转换结果MOVR0,A;存数INC DPTR;更新通道INC R0;更新暂存单元RETI;返回END上述程序是用中断方式来完成转换后数据的传送的,也可以用查询的方式实现之,源程序如下:(查询法)ORG0000H;主程序入口地址AJMPMAIN;跳转主程序ORG1000HMAIN:MOVR0,#78HMOVR2,#08HMOVDPTR,#7FF8HMOVA,#00HL0:MOVXDPTR,AL1:JBP3.3,L1;查询是否为0(或ACALLDMS130US)MOVXA,DPTR;为0,则转换结束,读出数据MOVR0,AINC R0INC DPTRDJNZR2,L0$:SJMP$注:延时等待法延时等待法将将JBP3.3,L1指令改成指令改成ACALLDMS130US即可。即可。(DMS130US是延时是延时130US的程序)的程序)ADC也有并行扩展与串行扩展A/D,有关并行扩展的方法我们将在其它课程中作介绍。P252254介绍了利用MAX187、PCF8591等芯片串行扩展A/D的方法。MAX187是一个具有SPI总线的12位模/数转换器。它的引脚及内部结构如P253图737所示。它与80C51单片机的接口电路见P254图739。而PCF8591是一个具有I2C总线的4路模路模/数、数、1路数路数/模模8位转换器位转换器。它的16P引脚及内部结构如P256图740所示。它与80C51单片机的接口电路见P258图741。以上利用SPI及I2C总线扩展串行A/D的方法,只要参考相应芯片的控制字及前面串行扩展存储器的编程方法,配合书中的说明不难完成其软件编程。第八章第八章80C51单片机的应用系统实例单片机的应用系统实例8.1油井压力、流速数据采集系统油井压力、流速数据采集系统在石油开采过程中,需要确切地了解油井内部的原油压力和流速,这对于有在石油开采过程中,需要确切地了解油井内部的原油压力和流速,这对于有效地提高油井的产量有十分重要的意义。本系统可以随油井钻头深入井下,实地效地提高油井的产量有十分重要的意义。本系统可以随油井钻头深入井下,实地采集并存储第一手的压力和流速数据。返回地面后,把数据送入计算机内,为分采集并存储第一手的压力和流速数据。返回地面后,把数据送入计算机内,为分析油井状况提供准确的原始资料析油井状况提供准确的原始资料。1。设计目标设计目标:本系统使用本系统使用89C5189C51作为控制芯片,对来自压力及流速传感器的信号进行采集,并把作为控制芯片,对来自压力及流速传感器的信号进行采集,并把采集到的数据存放在数据存储器中。系统可以工作在标定和实际测量两种工作状采集到的数据存放在数据存储器中。系统可以工作在标定和实际测量两种工作状态下。标定状态是为了修正系统误差而在测量前进行一组标准压力和流速数据的态下。标定状态是为了修正系统误差而在测量前进行一组标准压力和流速数据的测量。具有可与通用计算机联接的串行通信接口。在等待状态时,系统工作在低测量。具有可与通用计算机联接的串行通信接口。在等待状态时,系统工作在低功耗方式。系统具有工作状态显示系统,可以显示标定、测量、通信、等待等不功耗方式。系统具有工作状态显示系统,可以显示标定、测量、通信、等待等不同的工作状态同的工作状态。2。设计描述设计描述:为取得特定油井深度下的原油压力及流速数据,本系统的工作时序必须与钻头进入为取得特定油井深度下的原油压力及流速数据,本系统的工作时序必须与钻头进入油井的时间和所到达的深度相符合。钻头进入油井后的确定时间内,系统处于等待油井的时间和所到达的深度相符合。钻头进入油井后的确定时间内,系统处于等待状态;当钻头达到预定的深度以后,系统自动开启并开始采集第一次数据;随后进状态;当钻头达到预定的深度以后,系统自动开启并开始采集第一次数据;随后进入等待状态,等待下一次的数据采集。这样的采集进行六次,然后系统便停止工作,入等待状态,等待下一次的数据采集。这样的采集进行六次,然后系统便停止工作,处于低功耗状态;待钻头重新回到地面后,再与计算机联接,把采集到的数据输入处于低功耗状态;待钻头重新回到地面后,再与计算机联接,把采集到的数据输入计算机进行进一步的处理。由于系统在工作前可以进行标定,所以处理后的数据能计算机进行进一步的处理。由于系统在工作前可以进行标定,所以处理后的数据能比较准确地反映油井内原油的压力和流速的真实情况比较准确地反映油井内原油的压力和流速的真实情况3。硬件系统组成硬件系统组成硬件系统组成硬件系统组成:压力、流速数据采集系统由主机板、信号电路压力、流速数据采集系统由主机板、信号电路板及通信接口板三部分组成板及通信接口板三部分组成图8-1系统总体框图图8-2主机板电路原理图图8-3信号电路板电路原理图图8-4通信接口板电路原理图4 4。软件的描述。软件的描述。软件的描述。软件的描述主程序的流程见图主程序的流程见图8-58-5。由流程图可以看出,整个程序分为数。由流程图可以看出,整个程序分为数据采集程序和流速标定程序两部分。系统上电或复位之后,经系据采集程序和流速标定程序两部分。系统上电或复位之后,经系统初始化,首先判断统初始化,首先判断P3.2(INT0)P3.2(INT0)的状态的状态:若为若为1 1,转入数据采集程,转入数据采集程序;若为序;若为0 0,则转入流速标定程序,则转入流速标定程序图8-5主程序的流程图8.2 单片机控制的家用电加热锅炉电路单片机控制的家用电加热锅炉电路这里介绍一种单片机控制的家用电加热锅炉电路,它能够显示温度和时间,可根据家人起居习惯来设定运行和停止的时间间隔和次数,从而可以节约电能消耗。本电路设计是单片机系统的综合应用。它包含了LCD显示接口,键盘组成的人机交互接口,I2C总线接口的时钟芯片和E2PROM存储器芯片,单总线接口的温度传感器芯片,和输出负载接口电路,工作原理:如图8-6所示。本电路采用8位单片机(U1:AT8052)作为主控制芯片,晶振采用12MHz图图8-6家用电加热锅炉电路工作原理图家用电加热锅炉电路工作原理图补充:VCD:洗衣机的控制。End

    注意事项

    本文(单片机应用技术中级教程.ppt)为本站会员(赵**)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开