精品单片机课程设计实训报告-定_第1页
精品单片机课程设计实训报告-定_第2页
精品单片机课程设计实训报告-定_第3页
精品单片机课程设计实训报告-定_第4页
精品单片机课程设计实训报告-定_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、changsha normal coli.egk(长沙师范高等专科学校)单片机系统课程设计报告专业: 电子信息09电子303学生姓名:学号:2009540730312200954073031420095407303362009540730308指导教师:完成日期:2011年06月22日实训内容1.0广告灯 41设计任务41.2语言程序41.3原理图61.4系统仿真6三实训课题2.0秒表72.1设计任务72.2语言程序72.3系统仿真图9四实训课题3.0按键1 03.1设计任务103.2语言程序1 03.3原理图113.4系统仿真图1 2五实训课题4.0交通灯 134设计任务134.2交通灯流程

2、图144.3语言程序144.4系统仿真图164.5检测与调试164.6实物成品展示17六心得体会18序言近年来随着科技的飞速发展,单片机的应用正在不断深入,同吋带动传统控制检测技术日 益更新。在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部件來使用, 仅单片机方面知识是不够的,还应根据具体硬件结构软硬件结合,加以完善。、实训目地通过此次实训,让我们常握了单片机基本原理的基础、单片机的编程知识以及初步掌握单 片机应用系统开发实用技术,了解单总线的读/写控制方法。同时培养学生理论与实践相结 合的能力,提高分析问题和解决问题的能力,增强学生独立工作能力;培养学生团结合作、 共同探讨、

3、共同前进的精神与严谨的科学作风。本次实训目的主要有以下儿点:1、熟悉单片机应用系统的开发、研制过程。2、能运用mcs-51单片机进行简单的单片机应用系统的硬件设计。3、能采用mcs-51单片机汇编语言进行简单的单片机应用系统的软件设计。4、掌握单片机应用系统的硬件、软件调试方法。5、熟悉单片机仿真开发系统的作用,基本掌握运用单片机仿真开发系统进行在线 仿真、调试和目标程序固化的方法。6、为今后从事单片机应用系统的开发、生产和维护工作奠定基础。7通过实物焊 接,掌握了各元器件的基本性质,在排查错误的同时锻炼了自己的调试能力。8进一步提高焊接技能。二、实训时间:16周三.实验要求:1. 运用单片机

4、原理与应用的课程知识以及单片机单片机的知识编写程序。2. 注意单片机与pc机的连接使用。3. 结合理论知识分析在调试程序过程中出现的问题,及时解决相应的问题。4. 可以到图书馆或上网查阅参考资料。5. 用单片机实现十字路交通信号灯的控制,完成系统的软硬件设计及调试。6. 画出交通灯的各元件的连接图,并模拟电路的运行。7. 将交通灯做成实物,完成焊接与调试过程。8. 总结交通灯控制电路的设计、安装与调试过程。9. 分析安装与调试中发现的问题及故障排除的方法(一)广告灯1.1设计任务:任务一: 按18、8-1的顺序依次逐个点亮,任意时刻只有一个灯点亮; 循环点亮1次后灯全灭后,让所有灯同时闪烁3次

5、; 灯全亮,然后按1-8的顺序依次熄灭一个灯,直到全灭; 再按81的顺序依次点亮,直到所有灯全亮; 灯全灭,同时从两头开始,依次各点亮一个灯并熄灭此前点亮的灯,即1和8亮,熄灭后2和7亮,依此类推,最后灯全灭; 所有偶数灯同时闪烁3次; 灯全灭,同吋从两头开始,依次各点亮一个灯,直到所有灯全亮后,同吋按8-1、2-7的顺序依次各熄灭一个灯,直到灯全灭; 所有奇数灯同时闪烁3次; 重新按步骤走1.2汇编程序main:mov r0,#8djnz3,m2mov rl,#8movpo,#oohmov p2,#oahmovr4,#8mov a,#ofehmovdptr,#tb 1mova,#0mo: m

