南昌大学单片机实验Word文档下载推荐.docx
《南昌大学单片机实验Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《南昌大学单片机实验Word文档下载推荐.docx(35页珍藏版)》请在冰豆网上搜索。
![南昌大学单片机实验Word文档下载推荐.docx](https://file1.bdocx.com/fileroot1/2022-11/23/817968d3-619e-4f4e-b298-50d0ec52ae49/817968d3-619e-4f4e-b298-50d0ec52ae491.gif)
块移动是计算机常用操作之一,多用于大量的数据复制和图象操作。
本程序是给出起始地址,用地址加一方法移动块,请思考给出块结束地址,用地址减一方法移动块的算法。
另外,若源块地址和目标块地址有重叠,该如何避免?
否
存储块移动参考程序框图
实验五数据排序(基础实验)
1.了解数据排序的简单算法。
2.了解数列的有序和无序概念。
给出一组随机数,将此组数据排序,使之成为有序数列。
有序的数列更有利于查找。
本程序用的是“冒泡排序”法,算法是将一个数与后面的数相比较,如果比后面的数大,则交换,如此将所有的数比较一遍后,最大的数就会在数列的最后面。
再进行下一轮比较,找出第二大数据,直到全部数据有序。
五、
参考程序框图
否是
数据排序参考程序框图
实验六 P3.3口输入,P1口输出(基础实验)
1、掌握P3口、P1口简单使用。
2、学习延时程序的编写和使用。
1、P3.3口做输入口,外接一脉冲,每输入一个脉冲,P1口按十六进制加一。
2、P1口做输出口,编写程序,使P1口接的8个发光二极管D1—D8按16进制加一方式点亮发光二极管。
三、实验说明
1、P1口是准双向口,它作为输出口时与一般的双向口使用方法相同,由准双向口结构可知:
当P1口作为输入口时,必须先对它置高电平,使内部MOS管截止,因内部上拉电阻是20KΩ—40KΩ,故不会对外部输入产生影响。
若不先对它置高,且原来是低电平,则MOS管导通,读入的数据是不正确的。
2、延时子程序的延时计算问题。
对于延时程序
DELAY:
MOVR6,#00H
DELAY1:
MOVR7,#80H
DJNZR7,$
DJNZR6,DELAY1
查指令表可知MOV、DJNZ指令均需用两个机器周期,而一个机器周期时间长度为12/6.0MHZ,所以该段指令执行时间为:
((80+1)×
256+1)×
2×
(12÷
6000000)=132.1ms
四、实验程序框图
五、实验线路图
六、实验步骤
①用伟福软件编写程序,并编译通过
②用STC软件下装程序到TX-1C单片机实验板
③每按一次S3按钮,D1—D8发光二极管按16进制方式加一点亮。
七、参考程序
ORG0540h
HA1S:
MOVA,#00H
HA1S1:
JBP3.3,HA1S1
MOVR2,#20H
LCALLDELAY
HA1S2:
JNBP3.3,HA1S2
INCA
PUSHACC
CPLA
MOVP1,A
CLRP2.5
SETBP2.5
POPACC
AJMPHA1S1
DELAY:
PUSH02H
DELAY1:
DELAY2:
DELAY3:
DJNZR2,DELAY3
POP02H
DJNZR2,DELAY2
DJNZR2,DELAY1
DJNZR2,DELAY
RET
END
实验七P0口输出控制继电器实验(基础实验)
掌握用继电器控制的基本方法和编程,学习驱动电路的设计。
利用P1口输出高低电平,控制继电器的开合,以实现对外部装置的控制。
三、预备知识
现代自动化控制设备都存在一个电子与电气电路的互相联结问题,一方面要使电子电路的控制信号能够控制电气电路的执行元件(电动机、电磁铁、电灯等),另一方面又要为电子电路和电气电路提供良好的电隔离,以保护电子电路和人身的安全,电子继电器便能完成这一桥梁作用。
本实验采用HK4100F—DC5V—SHG型继电器,其控制电压为5V。
继电器电路中一般要在继电器的线圈两头加一个二极管以吸收继电器线圈断电时产生的反电势,防止干扰。
四、实验线路图
五、实验程序框图
六、实验步骤
1、在J24接口上接上实验室提供的外围控制对象。
2、用伟福软件编写、调试并编译程序。
3、用STC软件下装程序到TX-1C单片机实验板。
4、观察继电器对外围对象的控制效果。
ORG0030H
START:
SETBP0.6
CLRP0.6
SJMPSTART
MOVR7,#0FFH
MOVR6,#0FFH
DJNZR6,DELAY2
DJNZR7,DELAY1
实验八蜂鸣器定时发声实验(综合性实验)
掌握定时器中断方式的使用,蜂鸣器的使用
利用p2.3口发出低电平让蜂鸣器发声,发出高电平蜂鸣器停止发声。
通过定时器设置p2.3口,最终达到蜂鸣器能够响1s停1s的效果。
通过按键增大和减小蜂鸣器的发声间隔。
要求用定时器中断方式。
三、实验基本原理
实验接线图:
四、程序框图
五、主要仪器设备及耗材
微机原理与接口技术、PC机、usb线,串口线
1)将实验板上的串口线与电脑串口相连(下载程序用)
2)将实验板上的usb线与电脑机箱上usb口相连(提供电源)
3)打开“伟福”确认其仿真器设置为H51/L里的89C51RX,并且语言那项里编译器选择“伟福编译器”。
4)把程序在伟福中编译生成*.HEX文件
5)打开STC软件用以把*.HEX文件写入单片机的ROM中运行(注意选单片机型号为89s52)
6)在试验板左上中部,数码管的下方是电源开关,请确定此时试验板处于关电状态。
7)在STC软件中点击“打开文件”按钮选择事先准备好的*.HEX文件。
8)点击“download”,随后快速的使得试验板上的电源处于开的状态,则显示开始下载程序到单片机中,如果失败,则需要先点“stop”后重新将试验板电源按到关的状态,然后再点击“download”再开试验板上电源,直到下载成功为止。
9)收听试验效果。
七、思考题
将响声改为一长两短的警报
八、参考程序
ORG00H
LJMPSTART
ORG0BH
LJMPTIM0
ORG30H
CLRP3.0
SETBP3.4
SETBP3.5
MOVR0,#20
MOVIE,#10000010B
MOVTMOD,#01H
MOVTH0,#4CH
MOVTL0,#00H
SETBTR0
SM:
JBP3.4,NEXT
JNB30H,NEXTN
CALLdelay
CLR30H
MOVA,41H
SUBBA,#01H
MOV41H,A
LJMPNEXTN
NEXT:
SETB30H
NEXTN:
JBP3.5,NEXT1
JNB31H,NEXTN1
CLR31H
ADDA,#01H
LJMPNEXTN1
NEXT1:
SETB31H
NEXTN1:
LJMPSM
ORG300H
TIM0:
MOVTH0,41H
DJNZR0,OUT
CPLP2.3
OUT:
RETI
delay:
mov55h,#20;
50h,51h,52h用于延时50h为参数x延时1*xms
NOP
djnz52H,delay
MOV52H,#20
ret;
延时返回
END
实验九步进电机试验(综合性实验)
掌握定时器中断方式的使用,步进电机的使用,通过两按键调节步进电机的转速,和转向。
利用定时器定时,达到每1s钟间隔通过P0.2,P0.3,P0.4,P0.5向步进电机的A,B,C,D端发出对应的高低电平信号,使得电机可以始终朝一个方向一格一格的转动。
电路原理图
ABCD信号顺序图
3)将试验板上单片机右下旁J16跳线上的P02,P03,P04,P05接上跳线帽。
4)打开“伟福”确认其仿真器设置为H51/L里的89C51RX,并且语言那项里编译器选择“伟福编译器”。
5)把程序在伟福中编译生成*.HEX文件
6)打开STC软件用以把*.HEX文件写入单片机的ROM中运行(注意选单片机型号为89s52)
7)在试验板左上中部,数码管的下方是电源开关,请确定此时试验板处于关电状态。
8)在STC软件中点击“打开文件”按钮选择事先准备好的*.HEX文件。
9)点击“download”,随后快速的使得试验板上的电源处于开的状态,则显示开始下载程序到单片机中,如果失败,则需要先点“stop”后重新将试验板电源按到关的状态,然后再点击“download”再开试验板上电源,只到下载成功为止。
9)观看试验效果。
将转动的速度调快点,并且反向旋转。
SETBP3.6
SETB20H;
正反转标志位
MOV41H,#4CH;
TH0
MOVR1,#4
MOVR2,#4
SM:
CPL20H
JBP3.6,NEXT2
JNB32H,NEXTN2
CLR32H
LJMPNEXTN2
NEXT2:
SETB32H
NEXTN2:
JB20H,REVERSE
MOVA,R1
SUBBA,#1
MOVR1,A
CJNEA,#3,SECOND
MOVP0,#0010100B
AJMPOUT
SECOND:
CJNEA,#2,THIRD
MOVP0,#0011000B
THIRD:
CJNEA,#1,FORTH
MOVP0,#0101000B
FORTH:
CJNEA,#0,OUT
MOVP0,#0100100B
ADDA,#4
REVERSE:
MOVA,R2
MOVR2,A
CJNEA,#3,SECOND1
SECOND1:
CJNEA,#2,THIRD1
THIRD1:
CJNEA,#1,FORTH1
FORTH1:
实验十24小时时钟带调时实验(设计性实验)
1)了解时钟中断的使用方法。
2)了解七段数码管的使用方法。
3)了解动态显示的使用方法。
4)按键扫描的使用方法。
试验板上六个七段数码管,分为三组,每组两位。
第一组显示秒,第二组显示分,第三组显示小时。
可以完成从0到24小时计时,完成后自动清零从头开始计时。
设置三个按键分别用来调整秒,分,时的数值,完成对时功能。
实验接线图
数码接口
键盘接口
四.实验程序框图
微机原理与接口技术实验板、PC机、导线、步进电机
七、实验数据及处理结果
从键盘上实现调试,当时间显示为23点59分59秒时,下一秒会变为全零。
八、思考讨论题或体会或对改进实验的建议
也可以改为跑表,按下开始计时,再按下停。
九.参考程序:
MOV50H,#01H
MOVSP,#30H
MOVR2,#0
MOV40H,#0;
秒个位
MOV41H,#0;
秒十位
MOV42H,#9;
分个位
MOV43H,#5;
分十位
MOV44H,#3;
时个位
MOV45H,#2;
时十位
DISPLAY:
CLRP2.7
SETBP2.6
MOVDPTR,#TAB
MOVA,40H
MOVCA,@A+DPTR
MOVP0,A
CLRP2.6
SETBP2.7
MOVP0,#0FFH
CLRP0.5
CALLdelayxms
ADDA,#1
MOV40H,A
CJNEA,#10,NEXTN
MOV40H,#00H
CJNEA,#06H,NEXTN
MOV41H,#00H
CLRP0.4
MOVA,42H
MOV42H,A
CJNEA,#10,NEXTN1
MOV42H,#00H
MOVA,43H
MOV43H,A
CJNEA,#06H,NEXTN1
MOV43H,#00H
ORLA,#80H
CLRP0.3
CLRP0.2
MOVA,44H
CLRP0.1
MOVA,45H
CJNEA,#2,HH
MOV44H,A
CJNEA,#4,HL
MOV44H,#0
MOV45H,#0
HL:
HH:
CJNEA,#10,NEXTN2
MOV44H,#00H
MOV45H,A
CJNEA,#06H,NEXTN2
MOV45H,#00H
CLRP0.0
LJMPDISPLAY
CJNEA,#10,SECL
CJNEA,#6,SECH
CJNEA,#10,MINL
CJNEA,#6,MINH