单片机试验报告.docx

上传人:scccc 文档编号:12925803 上传时间:2021-12-07 格式:DOCX 页数:12 大小:28.42KB
返回 下载 相关 举报
单片机试验报告.docx_第1页
第1页 / 共12页
单片机试验报告.docx_第2页
第2页 / 共12页
单片机试验报告.docx_第3页
第3页 / 共12页
单片机试验报告.docx_第4页
第4页 / 共12页
单片机试验报告.docx_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《单片机试验报告.docx》由会员分享,可在线阅读,更多相关《单片机试验报告.docx(12页珍藏版)》请在三一文库上搜索。

1、1、 实验一12、 实验二7三、实验三11四、实验四15实验一定时/计数器验证实验一、实验目的熟悉定时/计数器T0的特点,学会合理选择定时方式并能根据具体情况结合 软件的方式定时。二、实验设备及器件IBM PCM 一台 PROTEUSM件仿真软件 Keil C51 。三、实验内容用AT89C5第片机的定时/计数器T0产生1s的定时时间,作为秒计数时间,当 1s产生时秒计数加1;秒计数到60时,自动从0开始。四、实验要求要求采用Proteus软件实现上述实验。五、实验步骤1.打开Proteus ISIS编辑环境,按照表1-1所列的元件清单添加元件元件名称所属类所属子类AT89C51Micropr

2、ocessor8051 FamilyCAPCapacitorsGenericCAP-ELECCapacitorsGenericCRYSTALMiscellaneousRESResistorsGeneric7SEG-COM-CAT-GRNOptoelectronics7-Segment DisplaysPULLUPModeling PrimitivesDigitalMiscellaneous表1-1元件清单元件全部添加后,在Proteus ISIS的编辑区域中按图1-1所示的原理图连接 硬件电路。图1-1电路原理图2 .根据参考程序绘出流程图,并辅以适当的说明。流程图如图1-2所示:图1-2程序

3、流程图3 .打开Keil pVision4 ,新建Keil项目,选择AT89C5第片机作为CPU将参考 程序导入到“ Source Group 1” 中。在 “Options for Target” 对话窗口中, 选中“Output”选项卡中的“ Create HEX File ”选项和“ Debug'选项卡中 的“Use: Proteus VSM Simulator ”选项。编译汇编源程序,改正程序中的 错误。4 .在Proteus ISIS中,选中AT89C5并单击鼠标左键,打开“ Edit Componentt 对话窗口,设置单片机晶振频率为12MHz在此窗口中的“ Progra

4、m File ”栏中,选择先前用Keil生成的.HE双件。在Proteus ISIS的菜单栏中选择 “File ” - “Save Design”选项,保存设计,在Proteus ISIS的菜单栏中,打开“Debug'下拉菜单,在菜单中选中“ Use Remote Debug Monitor ”选项,以支持与 Keil 的联合调试。5 .在Keil 的菜单栏中选择 “ Debug' f "Start/Stop Debug Session"选项,或者直接单击工具栏中的“ Debug' f "Start/Stop Debug Session ”

5、图标, 进入程序调试环境。按“ F5”键,顺序运行程序。调出“ Proteus ISIS”界 面可以看到7段数码管显示从059s的计数值,每个数值显示1s,如图1-3所 示。图 1-3 程序运行结果实验程序六、SECOND EQ3U0HCOUNT EQU31HORG00HLJMP ORG LJMPSTART: MOV MOV MOV CLR MOV MOV MOV MOV MOV SETB SETB SETB MOV LJMPINTT0:MOVI1:MOV INC MOV CJNE MOV INC MOV CJNE MOV MOV MOVSTART0BHINT_T0SECOND,#00HCOU

6、NT,#00HDPTR,#TABLEAP0,AP2,ATMOD,#00HTH0,#(65536-50000)/256TL0,#(65536-50000)MOD 256TR0ET0EAIE,#82H$TH0,#(65536-50000)/256TL0,#(65536-50000)MOD 256COUNTA,COUNTA,#20,I2COUNT,#00HSECONDA,SECONDA,#60,I1SECOND,#00HA,SECONDB,#10HDIV ABMOVC A,A+DPTRMOV P0,AMOV A,BMOVC A,A+DPTRMOV P2,AI2:RETITABLE: DB 3FH,0