6、ov po,alcall delaym3: movrl,arl amovea,a+dptrdjnz ro,momovpo,amov a,#7fhlcalldelaymova,rlm 1: mov po,ainc alcall delaydjnzr4,m3rr amovr0,#8djnz rl,mlmovdptr,#tb2mov po,#offhmova,#0mov r3,#3lcall delaym4: movrl,amovea,a+dptrm2: mov po,#oohmovpo,alcall delay 1lcalldelaymov po,#offhmova,rllcall delay2i

7、nc adjnzr0,m4lcall delaymovpo,#offhmov po,#offhlcalldelaylcall delaymov r0,#5djnz r0,m8movdptr,#tb3ljmp mainmova,#0delay:mov r5,#10m5: movrl,ado:mov r6,# 100movea,a+dptrdl:djnz r6,dlmovpo,adjnz r5,dolcalldelayretmova.rldelay 1: mov r5,#10inc ad2:mov r6,#250djnzr0,m5d3:djnz r6,d3movr0,#3djnz r5,d2ret

8、m6: movpo,#55hlcalldelay 1delay2:movpo,#offhmov5、# 10lcalldelay2d4:mov r6,#200djnzr0,m6d5:djnz r6,d5mov r0,#8djnz r5,d4movdptr, #tb4mova,#0rettbl:m7: movrl,adb 01 h,03h,07h,0fh, 1 fh,3fh,7fh,0ffhmovea,a+dptrtb2:movpo,adb 7fh,3fh, 1 fh,0fh,07h,03h,01 h,00hlcalldelaytb3:db 7eh,0bdh,0dbh,0e7h,0ffhmova,

9、rltb4:inc adb 7eh,3ch,l 8h,00h,81 h,0c3h,0e7h,0ffhdjnzr0,m7endmovr0,#3m8: movpo,#oaah1.3原理图pro1pit2pit3pa34p1a45pia56pl7pit8p£st9p3v10p3a111p3a212pt313p3a414pt515p3516p3t17xi13x219u2pio pl 1 pl 2 pl 3 pl 4 pi 5 pl 6 pl.?875180518031restjvpd p3 oirxd p3 1jtxd p32)inf0 p3mhtt p34tt0 p3 5e p36jw1

10、p3.7/rd xtal2 xt al!51系列单片机iled6p2t¥174hci38gggvcce2e3poo poip0.2p0.3p04p05p0.6p0.7eaazpp alejprcgpsb4p2.7p2.6p2.5p24p23p2.2p2.1p2.039pov38pot37pct236pot35p0a434ptt533pct632pen31vcc30ale2928pn27p2626pt525pt424pz323p222p2t21pro1.5系统仿真图ii ale 19 led? 16led6 15 leds 12led49 led36 led25 led12 lelok

11、iisrplsss巒爵.w三弓一一匕三hvcci - ' ?nt ii*-*-t < u«.«. t ».». ;r t "i*.vt :,ed7ii 丄 i-ii.。忆仁hpx.p但. .im. 丁.二fw.1r. < 气丁 11“l e :1 : d :;:*:;:秒表2. 1 设计任务设计一电子秒表,利用3个数码管显示,显示范围为59.900.0秒,精确到0.1s。定时时 间采用定时器來做,利用笫二行的第一个键(1)、第一行的第一个键(2)、第一行的第二个 键(6)分别代表清零、启动、暂停三个按键。数码管的片选线低电平

12、有效,对应p2 口的值分别为08、06、04、02 (4-1数码管),显示 0-9 对应的段码值为:edh,88h,0b5h,0b9h,0d8h,79h,7dh,0a8h,0fdh,0f9h2.2汇编程序org 0000hljmpmainorg000bhljmploopomain: movr2,#6movtmod,#0 ihmovth0,#(65536-10000)/256movtl(),#(65536-10000)mod 256setb easetb etomov dptr,#tabmov r0,#0mov rl,#0mov 3 ,#0wait:lcall mmmov p1,#offhclr

