1、单片机实验指导书简化版单片机实验指导书(简化版)实验一 清零实验 (基础实验)一、实验目的 1. 掌握存储器读写方法。2. 了解存储器的块操作方法。二、实验内容1. 指定内部RAM中某块的起始地址和长度,要求能将其内容清零。2. 指定外部RAM中某块的起始地址和长度,要求能将其内容清零。3. 指定外部RAM中某块的起始地址和长度,要求能将其内容置为某固定值(如0FFH)。三、实验说明 通过本实验,学生可以了解单片机的存储器结构及读写存储器的方法,同时也可以了解单片机编程、调试方法。四、实验仪器和设备 PC机、WAVE软件。五、参考程序框图 否 是存储器块清零参考程序框图六、参考程序(略)实验二
2、拆字程序(基础实验)一、实验目的掌握汇编语言设计和调试方法。二、实验内容把7000H的内容拆开,高位送7001H低位,低位送7002H低位。7001H、7002H高位清零,一般本程序用于把数据送显示缓冲区时用。三、实验说明 通过本实验,屏蔽半字节及拆字的方法,同时也可以了解单片机编程、调试方法。四、主要仪器设备及耗材PC机、WAVE软件五、参考程序框图六、参考程序(略)实验三拼字程序(基础实验)一、实验目的掌握汇编语言设计和调试方法。二、实验内容把7000H的低四位BCD数和7001H的低四位BCD数,拼成压缩BCD码的形式存放在7002H。三、实验说明 通过本实验,掌握拼字的编程方法,同时也
3、可以了解单片机编程、调试方法。四、主要仪器设备及耗材PC机、WAVE软件五、参考程序框图六、参考程序(略)实验四 数据块移动(基础实验)一、实验目的 1了解内存的移动方法。 2加深对存储器读写的认识。二、实验内容 将指定源地址和长度的存储块移到指定目标位置。三、实验说明块移动是计算机常用操作之一,多用于大量的数据复制和图象操作。本程序是给出起始地址,用地址加一方法移动块,请思考给出块结束地址,用地址减一方法移动块的算法。另外,若源块地址和目标块地址有重叠,该如何避免?四、实验仪器和设备 PC机、WAVE软件。五、参考程序框图 否 是 是存储块移动参考程序框图六、参考程序(略)实验五 数据排序(
4、基础实验)一、实验目的 1了解数据排序的简单算法。 2了解数列的有序和无序概念。二、实验内容 给出一组随机数,将此组数据排序,使之成为有序数列。三、实验说明有序的数列更有利于查找。本程序用的是“冒泡排序”法,算法是将一个数与后面的数相比较,如果比后面的数大,则交换,如此将所有的数比较一遍后,最大的数就会在数列的最后面。再进行下一轮比较,找出第二大数据,直到全部数据有序。四、实验仪器和设备 PC机、WAVE软件。五、 参考程序框图 否 是 否 是 否 是数据排序参考程序框图六、参考程序(略)实验六P3.3口输入,P1口输出(基础实验)一、实验目的1、掌握P3口、P1口简单使用。2、学习延时程序的
5、编写和使用。二、实验内容1、 P3.3口做输入口,外接一脉冲,每输入一个脉冲,P1口按十六进制加一。2、 P1口做输出口,编写程序,使P1口接的8个发光二极管D1D8按16进制加一方式点亮发光二极管。三、 实验说明1、 P1口是准双向口,它作为输出口时与一般的双向口使用方法相同,由准双向口结构可知:当P1口作为输入口时,必须先对它置高电平,使内部MOS管截止,因内部上拉电阻是20K40K,故不会对外部输入产生影响。若不先对它置高,且原来是低电平,则MOS管导通,读入的数据是不正确的。2、 延时子程序的延时计算问题。对于延时程序 DELAY :MOV R6, #00H DELAY1:MOV R7
6、, #80H DJNZ R7, $ DJNZ R6, DELAY1查指令表可知MOV、DJNZ指令均需用两个机器周期,而一个机器周期时间长度为12/ 6.0MHZ,所以该段指令执行时间为:(80+1)256+1)2(126000000)=132.1ms四、 实验程序框图五、 实验线路图六、 实验步骤 用伟福软件编写程序,并编译通过 用STC软件下装程序到TX-1C单片机实验板 每按一次S3按钮,D1D8发光二极管按16进制方式加一点亮。七、参考程序 ORG 0540hHA1S: MOV A,#00HHA1S1: JB P3.3,HA1S1 MOV R2,#20H LCALL DELAY JB
7、P3.3,HA1S1HA1S2: JNB P3.3,HA1S2 MOV R2,#20H LCALL DELAY JNB P3.3,HA1S2 INC A PUSH ACC CPL A MOV P1,ACLR P2.5SETB P2.5 POP ACC AJMP HA1S1DELAY: PUSH 02HDELAY1: PUSH 02HDELAY2: PUSH 02HDELAY3: DJNZ R2,DELAY3 POP 02H DJNZ R2,DELAY2 POP 02H DJNZ R2,DELAY1 POP 02H DJNZ R2,DELAY RET END实验七 P0口输出控制继电器实验(基础
8、实验)一、实验目的 掌握用继电器控制的基本方法和编程,学习驱动电路的设计。二、实验内容利用P1口输出高低电平,控制继电器的开合,以实现对外部装置的控制。三、预备知识 现代自动化控制设备都存在一个电子与电气电路的互相联结问题,一方面要使电子电路的控制信号能够控制电气电路的执行元件(电动机、电磁铁、电灯等),另一方面又要为电子电路和电气电路提供良好的电隔离,以保护电子电路和人身的安全,电子继电器便能完成这一桥梁作用。 本实验采用HK4100FDC5VSHG型继电器,其控制电压为5V。继电器电路中一般要在继电器的线圈两头加一个二极管以吸收继电器线圈断电时产生的反电势,防止干扰。四、实验线路图五、实验
9、程序框图六、实验步骤1、在J24接口上接上实验室提供的外围控制对象。2、用伟福软件编写、调试并编译程序。3、用STC软件下装程序到TX-1C单片机实验板。、观察继电器对外围对象的控制效果。七、参考程序 ORG 0030HSTART: SETB P0.6 LCALL DELAY CLR P0.6 LCALL DELAY SJMP STARTDELAY: MOV R7,#0FFHDELAY1: MOV R6,#0FFHDELAY2: DJNZ R6,DELAY2 DJNZ R7,DELAY1 RET END实验八 蜂鸣器定时发声实验(综合性实验)一、实验目的掌握定时器中断方式的使用,蜂鸣器的使用二
10、、实验内容利用p2.3口发出低电平让蜂鸣器发声,发出高电平蜂鸣器停止发声。通过定时器设置p2.3口,最终达到蜂鸣器能够响1s停1s的效果。通过按键增大和减小蜂鸣器的发声间隔。要求用定时器中断方式。三、实验基本原理实验接线图:四、程序框图五、主要仪器设备及耗材微机原理与接口技术、PC机、usb线,串口线六、实验步骤1)将实验板上的串口线与电脑串口相连(下载程序用)2)将实验板上的usb线与电脑机箱上usb口相连(提供电源)3)打开“伟福”确认其仿真器设置为H51/L里的89C51RX,并且语言那项里编译器选择“伟福编译器”。4)把程序在伟福中编译生成*.HEX文件5)打开STC软件用以把*.HE
11、X文件写入单片机的ROM中运行(注意选单片机型号为89s52)6)在试验板左上中部,数码管的下方是电源开关,请确定此时试验板处于关电状态。7)在STC软件中点击“打开文件”按钮选择事先准备好的*.HEX文件。8)点击“download”,随后快速的使得试验板上的电源处于开的状态,则显示开始下载程序到单片机中,如果失败,则需要先点“stop”后重新将试验板电源按到关的状态,然后再点击“download”再开试验板上电源,直到下载成功为止。9)收听试验效果。七、思考题将响声改为一长两短的警报八、参考程序ORG 00HLJMP STARTORG 0BHLJMP TIM0ORG 30HSTART: C
12、LR P3.0 SETB P3.4 SETB P3.5 MOV R0,#20 MOV IE,#10000010B MOV TMOD,#01H MOV TH0,#4CH MOV TL0,#00H SETB TR0 SM: JB P3.4,NEXT JNB 30H,NEXTN CALL delay JB P3.4,NEXT CLR 30H MOV A,41H SUBB A,#01H MOV 41H,A LJMP NEXTN NEXT : SETB 30H NEXTN: JB P3.5,NEXT1 JNB 31H,NEXTN1 CALL delay JB P3.5,NEXT1 CLR 31H MOV
13、 A,41H ADD A,#01H MOV 41H,A LJMP NEXTN1 NEXT1 : SETB 31H NEXTN1: LJMP SMORG 300HTIM0: MOV TH0,41H MOV TL0,#00H DJNZ R0,OUT CPL P2.3 MOV R0,#20OUT: RETIdelay:mov 55h,#20 ;50h,51h,52h用于延时 50h为参数x 延时1*x ms NOP NOP djnz 52H,delay MOV 52H,#20 ret ;延时返回END实验九 步进电机试验(综合性实验)一、实验目的掌握定时器中断方式的使用,步进电机的使用,通过两按键调
14、节步进电机的转速,和转向。二、实验内容 利用定时器定时,达到每1s钟间隔通过P0.2,P0.3,P0.4,P0.5向步进电机的A,B,C,D端发出对应的高低电平信号,使得电机可以始终朝一个方向一格一格的转动。要求用定时器中断方式。三、实验基本原理实验接线图:电路原理图ABCD信号顺序图四、程序框图五、主要仪器设备及耗材微机原理与接口技术、PC机、usb线,串口线六、实验步骤1)将实验板上的串口线与电脑串口相连(下载程序用)2)将实验板上的usb线与电脑机箱上usb口相连(提供电源)3)将试验板上单片机右下旁J16跳线上的P02,P03,P04,P05接上跳线帽。4)打开“伟福”确认其仿真器设置
15、为H51/L里的89C51RX,并且语言那项里编译器选择“伟福编译器”。5)把程序在伟福中编译生成*.HEX文件6)打开STC软件用以把*.HEX文件写入单片机的ROM中运行(注意选单片机型号为89s52)7)在试验板左上中部,数码管的下方是电源开关,请确定此时试验板处于关电状态。8)在STC软件中点击“打开文件”按钮选择事先准备好的*.HEX文件。9)点击“download”,随后快速的使得试验板上的电源处于开的状态,则显示开始下载程序到单片机中,如果失败,则需要先点“stop”后重新将试验板电源按到关的状态,然后再点击“download”再开试验板上电源,只到下载成功为止。9)观看试验效果
16、。七、思考题将转动的速度调快点,并且反向旋转。八、参考程序ORG 00HLJMP STARTORG 0BHLJMP TIM0ORG 30HSTART: CLR P3.0 SETB P3.4 SETB P3.5 SETB P3.6 SETB 20H;正反转标志位 MOV 41H,#4CH;TH0 MOV R0,#20 MOV R1,#4 MOV R2,#4 MOV IE,#10000010B MOV TMOD,#01H MOV TH0,41H MOV TL0,#00H SETB TR0SM: JB P3.4,NEXT JNB 30H,NEXTN CALL delay JB P3.4,NEXT C
17、LR 30H CPL 20H LJMP NEXTN NEXT : SETB 30H NEXTN: JB P3.5,NEXT1 JNB 31H,NEXTN1 CALL delay JB P3.5,NEXT1 CLR 31H MOV A,41H ADD A,#01H MOV 41H,A LJMP NEXTN1 NEXT1 : SETB 31H NEXTN1: JB P3.6,NEXT2 JNB 32H,NEXTN2 CALL delay JB P3.6,NEXT2 CLR 32H MOV A,41H SUBB A,#01H MOV 41H,A LJMP NEXTN2 NEXT2 : SETB 32
18、H NEXTN2: LJMP SMORG 300HTIM0: MOV TH0,41H MOV TL0,#00H DJNZ R0,OUT MOV R0,#20 JB 20H,REVERSE MOV A,R1 SUBB A,#1 MOV R1,A CJNE A,#3,SECOND MOV P0,#0010100B AJMP OUTSECOND: CJNE A,#2,THIRD MOV P0,#0011000B AJMP OUTTHIRD: CJNE A,#1,FORTH MOV P0,#0101000B AJMP OUTFORTH: CJNE A,#0,OUT MOV P0,#0100100B A
19、DD A,#4 MOV R1,A AJMP OUTREVERSE: MOV A,R2 SUBB A,#1 MOV R2,A CJNE A,#3,SECOND1 MOV P0,#0100100B AJMP OUTSECOND1: CJNE A,#2,THIRD1 MOV P0,#0101000B AJMP OUTTHIRD1: CJNE A,#1,FORTH1 MOV P0,#0011000B AJMP OUTFORTH1: CJNE A,#0,OUT MOV P0,#0010100B ADD A,#4 MOV R2,A AJMP OUTOUT: RETIdelay:mov 55h,#20 ;5
20、0h,51h,52h用于延时 50h为参数x 延时1*x ms NOP NOP djnz 52H,delay MOV 52H,#20 ret ;延时返回END实验十 24小时时钟带调时实验(设计性实验) 一、实验目的1)了解时钟中断的使用方法。2)了解七段数码管的使用方法。3)了解动态显示的使用方法。4)按键扫描的使用方法。二、实验内容 试验板上六个七段数码管,分为三组,每组两位。第一组显示秒,第二组显示分,第三组显示小时。可以完成从0到24小时计时,完成后自动清零从头开始计时。设置三个按键分别用来调整秒,分,时的数值,完成对时功能。三、实验基本原理实验接线图数码接口键盘接口四实验程序框图五、
21、主要仪器设备及耗材微机原理与接口技术实验板、PC机、导线、步进电机六、实验步骤1)将实验板上的串口线与电脑串口相连(下载程序用)2)将实验板上的usb线与电脑机箱上usb口相连(提供电源)3)将试验板上单片机右下旁J16跳线上的P02,P03,P04,P05接上跳线帽。4)打开“伟福”确认其仿真器设置为H51/L里的89C51RX,并且语言那项里编译器选择“伟福编译器”。5)把程序在伟福中编译生成*.HEX文件6)打开STC软件用以把*.HEX文件写入单片机的ROM中运行(注意选单片机型号为89s52)7)在试验板左上中部,数码管的下方是电源开关,请确定此时试验板处于关电状态。8)在STC软件
22、中点击“打开文件”按钮选择事先准备好的*.HEX文件。9)点击“download”,随后快速的使得试验板上的电源处于开的状态,则显示开始下载程序到单片机中,如果失败,则需要先点“stop”后重新将试验板电源按到关的状态,然后再点击“download”再开试验板上电源,只到下载成功为止。9)观看试验效果。七、实验数据及处理结果 从键盘上实现调试,当时间显示为23点59分59秒时,下一秒会变为全零。 八、思考讨论题或体会或对改进实验的建议 也可以改为跑表,按下开始计时,再按下停。九参考程序:ORG 00HLJMP STARTORG 0BHLJMP TIM0ORG 30HSTART: SETB P3
23、.4 SETB P3.5 SETB P3.6 CLR P3.0 MOV 50H,#01H MOV SP,#30H MOV R0,#20 MOV R1,#4 MOV R2,#0 MOV 40H,#0;秒个位 MOV 41H,#0;秒十位 MOV 42H,#9;分个位 MOV 43H,#5;分十位 MOV 44H,#3;时个位 MOV 45H,#2;时十位 MOV IE,#10000010B MOV TMOD,#01H MOV TH0,#4CH MOV TL0,#00H SETB TR0DISPLAY: CLR P2.7 SETB P2.6 MOV DPTR,#TAB MOV A,40H MOVC
24、 A,A+DPTR MOV P0,A CLR P2.6 SETB P2.7 MOV P0,#0FFH CLR P0.5 CLR P2.7 CALL delayxms JB P3.4,NEXT JNB 30H,NEXTN CALL delay JB P3.4,NEXT CLR 30H MOV A,40H ADD A,#1 MOV 40H,A CJNE A,#10,NEXTN MOV 40H,#00H MOV A,41H ADD A,#01H MOV 41H,A CJNE A,#06H,NEXTN MOV 41H,#00H LJMP NEXTN NEXT : SETB 30H NEXTN: CLR
25、 P2.7 SETB P2.6 MOV DPTR,#TAB MOV A,41H MOVC A,A+DPTR MOV P0,A CLR P2.6 SETB P2.7 MOV P0,#0FFH CLR P0.4 CLR P2.7 CALL delayxms JB P3.5,NEXT1 JNB 31H,NEXTN1 CALL delay JB P3.5,NEXT1 CLR 31H MOV A,42H ADD A,#1 MOV 42H,A CJNE A,#10,NEXTN1 MOV 42H,#00H MOV A,43H ADD A,#01H MOV 43H,A CJNE A,#06H,NEXTN1 M
26、OV 43H,#00H LJMP NEXTN1 NEXT1 : SETB 31H NEXTN1: CLR P2.7 SETB P2.6 MOV DPTR,#TAB MOV A,42H MOVC A,A+DPTR ORL A,#80H MOV P0,A CLR P2.6 SETB P2.7 MOV P0,#0FFH CLR P0.3 CLR P2.7 CALL delayxms CLR P2.7 SETB P2.6 MOV DPTR,#TAB MOV A,43H MOVC A,A+DPTR MOV P0,A CLR P2.6 SETB P2.7 MOV P0,#0FFH CLR P0.2 CLR
27、 P2.7 CALL delayxms CLR P2.7 SETB P2.6 MOV DPTR,#TAB MOV A,44H MOVC A,A+DPTR ORL A,#80H MOV P0,A CLR P2.6 SETB P2.7 MOV P0,#0FFH CLR P0.1 CLR P2.7 CALL delayxms JB P3.6,NEXT2 JNB 32H,NEXTN2 CALL delay JB P3.6,NEXT2 CLR 32H MOV A,45H CJNE A,#2,HH MOV A,44H ADD A,#1 MOV 44H,A CJNE A,#4,HL MOV 44H,#0 M
28、OV 45H,#0 HL: LJMP NEXTN2 HH: MOV A,44H ADD A,#1 MOV 44H,A CJNE A,#10,NEXTN2 MOV 44H,#00H MOV A,45H ADD A,#01H MOV 45H,A CJNE A,#06H,NEXTN2 MOV 45H,#00H LJMP NEXTN2 NEXT2 : SETB 32H NEXTN2: CLR P2.7 SETB P2.6 MOV DPTR,#TAB MOV A,45H MOVC A,A+DPTR MOV P0,A CLR P2.6 SETB P2.7 MOV P0,#0FFH CLR P0.0 CLR P2.7 CALL delayxms LJMP DISPLAYORG 300HTIM0: MOV TH0,#4CH MOV TL0,#00H DJNZ R0,OUT MOV R0,#20 MOV A,40H ADD A,#1 CJNE A,#10,SECL MOV 40H,#00H MOV A,41H ADD A,#1 CJNE A,#6,SECH MOV 41H,#00H MOV A,42H ADD A,#1 CJNE A,#10,MINL MOV 42H,#00H MOV A,43H ADD A,#1
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1