资源描述:
《单片机原理及接口技术课后习题答案 第八 九章教学资料.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、精品好文档,推荐学习交流第八章:1.下图831是4片8K×8位存储器芯片的连接图。请确定每片存储器芯片的地址范围 答:设地址线A0-A7分别接在P0.0-P0.7引脚,A8-A15分别接在P2.0-P2.7引脚,则:1#芯片地址:0000H-1FFFH,2#芯片地址:2000H-3FFFH,3#芯片地址:4000H-5FFFH,4#芯片地址:6000H-7FFFH,2. 用8255的A口做输入口,B口做输出口。假设8255工作在方式1,控制口地址为7FH,写出相应的初始化程序。答: MOV R0,#07FH ;8255控制字地址 M
2、OV A,#10110000B ;或1011*00*B,*表示任意 MOVX @R0,A 3.用到三片74HC373的某89C51应用系统的电路如上图所示。现要求通过74HC373(2)输出80H,请编写相应的程序。仅供学习与交流,如有侵权请联系网站删除谢谢9精品好文档,推荐学习交流答:从图中可知74HC373(1)的地址为012H ,74HC373(2)的地址为02H, 74HC373(3)的地址为04H,且芯片的使能端与单片机的WR端相连是作为外部存储器扩展,所以程序如下:MOV R0,#02HMOV A,#80
3、hMOVX @R0,A 第九章1.设计一个3×3行列式键盘电路并编写键扫描子程序。答: 图略,设P0.0-P0.2接行扫描口,P1.0-P1.2接列扫描口。程序如下:KEY:LCALLKS;调用判断有无键按下子程序JZKEY;无键按下,重新扫描键盘LCALLT10 ms;有键按下,延时去抖动LCALLKS仅供学习与交流,如有侵权请联系网站删除谢谢9精品好文档,推荐学习交流JZKEYMOVR2,#0FEH;首列扫描字送R2MOVR4,#00H;首列号#00H送入R4MOVP0,#0FFHLK1:MOVP1,R2;列扫描字送P1口MOVA,P0JBACC.0,ON
4、E;0行无键按下,转1行MOVA,#00H;0行有键按下,该行首号#00H送ALJMPKP;转求键号ONE:JBACC.1,TWO;1行无键按下,转下列MOVA,#03H;1行有键按下,该行首号#03H送A LJMP KP;转求键号TWO: JBACC.2,NEXT;1行无键按下,转下列 MOV A,#06H;2行有键按下,该行首号#06H送AKP:ADDA,R4;求键号,键号=行首键号+列号PUSHACC;键号进栈保护LK:LCALLKS;等待键释放JNZLK;未释放,等待POPACC;键释放,键号送ARET;键扫描结束,出口状态
5、: (A)=键号NEXT:INCR4;列号加1MOVA,R2;判断三列扫描完了吗仅供学习与交流,如有侵权请联系网站删除谢谢9精品好文档,推荐学习交流JNBACC.3,KND;三列扫描完,返回RLA;未扫描完,扫描字左移一位MOVR2,A;扫描字入R2AJMPLK1;转扫下一列KND:AJMPKEYKS:MOVP1,#0F8H;全扫描字送P1口MOVP0,#0FFHMOVA,P0;读入P0口行状态CPL A;取正逻辑,高电平表示有键按下ANLA,#03H;保留P0口低2位(屏蔽高6位)RET;出口状态: (A)≠0时有键按下T10 ms:MOVR7,#10H;延
6、迟10 ms子程序TS1:MOVR6,#0FFHTS2:DJNZR6,TS2DJNZR7,TS1RET2.设计一个有6位LED显示、8个按键的显示键盘电路。答:(1)利用串行口的(课堂上的例子),可去掉一行键盘,2位数百管。仅供学习与交流,如有侵权请联系网站删除谢谢9精品好文档,推荐学习交流(2)直接利用并行口扩展。3.在一个fOSC为12 MHz的89C51系统中接有一片A/D器件ADC0809,它的地址为7FF8H~7FFFH。试画出有关逻辑框图,并编写ADC0809初始化程序和定时采样通道2的程序(假设采样频率为1 ms/次,采样4个数据,存于89C51
7、内部RAM 70H~73H中)。答:电路如下图所示:仅供学习与交流,如有侵权请联系网站删除谢谢9精品好文档,推荐学习交流参考程序如下:(用延时程序实现1ms延时,也可使用定时器实现延时,请自行设计)MOV R0,#70HMOV R7,#4MOV DPTR,#7FFAH;通道2地址LP:MOVX @DPTR,ALCALL DELAY1msMOVX A,@DPTRMOVX @R0,AINC R0DJNZ R7,LPRET4.在一个89C51单片机与一片DAC0832组成的应用系统中,DAC0832的地址为7FFFH,输出电压为0~5 V。试画出有关逻辑框图,并编写
8、产生矩形波,其波形占空比为1∶4,高电