13、 p1.6mov a,planl a,#01h ;立即数与到累加器xrla,#01h;立即数异或到累加器,和下 面一句构成判断第i行有没按键按下的功能。jzxx ;累加器为零转移到lcall delaymov a,planla,#01hxrla,#01hjz xxmov a,planla,#01hxrla,#01hcjne a,#00h,zz ;累加器a与立即数不 等转移到nkl;xx:mov a,planla,#10hxrla,#10hcjne a,#ooh,dd;累加器a与立即数不等转移到yy:mov a,planla,#04hxrl a,#04hcjne a,#00h,eeljmp wa

14、itzz:setb trolcall mmljmp xxdd:clr tromov r0,#0 mov rl ,#0 mov r3,#0 ijmp yyljmp waitloopo: djnz r2joop2mov r2,#6inc rocjne r0,#10,loop2 mov r0,#0 inc rlcjne rl,#10joop2 mov rl,#0 inc r3loop2: mov tho,#(65536-10000)/256mov tl0,#(65536- 10000)mod 256 reticjne r3,#6joop2 mov r3,#0mm:mov p2,#02hmov a,r

15、omove a,a+dptrmov po,alcall delaymov p2,#04hmov a,rlmove a,a+dptr mov po,asetb p0lcall delaymov p2,#06hmov a,r3move a,a+dptrmov po,a lcall delay retdelay: mov r5?#50dl0:mov r6,#10dl l:djnz 6,dll djnz r5,dlo rettab:db0edh,88h,0b5h,0b9h,0d8h,79h,7dh,0a8h,0fd h,0f9hend2.4系统仿真图cecdefq dp1234n=:r2jhll.nf

16、opobfdb efdeg匣戲更so3<p2ha3p2.na3 p22ai0 p22am p2>iai2 p2sa(9 p2jbak p2.0ais223u§0'.'2du3d1:d« ap«dp«.«pl 2p> 2 p«> pi ap»p« jpajkxdroa «££wa wttraro pgar* poa«r ra.nro"-按键3设计任务将开发板中的2行巧列矩阵式按键对应的键值0-9在一位数码管中进行显示。下载程序

17、时用短路帽将p1.5-k2,p1.6-k1进行短接。32汇编程序mov p2,#02h mov r0,#8 mov ajomov dptr, #tab move a,a+dptr mov po,a lcall delayn4: cjne a,#0fh,n5mov rl,#4 ljmp ddmm: movpl,#offhclrpl.6mova,planla,#lfhxrla,#lfh jz j jlcalldelaymova,planla,#lfhxrla,#lfh jz j jmova,planla,#lfhcjnea,#leh,nlmovrl,#0ljmpddnl: cjne a,#ldh,

18、n2mov rl#l ljmp ddn2: cjne a,# lbh,n3mov rl#2 ljmp ddn3: cjne a,# 17h,n2mov rl,#3 ljmp ddn5:nopdd: movajlmovdptr,#tabmove a,a+dptrmovpo,ajj: movpl,#offhclrpl.6mova,planla,#lfhxrla,#lfhlcalldelaymova,planla,#lfhxrla,#lfhjz mmmova,planla,#l fhcjnea,#leh,n6movrl,#5ljmpkkn6: cjne a,#ldh,n7mov rl,#6 ljmp

19、 kkn7: cjne a,#lbh,n8mov rl,#7 ljmp kk n8: cjne a,#17h,n9mov rl,#8ljmp kkn9: cjne a,#ofh,nlomov rl#9 ljmp kkdll:djnz r6,dll djnz r5,dlo retnlo:nopkk: mov a,rlmov dptr,#tcib move a,a+dptr mov po,a ljmp mm delay: mov r5,#10dlo: mov r6,#10tab:db0edh,88h,0b5h,0b9h,0d8h,79h,7dh,0a8h,0fdh,of9hend3.3原理图pro

20、1pri2p1a23pr4p1a45f1a56pl%7pit8rest9p3f10p3tiip¥212p3a313p3714p3a515p3花16p3a717xi18x219pio pl.l pl.2p13pl.4p”pl.6pl.7875180518031rest/vpdp3.0/rxdp3.1/txdp3jjwt3p33/infr p3.4jt0p3hxp3为歴p3.7/rdxtal2popopopopopopopoea)vpp albprog psen p2.7p2.6p2.5 p2.4p2.3p2.2p2.139 pos33 pen3? px% pl335 pckm24 po

