资源描述:
《单片机AD模数转换实验报告.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、一、实验目的和要求1、掌握单片机与ADC0809的接口设计方法。2、掌握Proteus软件与Keil软件的使用方法。二、设计要求。1、用Proteus软件画出电路原理图,在单片机的外部扩展片外三总线,并通过片外三总线与0809接口。2、在0809的某一模拟量输入通道上接外部模拟量。3、在单片机的外部扩展数码管显示器。4、分别采用延时和查询的方法编写A/D转换程序。5、启动A/D转换,将输入模拟量的转换结果在显示器上显示。三、电路原理图。图1、电路仿真图二、实验程序流程框图和程序清单。1、查询法:ORG0000HSTART:LJMPMAINORG0100HMA
2、IN:MOVSP,#2FHNT:MOVDPTR,#0FF78HMOVX@DPTR,ALOOP:JBP3.3,LOOPMOVXA,@DPTRMOVB,#51DIVABMOVR0,AMOVA,BMOVB,#5DIVABMOVR1,AMOVR2,BLCALLDIRSJMPNTDIR:MOVR7,#0SJMPLOOP1BH:MOVA,R1MOVR2,ALOOP1:MOVDPTR,#WKMOVA,R7MOVCA,@A+DPTRMOVP2,AMOVDPTR,#DKMOVA,R2MOVCA,@A+DPTRMOVP1,ALCALLDELAYINCR7CJNER7,#2,BH
3、MOVDPTR,#WKMOVA,R7MOVCA,@A+DPTRMOVP2,AMOVDPTR,#DKMOVA,R0MOVCA,@A+DPTRANLA,#7FHMOVP1,ALCALLDELAYRETDELAY:MOVR5,#01HDL1:MOVR4,#8EHDL0:MOVR3,#02HDJNZR3,$DJNZR4,DL0DJNZR5,DL1RETWK:DB10HDB20HDB40HDK:DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90HEND2、延时法:ORG0000HSTART:LJMPMAINORG0100HMAI
4、N:MOVSP,#2FHLOOP:MOVDPTR,#0FF78HMOVX@DPTR,ALCALLDELAYMOVXA,@DPTRMOVB,#51DIVABMOVR0,AMOVA,BMOVB,#5DIVABMOVR1,AMOVR2,BLCALLDIRSJMPLOOPDIR:MOVR7,#0SJMPLOOP1BH:MOVA,R1MOVR2,ALOOP1:MOVDPTR,#WKMOVA,R7MOVCA,@A+DPTRMOVP2,AMOVDPTR,#DKMOVA,R2MOVCA,@A+DPTRMOVP1,ALCALLDELAYINCR7CJNER7,#2,BHMOV
5、DPTR,#WKMOVA,R7MOVCA,@A+DPTRMOVP2,AMOVDPTR,#DKMOVA,R0MOVCA,@A+DPTRANLA,#7FHMOVP1,ALCALLDELAYRETDELAY:MOVR5,#01HDL1:MOVR4,#8EHDL0:MOVR3,#02HDJNZR3,$DJNZR4,DL0DJNZR5,DL1RETWK:DB10HDB20HDB40HDK:DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90HEND二、实验结果。图2、仿真结果三、实验总结。由图4可知,设计要求2的内容已经成功完成;
6、由图5可以看出要求3的内容已经成功完成。通过这次实验,掌握了通过8255来扩展单片机的I/O口线,对8255已经有了充分的认识,以实践操作来验证理论知识,学到了很多东西。四、思考题。采用中断的方法编写A/D转换程序,完成实验要求ORG0000HSTART:LJMPMAINORG0013HLJMPINTT1ORG0100HMAIN:MOVSP,#2FHSETBEASETBEX1MOVDPTR,#0FF78HMOVX@DPTR,AHERE:LJMPHEREDISPLAY:MOVR7,#0SJMPLOOP1BH:MOVA,R1MOVR2,ALOOP1:MOVDPT
7、R,#WKMOVA,R7MOVCA,@A+DPTRMOVP2,AMOVDPTR,#DKMOVA,R2MOVCA,@A+DPTRMOVP1,ALCALLDELAYINCR7CJNER7,#2,BHMOVDPTR,#WKMOVA,R7MOVCA,@A+DPTRMOVP2,AMOVDPTR,#DKMOVA,R0MOVCA,@A+DPTRANLA,#7FHMOVP1,ALCALLDELAYRETDELAY:MOVR5,#01HDL1:MOVR4,#8EHDL0:MOVR3,#02HDJNZR3,$DJNZR4,DL0DJNZR5,DL1RETINTT1:MOVXA,
8、@DPTRMOVB,#51DIVABMOVR0,AM