7、6H,5BH,4FH,66HDB 6DH,7DH,07H,7FH,6FH END7、 思考题1. 罗列一下 Proteus 软件的能带给我们的好处,指出一点最能帮助你的地方。使用 Proteus 软件能使我们方便的搭建电路,同时在没有元器件的情况下进行便于仿真,方便我们在将程序写入单片机前确认运行是否正确,同时可在采购器件之前即可开始开发产品,而不必等到器件采购完后搭建电路才进行程序调试。2. 用Proteus界面中的播放键运行仿真与Keil仙Vision4的环境中联调运行它们两者的区别在什么地方用 Proteus 界面中的播放键运行仿真仅可以观察运行结果,即程序运行在硬件表面上的表现。而联调

8、的时候可以再Keil 软件里查看各寄存器和存储器的状况,即硬件的内部情况。3. Keil 软件软件仿真与Proteus 的仿真对比。使用 Proteus 仿真可从硬件的角度观察仿真结果,使仿真结果更加形象直观,使我们可从硬件运行状态清楚的判断运行结果是否正确。而在Keil 环境中则是从程序的角度通过观察程序中数据的变化来观察仿真结果,需要对程序运行结果充分了解。8、 实验总结及相关问题通过本次实验了解了 Ptoteu软件的使用方法,以及在掌握了 Keil的使用 方法下,学会了 ProteusKeil软件联调的方法。在用Proteu升由于忽略了要在总线处放置网络标号导致联调失败,最后通过观察发现

9、数码管引脚电平无变化发现此问题,放置网络标号后运行仿真时数码管引脚电平发生变化可是数码管却没有变亮,经过多次检查接线,未发现接线错误后,觉得可能是软件本身错误,故将总线及数码管周围硬件线路重新绘制一遍后再次运行仿真及可得到图1-3的结果。实验二单片机 I/O 口控制实验实验目的利用单片机的P1 口作 IO 口,使同学学会利用P1 口作为输入和输出口。实验设备及器件IBM PC 机 一台 单片机仿真器、编程器、实验仪三合一综合开发平台一台3、 实验内容1. 编写一段程序,用P1 口作为控制端口,使D1 区的 LED 轮流亮。2. 编写一段程序,用 口控制 LED , 控制 LED 的亮和灭接按键

10、,按下时LED 亮,不按时 LED 灭 ) 。4、 实验要求学会使用单片机的P1 口作 IO 口, 如果有时间同学也可以利用P3 口作 IO 口来做该实验。5、 实验步骤1. 用导线把 A2 区的 J61 接口与 D1 区的 J52 接口相连。原理如图2-1 所示。图 2-1 实验二原理图2. 先编写一个延时程序。延时程序见程序1子程序DELAY。3. 将 LED 轮流亮的程序编写完整并使用TKStudy ICE 调试运行。LEDfe流亮程序见程序1。调试运行结果:D1区LEDfc流亮。4. 使用导线把A2 区的 J61 接口的 与 D1 区的 J52 接口的 LED1LED7相连,另外A2

11、区 J61 接口的 与 D1 区的 J53 的 KEY1 相连。5. 编写 控制 LED 的程序,并调试运行。(按下K1 看是否全亮)。控制 LED 的程序见程序2。调试运行结果:按下后D1区LEL&灭。6. A2 区 J61 接口的 与 D1 区的 J54 的 SW1 相连。然后再使用TKStudyICE 运行程序,查看结果。控制 LED 的程序见程序2。调试运行结果:按下后D1区LEL&亮。6、 实验参考程序程序 1 :ORG 0000H LJMP MAINORG 0100HMAIN: MOV A,#0FFH CLR CMAINLOOP:CALL DELAYRLC AMOV