21、y33 po%3231 vcc刃ale为25 p2y2? p2花26 p2°525 p2724 p2t23 p2t22 p2y21 p2spn1p2a22p1334546、丿a bxtal1p2.0宀15yo14yly2led474hc138pia1sis2isp jumpswp1a3kip1a4o13546o2先icl冃210kpl%pt5"opi%"op1a17piijt1_ i ptrl&of9y28y37p(t73.4系统仿真图d9e 40d冋4iedp1.7 p1£p3.?itn»p1sp3st1p1.*p3.<nnp1

22、3p3j/nrrtp12p1.1p1jdp3mnp3.im®p3ivrxdp2.?/at5p2«au曲p25zagalepz.4/a1zpz3ta11p23acpz.1wsp2d*asr8tpn.vwiw pdam pei jwam p0.4/adxtal2pc mmg pcintgpc .1/ad1xtal1pc lyaco'n'jslstroplzid2srk2skz3nk px33蚩赛或:-蠢工工1s交通灯4.1设计任务(1) 基本功能:在马路的十字路口东西南北各设置红、黄、绿3种信号灯,4个路口共12个信号灯。控制 的过程为:当东西方向通车时绿灯亮,

23、而南北方向红灯亮;当通车的吋间到后,东西方向的 绿灯灭,而黄灯亮,黄灯闪烁若干次后由东西方向换到南北方向通车。此时,东西方向黄灯 灭而红灯亮,南北方向红灯灭而绿灯亮,南北方向开始通车。通车时间到后,南北方向绿灯 灭,黄灯闪烁若干次后由南北方向切换到东西方向,南北方向黃灯灭,红灯亮;而东西方向 红灯灭,绿灯亮。如此不断循环。如下图所示:北绿黄红_q o o o 西黄°°黄东绿°o绿绿黄红南(2) 、扩展功能:增设两个按钮,用于调整红、黄、绿灯的显示吋间。2、课题要求(1)所有信号灯全部用5发光二极管替代。 单片机采用89c51 (内含4kb程序存储器,与mcs-51

24、兼容)。 = 12mhzo(3) 延时时间用单片机的定时器实现°(4) 因cmos型单片机的拉电流很小,为了减少额外的驱动开销,所有发光二极管采用共 阳极接法。4.2交通灯流程图4.3汇编程序flag equ 23hshijian equ 30hljmp mmorg 0003hljmp int_0org 0013hljmp int_1orgooibhsjmp xsmm:mov tmod,#10hmov th1 ,#(65536-50000)/256mov tl1 ,#(65536-50000)mod 256mov ro,#20mov dptr,#tableclr flag;东西、南北

25、路口红灯状态标 志位mov r3,#10mov shijian,r3;显示时间setb et1setb exosetb itosetb exisetb it1setb ealoop: mov p0,#2dhlcall delay1mov p0,#3fhlcall delay 1jb p3.7,loopsetb tril00p1:jb p3.7丄oop2setb tr1l00p2:lcall dispsjmp l00p1xs: djnz r0,fhmov r0,#20dec shijianmov a,shijiancjne a,#0,fhmov shijian,r3cpl flag /路口红灯显

26、示标志位取反fh: mov th1 ,#(65536-50000)/256mov tl1 ,#(65536-50000)mod 256retidisp:mov a,shijian ;数码管显示mov b,#10div abmovc a,a+dptrmovp1,#01hmov p2,alcall delaymov a,bmovc a,a+dptrmovp1,#02hmov p2,alcall delayjb flaqdongxi /判别东西、南北红 灯的状态,flag=1代表东西红灯 亮、南北绿灯亮/flag=0代表南北红灯亮、东西绿灯亮nanbei:clrc判别黄灯时间5s到否?mov p0,

27、#3ehlcall delay 1fh1: retmova,shijian5s至【j,转黄灯显示5s未到,南北红subba,#6jc hudenglvdeng:灯亮、东西绿灯亮mov p0,#33hsjmpfh1int_0:clr tr1inc r3mov a,r3cjne a,#99,fh2mov r3,#6hudeng:fh2:mov shijian,r3南北红灯亮、东西绿判别黄灯时间5s到mov p0,#35hlcall delay 1mov p0,#37hlcall delay 1sjmpfh1dongxi: 灯mclrc 否?mova,shijiansubb a,#6retiint_

28、1:clrtr1dec r3mova,r3cjne a,#6,fh3mov r3,#99fh3:mov shijian.r3retijchudeng1/5s到,转黄灯显示lvdeng1:5s未到,东西红灯亮、南北绿灯亮mov p0,#1ehsjmpfh1delay:mov r5,#40dl1:mov r6,#50dl2:djnz r6,dl2djnz r5,dl1rethudeng1:delay1:mov r1,#60mov p0,#2ehdl3:mov r2,#150lcall delay 1dl4:djnz r2ql4rettable:db 0c0h,0f9h,0a4h,0b0h,99h,

29、92h,82h,0fbh,80h,90h4.4系统仿真图4.5检测与调试1、硬件调试:硬件调试是利用开发系统、基本测试仪器(万用表、示波器等),检查用户系统硬件中存 在的故障,硬件调试可分为静态调试与动态调试两步进行。静态调试:静态调试是在用户系统未工作时的一种硬件检测。静态调试的第一步:目 测。检查外部的各种元件或者是电路是否有断点。第二步用万用表测试。先用万用表复核 目测中有疑问的连接点,再检测各种电源线与地线之间是否有短路现象。第三步加电检测。 给板加电,检测所有的插座或是器件的电源端是否符合要求的值笫四步是联机检查。因为 只有用单片机开发系统才能完成对用户系统的调试。动态调试:动态调试

30、是在用户系统工作的情况下发现和排除用户系统硬件屮存在的器件 内部故障、器件连接逻辑错误等的一种硬件检查。动态调试的一般方法是由近及远、由分到 合。由分到合是指首先按逻辑功能将用户系统硬件电路分为若干块,当调试电路时,与该元件 无关的器件全部从用户系统中去掉,这样可以将故障范围限定在某个局部的电路上。当各 块电路无故障后,将各电路逐块加入系统中,在对各块电路功能及各电路间可能存在的相互 联系进行调试。由分到合的调试既告完成。由近及远是将信号流经的各器件按照距离单片机的逻辑距离进行rti近及远的分层,然后分 层调试。调试时,仍釆用去掉无关元件的方法,逐层调试下去,就会定位故障元件了。2、软件调试:软件调试是通过对拥护程序的汇编、连接、执行來发现程序中存在的语法错误与逻辑错误 并加以排除纠正的过程。程序后,编辑,查看程序是否有逻辑的错误。4.6实物成品展亦心得体会短短三周的实习过程使我受益匪浅,不仅是在专业知识方面,最主要是在怎样去解决编程 中出现的问题。通过这周的实训我明白了,社会在加速度地发生变化,对人才的要求也越来 越高,要用发展的眼光看问题,得不断提高思想认识,完善自己。作为一名新时代大学生, 要学会创

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论