《单片机原理及应用实验》由会员分享,可在线阅读,更多相关《单片机原理及应用实验(33页珍藏版)》请在金锄头文库上搜索。
1、单片机原理及应用实验Stillwatersrundeep.流静水深流静水深,人静心深人静心深Wherethereislife,thereishope。有生命必有希望。有生命必有希望教材与课时安排教材 单片机原理及其接口技术实验 丁筱铃等 编著 山东农业大学课时安排 上 机: 9学时上机安排 上机地点:机电学院机房l上机时间:根据教学日历安排l上机内容:随教学进度的基础训练(上机调试每次实验内容)l要求:所有作业必须独立完成实验内容必须经上机调试通过 每次实验必须写出实验报告 上机考勤3次缺席,按不及格处理发现上机时间上网,按缺席一次处理课程要求 课前请做好预习保持课堂安静,头脑清醒,思维活跃认
2、真、独立、按时完成并提交作业重视上机实践,有效利用宝贵的上机时间 实实 验验 内内 容容l实验一、汇编语言软件调试实验实验一、汇编语言软件调试实验 l实验二、实验二、8031单片机单片机P3、P1口应用口应用l实验三、工业顺序控制实验三、工业顺序控制l实验四、实验四、A/D转换转换0809应用应用实验一、软件实验实验一、软件实验l一、实验目的一、实验目的l二、实验内容二、实验内容l三、实验程序流程图三、实验程序流程图l四、实验步骤四、实验步骤l五、思考五、思考 l一、实验目的一、实验目的 掌握汇编语言设计和调试方法,熟悉键盘操作。掌握汇编语言设计和调试方法,熟悉键盘操作。l二、实验内容二、实验
3、内容把把7000H70FFH的内容清零。的内容清零。三、实验程序流程图三、实验程序流程图开始R0=0000送到7000HDPTR+1,R0+1结束YNR0=FF四、实验步骤四、实验步骤(1) 联接联接DVCC实验系统(实验系统(Ctrl+H)(2) 装载目标文件(装载目标文件(Ctrl+L)(3) 设置设置PC起始地址起始地址(4) 运行程序运行程序(5) 单步、断点运行完后,在存贮器窗口内检查单步、断点运行完后,在存贮器窗口内检查0000H70FFH中的内容是否全为中的内容是否全为00H五、思考五、思考l假使要把假使要把700070FFH中的内容改成中的内容改成FF,如何编制程序。,如何编制
4、程序。实验二、实验二、8031单片机单片机P3、P1口应用口应用l一、实验目的一、实验目的l二、实验内容二、实验内容l三、实验程序流程图三、实验程序流程图l四、实验原理图四、实验原理图l五、实验步骤五、实验步骤l六、实验程序六、实验程序l一、实验目的一、实验目的1、 掌握掌握P3口、口、P1口简单使用。口简单使用。l2、 学习延时程序的编写和使用。学习延时程序的编写和使用。l二、实验内容二、实验内容l1、P3.3口做输入口,外接一脉冲,每输入一个脉冲,口做输入口,外接一脉冲,每输入一个脉冲,P1口按十六进制加一。口按十六进制加一。l2、 P1口做输出口,编写程序,使口做输出口,编写程序,使P1
5、口接的口接的8个发光二个发光二极管极管L1L8按按16进制加一方式点亮发光二极管。进制加一方式点亮发光二极管。三、实验程序流程图三、实验程序流程图开 始循 环A+1送P1口延 时N延 时NYYYP3.3为高吗?P3.3为高吗?NP3.3为低吗?四、实验原理图四、实验原理图五、实验步骤五、实验步骤l1、P3.3用插针连至用插针连至K1, P1.0P1.7用插针连至用插针连至L1L8。l2、从起始地址、从起始地址0540H开始连续运行程序(输入开始连续运行程序(输入0540后按后按EXEC键)。键)。l3、开关、开关K1每拨动一次,每拨动一次,L1L8发光二极管按发光二极管按16进进制方式加一点亮
6、。制方式加一点亮。lORG 0000HlLJMP STlORG 0030HlST: MOV SP,#60HlCLR AlKK: SETB P3.3lJB P3.3,KKlLCALL DL10MSlJB P3.3,KKlJNB P3.3,$lLCALL DL10MSlINC AlMOV P1,AlLJMP KKlDL10MS:MOV R6,#10lDL1MS:MOV R7,#250lLP:NOPl NOPlDJNZ R7,LPlDJNZ R6,DL1MSlRETlEND六、实验程序六、实验程序实验三、工业顺序控制实验三、工业顺序控制 (中断)l一、实验目的一、实验目的l二、实验内容二、实验内容l
7、三、实验程序流程图三、实验程序流程图l四、实验原理图四、实验原理图l五、实验步骤五、实验步骤l六、实验程序六、实验程序一、实验目的一、实验目的l1、掌握工业顺序控制程序的简单编程,中断的使用。、掌握工业顺序控制程序的简单编程,中断的使用。l2、 学习延时程序的编写和使用。学习延时程序的编写和使用。l3、学习现场数据的保护和堆栈、学习现场数据的保护和堆栈二、实验内容二、实验内容l 8032的的P1.0P1.6控制注塑机的七道工序,现模拟控制注塑机的七道工序,现模拟控制七只发光二极管的点亮,高电平有效,设定每控制七只发光二极管的点亮,高电平有效,设定每道工序时间转换为延时,道工序时间转换为延时,P
8、3.4为开工启动开关,低电为开工启动开关,低电平启动。平启动。P3.3为外故障输入模拟开关,为外故障输入模拟开关,P3.3为为0时不时不断告警,断告警,P1.7为报警声音输出,设定为报警声音输出,设定6道工序只有一道工序只有一位输出,第七道工序三位有输出。位输出,第七道工序三位有输出。 三、实验程序流程图三、实验程序流程图主程序:开始 工序7延时 中断、P1口、P3口初始化,P1口全低等开工工序1延时工序2延时关输出中断服务子程序:保护现场报 警返回恢复现场YN故障清除了吗?四、实验原理图四、实验原理图五、实验步骤五、实验步骤l七、实验步骤七、实验步骤l P3.4连连K1,P3.3连连K2,P
9、1.0P1.6分别连到分别连到L1L7,P1.7连连SIN(电子音响输入端)。(电子音响输入端)。lK1开关拨在上面,开关拨在上面,K2拨在上面。拨在上面。l 用连续方式从起始地址用连续方式从起始地址0580H开始运行程序(输开始运行程序(输入入0580后按后按EXEC键),此时应在等待开工状态。键),此时应在等待开工状态。l K1拨至下面(显低电平),各道工序应正常运行。拨至下面(显低电平),各道工序应正常运行。l K2拨至下面(低电平),应有声音报警(人为设拨至下面(低电平),应有声音报警(人为设置故障)。置故障)。l K2拨至上面(高电平),即排除故障,程序应从拨至上面(高电平),即排除
10、故障,程序应从刚才报警的那道工序继续执行。刚才报警的那道工序继续执行。l思考:修改程序,使每道工序中有多位输出。思考:修改程序,使每道工序中有多位输出。l ORG 0000Hl LJMP STl ORG 0013Hl LJMP BREAKl ORG 0030HlST: MOV SP,#60H l MOV P1,#0lL1:JB P3.4,L1 l SETB EAl SETB EX1lSETB PX1lLP:MOV P1,#1l LCALL DL10MSl MOV P1,#2l LCALL DL10MSlMOV P1,#4l LCALL DL10MSlMOV P1,#8l LCALL DL10M
11、SlMOV P1,#10Hl LCALL DL10MSlMOV P1,#20Hl LCALL DL10MSlMOV P1,#07Hl LCALL DL10MSlLJMP L2六、实验程序六、实验程序lBREAK: MOV PSW,#08HlLL: MOV P1,#0l MOV R3,#10lKK: SETB P1.7l LCALL DL10MSl CLR P1.7l LCALL DL10MSl DJNZ R3,KKl LCALL DL10MSl JNB P3.3, LLl MOV PSW,#00Hl RETIlDL10MS:MOV R6,#10lDL1MS:MOV R7,#250lLP:NOP
12、l NOPlDJNZ R7,LPlDJNZ R6,DL1MSlRETlEND实验四、实验四、A/D 转换实验转换实验 l一、实验目的一、实验目的l二、实验内容二、实验内容l三、实验程序流程图三、实验程序流程图l四、实验原理图四、实验原理图l五、实验步骤五、实验步骤l六、实验程序六、实验程序一、实验目的一、实验目的l1.掌握掌握A/ D转换与单片机的接口方法。转换与单片机的接口方法。l 2.了解了解A/ D芯片芯片0809转换性能及编程方法。转换性能及编程方法。l 3.通过实验了解单片机如何进行数据采集。通过实验了解单片机如何进行数据采集。二、实验内容二、实验内容l利用实验仪上的利用实验仪上的0
13、809做做A/ D转换实验,实验仪上的转换实验,实验仪上的W1电位器提供模拟量输入。编制程序,将模拟量转电位器提供模拟量输入。编制程序,将模拟量转换成数字量,通过二位七段数码管显示器显示。换成数字量,通过二位七段数码管显示器显示。 三、实验程序流程图三、实验程序流程图四、实验原理图四、实验原理图开 始0809初始化初始显示000809通道0采样数码管显示采样五、实验步骤五、实验步骤l1、把、把A/D区区0809的的0通道通道IN0用插针线接至用插针线接至W1的中心的中心抽头抽头V01插孔插孔(05V)。l2、0809的的CLK插孔与分频输出端插孔与分频输出端T4相连。相连。l3. 将将W2的输
14、入的输入VIN接接+12V插孔,插孔,+12V插孔再连到插孔再连到外置电源的外置电源的+12上(电源内置时,该线已连好)。调上(电源内置时,该线已连好)。调节节W2,使,使VREF端为端为+5V。 l4. 将将A/D区的区的VREF连到连到W2的输出的输出VREF端。(如果端。(如果精度要求不高的话,精度要求不高的话,A/D区的区的VREF直接连到直接连到VCC插插孔,这样步骤孔,这样步骤可以去掉)。可以去掉)。l5、EXIC1上插上上插上74LS02芯片,将有关线路按图连好。芯片,将有关线路按图连好。 l6、将、将A/D区区D0D7用排线与用排线与BUS2区区XD0XD7相连。相连。l7、B
15、US3区区P3.0插孔连到数码管显示区插孔连到数码管显示区DATA插孔。插孔。 l8、BUS3区区P3.1插孔连到数码管显示区插孔连到数码管显示区CLK插孔。插孔。l9、单脉冲发生、单脉冲发生/SP插孔连到数码管显示区插孔连到数码管显示区CLR插孔。插孔。 l10、 按实验系统上的按实验系统上的F2键,仿真实验仪进入仿真状态键,仿真实验仪进入仿真状态(内程序,外数据),显示器显示(内程序,外数据),显示器显示“P”。l11、 以连续方式从起始地址以连续方式从起始地址06D0运行程序运行程序,在数码管在数码管上显示当前采集的电压值转换后的数字量上显示当前采集的电压值转换后的数字量,调节调节W1数
16、数码管显示将随着电压变化而相应变化码管显示将随着电压变化而相应变化,典型值为典型值为0V00H,2.5V80H,5VFFH。lORG 0000HlST:CLR AlMOV SP,#60HlMOV DPTR,#9000HlMOVX DPTR,AlMOV R7,#0FFHlMOV SBUF,AlMOV SBUF,AlMOVX A,DPTRlDISP:MOV R0,AlANL A,#0FHlLP:MOV DPTR,#TABlMOVC A,A+DPTRlMOV SBUF,AlMOV R7,#10lDJNZ R7,$lMOV A,R0lSWAP AlANL A,#0FHlMOVC A,A+DPTRlMOV SBUF,AlMOV R7,#10lDJNZ R7,$lLCALL DELAYlLJMP ST六、实验程序六、实验程序lTAB: DB 0FCH,60H,0DAH,0F2H,66H,0B6H,0BEH,0E0Hl DB 0FEH,0F6H,0EEH,3EH,9CH,7AH,9EH,BEHlDELAY:MOV R6,#255lDL:MOV R7,#255lDL1:DJNZ R7,DL1l DJNZ R6,DLl RETlENDl