12、 P1,ASJMP MAINLOOPDELAY: MOV R7,#0LOOP: MOV R6,#0DJNZ R6,$DJNZ R6,$DJNZ R6,$DJNZ R7,LOOPRETEND程序2:ORG 000HLJMP MAINORG 0100HMAIN: JB ,SETLEDCLRLED:CLRCLRCLRCLRCLRCLRCLRSJMP MAINSETLED:SETBSETBSETBSETBSETBSETBSETB SJMP MAINEND7、 实验思考题1. 请同学思考一下,想出几个实现以上功能的编程方法。程序1可利用单片机的定时计数器通过选择定时计数器工作方式和预置初值设定延时时间,

13、通过定时计数器产生的中断在中断程序中对A进行移位后输出至P1 口。程序2可在判断高低电平后根据判断结果直接将 #80做#7Fft接送P1 口而 不必逐位进行位操作。2.请同学再思考一下,第二个程序中如果使用 KEY作为外部中断控制LED勺亮 和灭时,程序应如何修改。此时将KEY接/INTO 口,在主程序中开启外部中断设置外部中断触发方式, 通过中断服务子程序控制LEDS灭。程序如下所示:ORG000HLJMP MAINLJMP SETLEDMAIN: MOVSP,#40HSETB ET0; 开外部中断CLRIT0 ; 设置为电平触发SETB EACLRLED:CLRCLRCLRCLRCLRCL

14、RCLRSJMP CLRLEDSETLED:SETBSETBSETBSETBSETBSETBSETBRETIEND八、 实验总结及相关问题通过本次实验掌握了使用TKStudy ICE 进行硬件仿真调试的方法,在设置仿真器驱动程序声明时对C:Keil 目录下的文件添加描述时,由于添加的路径错误导致无法进行硬件仿真调试, 修改为正确路径后方可在 DEBU晒口 中的Use选项中找到对应的选项。使用 TKStudy ICE进行硬件仿真调试相比 本学期的电子系统设计中用到的调试方法更快捷,使用更方便。与此同时,通过本次实验对单片机的I/O 控制有了更深入的了接,同时加深入对单片机I/O 编程的理解。实验

15、三串转并 I/O 口实验1、 实验目的熟悉并掌握串转并的I/O 口扩展方法。2、 实验设备及器件IBM PC 机 一台 单片机仿真器、编程器、 实验仪三合一综合开发平台一3、 实验内容1. 写程序, 通过单片机的P1 口控制 74HC164 的串行输入端口,实现串并转换。2. 验证串并转换数据的正确性。4、 实验要求熟悉串并转换芯片的工作原理,学会使用串并转换芯片扩展单片机的I/O 口资源。表 3-1 74HC164 真值表5、 实验步骤1 . 短接C5区JP10接口,将C5区J43接口与A2区J61接口的P10P13对应相 连(CLK对P10等等)。如图3-1所示。图 3-1 实验三原理图2

16、 运行编写好的软件程序,完成一次串并转换。实验程序见实验参考程序。2.使用C2区的逻辑笔或D1区的J52接口(LED指示灯)测试并行输出数据 Q0Q7 数据的正确性。调试运行结果:通过观察LED勺亮灭情况可判断完成一次串并转换,且转换 结果正确无误。六、 实验参考程序CLK EQUDINA EQUDINB EQUCLR164 EQUORG LJMP ORGMAIN: MOV NOPCLR SETBCLR SETB MOV MOVSLCHG: RLC MOV SETB NOP CLR NOPDJNZ0000HMAIN 0100H SP,#60HCLKDINBCLR164CLR164A,#0FFH

17、 R4,#08HADINA,C CLKCLKSJMP $ END七、 实验思考题参考图 3-2 电路图,尝试编写软件程序,实现8 位 LED 流水灯的控制。图 实验原理图可利用单片机的定时计数器通过选择定时计数器工作方式和预置初值设定延时时间,通过定时计数器产生的中断在中断程序中对 A进行移位。程序 如下所示:CLK EQUDINA EQUDINB EQUCLR164 EQU; 定时器 0 中断服务程序ORG 0000H LJMP MAIN ORG 000BHLJMP SLCHGMAIN: MOV SP,#60HNOPCLR CLK SETB DINBCLR CLR164SETB CLR164

