单片机应用技术中级教程.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《单片机应用技术中级教程.ppt》由会员分享,可在线阅读,更多相关《单片机应用技术中级教程.ppt(64页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第七章第七章单片机的典型外围接口技术单片机的典型外围接口技术作为单片机应用系统,键盘和显示器作为最常用的输入、输出接口往往是不可缺少的外围部件;另外计算机只能接受和处理数字信号,因此对于大量的模拟信号的处理,往往需要A/D、D/A接口,本章将初步介绍这方面的一些知识。教学内容教学内容:键盘接口、键盘分类:独立联接式和矩阵式,编码键盘和非编码键盘,键盘接口电路和工作原理,LED显示器接口,静态显示电路和动态显示电路及工作原理,并行DAC接口和简单编程,并行ADC接口和接口程序。教学重点教学重点:简单键盘、LED显示接口电路及工作原理,并行DAC,ADC与80C51单片机接口方法。教学要求教学要求
2、:掌握简单键盘、LED显示接口电路及工作原理;掌握并行DAC,ADC与80C51单片机接口方法;了解串DAC、ADC的接口键盘处理程序任务键盘处理程序任务1)1)键输入键输入检查键盘是否有键被按下,消检查键盘是否有键被按下,消除按键抖动。确定被按键的键号,除按键抖动。确定被按键的键号,获取键号。获取键号。硬件电路消除抖动或软件消除硬件电路消除抖动或软件消除抖动。抖动。2)2)键译码键译码键号为键盘位置码,根据键号查表得出被按键号为键盘位置码,根据键号查表得出被按键的键值。键值:数字键键的键值。键值:数字键0 09 9、字符键、字符键0AH0AH0FH0FH、功能键功能键10H10H 。延时等待
3、延时等待10ms仍有按键信号?仍有按键信号?Y有按键信号?有按键信号?NYN键盘处理键盘处理按键释放?按键释放?NY3 3)键处理键处理根据键值转移到不同程序段。根据键值转移到不同程序段。若键值属于数字、字符键,则调用显示数字若键值属于数字、字符键,则调用显示数字和字符的子程序。和字符的子程序。若键值属于功能键,则进行多分支转移,执若键值属于功能键,则进行多分支转移,执行各个功能程序段。行各个功能程序段。抖动时间抖动时间10ms开关动作时间开关动作时间100ms“1”“0”10msI/O接接口口+5v+5v消除抖动电路开关开关单单片片机机键盘状态的监键盘状态的监测方法:测方法:中断中断方式还是
4、查询方式还是查询方式方式7.1键盘接口键盘接口1。键盘的工作原理:有独立连接式和矩阵式两类键盘。(1)独立连接式键盘:这是一类最简单的键盘,每个键独立地连接一根数据输入线。如P222图图71所示。当没有任何键被按下时,所有输入线都为高电平,若某键被按下,该线被拉成低电平。其优点是结构简单、使用方便;但占口线太多。(2)矩阵式键盘:如P223图图72a所示。它包括:键盘开关矩阵;输出(行线)锁存器;输入(列线)缓冲器。2。矩阵式键盘的工作过程:逐行扫描(使某行为0,其余为高);读入列缓冲器状态,若为全1,则该行无键按下,继续另一行;若有列线为0,则该行该列的键被按下;若已判断有某键被按下,则转该
5、键的键处理子程序。键盘扫描程序框图见P223图72b,扫描方式有:程控、定时、中断扫描。独立式键盘电路独立式键盘电路矩阵式键盘矩阵式键盘01+5vC0C1R0R1键盘键盘I/O接口接口1.1.键盘扫描方式键盘扫描方式(1).(1).扫描法扫描法列线输出,行线输入。列线输出,行线输入。列线逐行输出列线逐行输出0 0,某行有按键,行线输入有,某行有按键,行线输入有0 0,若无按键,行线输入全,若无按键,行线输入全部为部为1 1。(2).(2).反转法反转法行列线交换输入、输出,两步获取按键键号。行列线交换输入、输出,两步获取按键键号。P1.0P1.1P1.7+5v每每个个按按键键单单独独占占有有一
6、一根根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,AT2ACALL
7、DISJBP1.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:A
8、CALLKS1JNZAT1AJMPDISAT1: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,#0FHCP
9、LARETDIS: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)共阳极数码管字型编码表显显示
10、示字字符符字字型型共共阳阳极极共共阴阴极极dpgfedcba字型字型码码dpGfedcba字型字型码码0011000000C0H001111113FH1111111001F9H0000011006H2210100100A4H010110115BH3310110000B0H010011114FH441001100199H0110011066H551001001092H011011016DH661000001082H011111017DH7711111000F8H0000011107H881000000080H011111117FH991001000090H011011116FHAA1000100
11、088H0111011177HBB1000001183H011111007CHCC11000110C6H0011100139H显示显示字符字符字字型型共共阳阳极极共共阴阴极极dpgfedcba字型字型码码dpGfedcba字型字型码码DD10100001A1H010111105EHEE1000011086H0111100179HFF100011108EH0111000171HHH1000100189H0111011076HLL11000111C7H0011100038HPP100011008CH0111001173HRR11001110CEH0011000131HUU11000001C1H00
12、1111103EHYY1001000191H011011106EH 10111111BFH0100000040H.011111117FH1000000080H熄熄灭灭灭灭11111111FFH0000000000H7.2.2显示器的分类与接口显示电路通常分为静态显示和动态显示两类。abhCOMafbgecdhabhCOMabhCOM每个每个LEDLED需要一个需要一个8 8位并行口位并行口COMhCOMD7D1D0D0D1D2hbbhCOMafbgecdhaaba多位多位LEDLED共用一个共用一个8 8位字段口,位字段口,各位各位LEDLED公共端用字位口控制,公共端用字位口控制,扫描输出显
13、示不同字形。扫描输出显示不同字形。(1)静态显示电路:静态显示要求每个8字形的显示块都要有段码锁存器(如P227图图78及图图79所示)。图78采用软件译段码,273锁存;图79采用硬件译码,247译码驱动。(2)动态显示电路:它和静态显示相比,可以节省显示驱动器,但要求CPU定时对显示器进行刷新,要占用较多的CPU工作时间。其显示电路如P229图图711所示,包括显示块、字形锁存器和字位锁存器。工作过程是:先将显示字形代码送字形锁存器锁存,然后把要显示的位置送字位锁存器锁存,从而使该位点亮。为防止闪烁,显示时间为12ms,且每隔20ms以内要刷新一次。例1(P230):通过P1口及138译码
14、器的接口电路。这是一个动态显示的例子。接口电路见P231图713。工作过程:首先,使P1口的低4位输出字形代码;P1口的高3位输出一个位扫描字(与138译码配合),显示某一位,并保持1ms。各位显示一遍之后,关显示。尔后,使P1口的高4位转为输入方式,P1口的低4位输出键扫描信号,有键按下时,转入键译码和处理程序。其中,要注意在适当的时候进行显示器刷新,以使显示不灭掉。其它的有关显示与键盘的接口方法将在后续课程中进一步讲解。7.3DAC数数/模转换接口模转换接口一、一、D/AD/A转换器的性能指标转换器的性能指标1.1.分分辨辨率率(Resolution)分辨率是指D/A转换器能分辨的最小输出
15、模拟增量,取决于输入数字量的二进制位数。如果数字量的位数为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.线线性性度度(Lineari
16、ty)线性度是指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转换器。转换
17、器。单电源供电,在+5+15V范围内均可正常工作。基准电压的范围为10V,电流建立时间为1s,CMOS工艺,低功耗20mW。DAC0832共有20条引脚,双列直插式封装。引脚连接和命名如图所示。DAC0832内部结构框图D7D0D7D0:转换数据输入端,:片选信号,输入,低电平有效。ILEILE:数据锁存允许信号,输入,高电平有效。:写信号1,输入,低电平有效。:写信号2,输入,低电平有效。:数据传送控制信号,输入,低电平有效。I IOUT1OUT1:电流输出1,当DAC寄存器中各位为全“1”时,电流最大;为全“0”时,电流为0。I IOUT2OUT2:电流输出2,电路中保证IOUT1+IOU
18、T2=常数)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
19、/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
20、,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:;延时子程
21、序延时子程序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,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 应用技术 中级 教程
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内