上海第二工业大学单片机实验实训实验报告8由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“单片机第二章实验报告”。
单片机实验实训实验报告8 班级:10计科A1
学号:20123430074
姓名:贾强强
4.8 实验8 A/D转换器的使用1 实验目的:掌握ADC0809的工作原理。
实验要求:编写0809A/D转换程序,每隔1秒将A/D转换的结果显示在DS3和DS4两位上,以十六进制形式显示。
程序设计:由于读A/D转换的结果和刷新LED都要用到的P0口,因此,如果读取A/D转换结果频率太快,就会出现无法正确显示的现象,解决办法是由定时器T1,定时1秒,每秒启动A/D转换一次。因为T0中断太频繁,为保证T1进入中断可将T1和INT0中断设为高优先级。
程序源代码: ORG 0000H LJMP START ORG 0003H LJMP PINT0 ORG 000BH LJMP PPT0 ORG 001BH LJMP PPT1 ORG 0100H START: SETB IT0 SETB EA SETB EX0 SETB PX0 MOV TMOD,#12H MOV TH0,#0FBH MOV TL0,#0FBH SETB TR0 SETB ET0 MOV TH1,#0FH MOV TL1,#00H SETB ET1 SETB PT1 SETB TR1 SETB P3.6 SETB P1.4 CLR P3.6 CALL DELAY1MS SETB P3.6 MOV 20H,#50H MOV R7,#20 LOOP: CALL DISPLAY AGAIN:AJMP LOOP DELAY1MS: MOV R0,#100 LOOP1:MOV R1,#10 LOOP2:DJNZ R1,LOOP1 DJNZ R0,LOOP1 RET DISPLAY: MOV DPTR,#DPDATA MOV A,20H ANL A,#0FH CLR P2.1 MOVC A,@A+DPTR MOV P0,A CALL DELAY1MS SETB P2.1 MOV A,20H ANL A,#0F0H SWAP A CLR P2.0 MOVC A,@A+DPTR MOV P0,A CALL DELAY1MS SETB P2.0 RET DPDATA:DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H
DB 0F8H,80H,98H,88H,83H,0E2H,0A1H,86H8EH PINT0:
CLR P3.7 MOV P0,#0FFH MOV A,P0 SETB P3.7 MOV 20H,A RETI PPT0: CPL P3.3 RETI PPT1:
MOV TH1,#0FH MOV TL0,#00H CLR TF1 DJNZ R7,RETN MOV R7,#20 SETB P3.6 SETB P1.4 CLR P3.6 CALL DELAY1MS SETB P3.6 RETN: RETI
END 实验心得:
回顾起此次课程设计,感觉受益匪浅,从拿到题目到完成整个编程,从理论到实践,学到很多很多的课堂理论中没学到过的东西,在程序调试的过程中提高自己的发现问题、解决问题、实际动手和独立思考的能力。当然,这其中也有很多问题,第一、不够细心比如由于粗心大意焊错了线,由于对课本理论的不熟悉导致编程出现错误。第二,是在学习态度上,这次课设是对我的学习态度的一次检验。对于这次单片机综合课程实习,我的第一大心得体会就是作为一名工程技术人员,要求具备的首要素质绝对应该是严谨。我们这次实习所遇到的多半问题多数都是由于我们不够严谨。第三,在做人上,我认识到,无论做什么事情,只要你足够坚强,有足够的毅力与决心,有足够的挑战困难的勇气,就没有什么办不到的。
通过这次单片机实习,我不仅加深了对单片机理论的理解,将理论很好地应用到实际当中去,而且我还学会了如何去培养我们的创新精神,从而不断地战胜自己,超越自己。创新可以是在原有的基础上进行改进,使之功能不断完善,成为真己的东西。这次课程设计能顺利的完成,除了我们的努力外,当然也离不开指导老师申老师的辛勤指导,致使我在设计的过程中学到了很多实用性的知识。同时,对给过我帮助的所有同学和各位指导老师表示忠心的感谢!