18、MOV A,#0FFHMOV TMOD,#01H; 定时器0工作方式1MOV TH0,#18H ;送2ms时间常数MOV TL0,#0FCHSETB TR0 ; 开中断SETB ET0SETB EASJMP $SLCHG: MOV TH0,#18HMOV TL0,#0FCHRLC AMOV DINA,CSETB CLKNOPCLR CLKRETIEND八、 实验总结及相关问题由于具有之前实验的基础所以本实验基本没碰到什么问题,调试运行都符合实验要求,通过本次实验对串并转化程序的编写有了一定了解,通过编写流水灯程序加深了对单片机串并口的了解。实验四继电器控制实验1、 实验目的加深理解继电器的工作

19、原理和特点,掌握利用单片机的IO 口控制继电器的一般方法。2、 实验设备及器件IBM PC 机 一台 单片机仿真器、编程器、 实验仪三合一综合开发平台一台3、 实验内容1 . 利用 D1 区的拨动开关和LED ,学习继电器的工作原理和特点。2 .编写一段程序,用口控制继电器,继电器控制LED的亮和灭,(COM与CLOSE 连通时,一盏LED亮;不连通时该LED灭。COM与OPEN连通时,另一盏LED 亮,不通时该LED灭)。4、 实验要求学会继电器的使用和利用单片机的IO 口控制继电器的方法。5、 实验步骤图 4-1 继电器驱动控制电路图1 .用短路帽短接JP7,使用导线把D1区J54接口的S

20、W1与C7区J9接口的KJ (任 意一根针)相连接。2 .使用导线把D1区J52接口的LED1、LED2与C7区J103接口的 OPEN1,CLOSE1分别相连,另外C7区J103接口的COM1接地(GND )。3 . 接好线后,同学可以拨动D1 区的 SW1 拨动开关,观察现象(拨到1 时 LED2亮,拨到 0时 LED1 亮),并得出结论。运行结果:拨到 1 时 LED2 亮, 拨到0时 LED1 亮, 说明每拨动一次开关改变一次继电器的状态。4 . 然后把 C7 区 J9 接口的 KJ 改接到 A2 区的 J61 接口的 P10。 再编写一个程序程序(参考实验二),使 口延时一段时间后改

21、变电平值,来控制继电器的开关。实验程序见实验参考程序。调试运行结果:两个LE或替变亮,继电器状态不断改变。6、 实验参考程序ORG 0000HLJMP MAINORG 0100HMAIN: MOV R7,#0LOOP: MOV R6,#0DJNZ R6,$DJNZ R6,$DJNZ R6,$DJNZ R7,LOOPCPLSJMP MAINEND7、 实验思考题1. 请同学思考一下,改由OPEN2 、 COM2 、 CLOSE2 时本实验如何进行。同使用OPEN1 COM1 口CLOSE1"连接方法类似,把D1区J52接口的LED1 LED当C7KJ103接口的 OPEN2 CLOSE

22、2别相连,另外 C7区J103接口的 COM2 接地(GND即可。2. 请同学再思考一下,继电器的用途,并举例说明。继电器是一种电控制,是当输入量(激励量)的变化达到规定要求时,在电气输出电路中使被控量发生预定的阶跃变化的一种电器。它具有(又称输入回路)和被控制系统(又称输出回路)之间的互动关系。通常应用于自动化的控制中,它实际上是用小电流去控制大电流运作的一种“自动开关”。故在电路中起着自动调节、安全保护、转换电路等作用。按照其工作原理可有以下应用:电磁继电器固体继电器温度继电器舌簧继电器时间继电器高频继电器极化继电器其他类型的继电器8、 实验总结及相关问题由于具有之前实验的基础所以本实验基本没碰到什么问题,调试运行都符合实验要求,通过本次实验了解了继电器的控制方法。对继电器这一器件有了一定了解。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1