单片机原理及应用实验报告.docx
- 文档编号:24492192
- 上传时间:2023-05-28
- 格式:DOCX
- 页数:34
- 大小:286.46KB
单片机原理及应用实验报告.docx
《单片机原理及应用实验报告.docx》由会员分享,可在线阅读,更多相关《单片机原理及应用实验报告.docx(34页珍藏版)》请在冰豆网上搜索。
单片机原理及应用实验报告
单片机原理及应用实验报告
老师:
学生:
专业:
电气工程及其自动化
学院:
核自学院
学号:
实验一蜂鸣器实验
一.实验目的
利用单片机的P1口作IO口,使用户学会蜂鸣器的使用。
二.实验设备及器件
IBMPC机 一台
DP-51PROC单片机综合仿真实验仪 一台
频率计 一台
三.实验内容
1.编写一段程序,用P1.3口控制(输出3K到4K频率的方波),使B5区的蜂鸣器发出嘹亮的响声。
2.按照例程输入一段程序,用P1.3口控制,使B5区的蜂鸣器发出“生日快乐”的音乐。
图3.3 蜂鸣器原理图
四.实验步骤
1.使用导线把A2区的P13与B5区的BUZZ接线柱相连。
2.先编写一个延时程序(120~200us)。
3.再编写一个循环程序,改变P1.3脚的电平,然后延时。
这样,这个循环就使P1.3口输出一个频率为2.5KHz-4KHz的方波。
在DP-51PROC单片机综合仿真实验仪上运行该程序时,B5区的蜂鸣器将发出嘹亮的响声
4.按以下例程输入,然后运行,蜂鸣器发出“生日快乐”的音乐。
五、实验修改后源程序
ORG 0000H
JMP MAIN
ORG 000BH
JMP INTT0
ORG 0100H
MAIN:
MOV SP,#60H
MOV TMOD,#01H ;初始化定时器及器中断
SETB ET0 ;开定时器0中断
SETB EA
SETB TR0 ;启动定时器0
START0:
SETB P1.3
MOV 30H,#00H
NEXT:
MOV A,30H
MOV DPTR,#TABLE ;从TABLE中读取数据――声响时间
MOVC A,@A+DPTR
MOV R2,A
JZ ENDD
ANL A,#0FH
MOV R5,A
MOV A,R2
SWAP A
ANL A,#0FH
JNZ SING
CLR TR0
JMP D1
SING:
DEC A
MOV 22H,A
RL A
MOV DPTR,#TABLE1 ;从TALBE1中读取数据――声调
MOVC A,@A+DPTR
MOV TH0,A
MOV 21H,A
MOV A,22H
RL A
INC A
MOVC A,@A+DPTR
MOV TL0,A
MOV 20H,A
SETB TR0
D1:
CALL DELAY ;声音延时
INC 30H
JMP NEXT
ENDD:
CLR TR0
JMP START0
INTT0:
;定时器0中断服务程序
PUSH PSW
PUSH ACC
MOV TL0,20H
MOV TH0,21H
CPL P1.3
POP ACC
POP PSW
RETI
DELAY:
;R5的值就是声响持续时间
MOV R7,#02
DELAY0:
MOV R4,#187
DELAY1:
MOV R3,#248
DJNZ R3,$
DJNZ R4,DELAY1
DJNZ R7,DELAY0
DJNZ R5,DELAY
RET
TABLE:
DB82H,01H,81H,94H,84H,0B4H,0A4H,04H
DB82H,01H,81H,94H,84H,0C4H,0B4H,04H
DB82H,01H,81H,0F4H,0D4H,0B4H,0A4H,94H
DB0E2H,01H,0E1H,0D4H,0B4H,0C4H,0B4H,04H
DB82H,01H,81H,94H,84H,0B4H,0A4H,04H
DB82H,01H,81H,94H,84H,0C4H,0B4H,04H
DB82H,01H,81H,0F4H,0D4H,0B4H,0A4H,94H
DB0E2H,01H,0E1H,0D4H,0B4H,0C4H,0B4H,04H,00H
TABLE1:
DW64260,64400,64524,64580,64684,64777,64820,64898
DW64968,65030,65058,65110,65157,65178,65217
END
在keil上编辑后的截图:
编译好后检查出无错误和警告:
下载后:
将程序经图3下载后就可以发出祝你生日快乐的声音。
实验总结:
编辑源程序是注意将指导中的
ORG 8000H
JMP MAIN
ORG 800BH
JMP INTT0
ORG 8100H
改成:
ORG 0000H
JMP MAIN
ORG 000BH
JMP INTT0
ORG 0100H
在keil上编辑运行时要选择文件的保存属性后缀.ASM若有错误则不能运行。
实验中只要一根导线将A2区的P13与B5区的BUZZ接线柱相连。
本次实验让我们知道可以通过单片机上运行汇编程序来实现特定的功能如让蜂鸣器循环发出祝你生日快乐的音调。
实验二电子琴实验
一.实验目的
利用实验仪上提供的按键K1~K7作为电子琴按键,控制蜂鸣器发声,使用户了解计算机发声原理,熟悉定时器和键盘扫描电路的工作原理及编程方法。
二.实验设备及器件
IBMPC机 一台
DP-51PROC单片机综合仿真实验仪 一台
频率计 一台
三.实验内容
1.编写一段程序,用P3.3口控制(输出7种音阶标称频率的方波),使B5区的蜂鸣器发出不同的音调。
程序检测按键的状态,当某一键按下时,蜂鸣器发出对应的音调。
2.按照歌曲的音调,使用D1区的按键K1~K7,弹奏一首简单的音乐。
四.实验步骤
1.用导线将A2区P3.3口(INT1)和B5区的BUZZ接口相连,然后将D1区的J53接口和A2区的J61接口一一对应相连。
如图3.4所示。
图3.4 实验5原理图
2.编写按键的动态键盘扫描程序,根据不同音阶的频率编写蜂鸣器的音调控制程序,然后完成电子琴的主程序设计。
3.调试编写好的程序,使用频率计校准音阶的频率,然后使用键盘演奏一段好听的音乐。
实验修改后程序
BUZZ EQU P3.3 ;端口定义
ORG 0000H
LJMP MAIN
ORG 000BH
LJMP INT_T0
ORG 0100H
MAIN:
MOV SP,#60H ;初始化堆栈指针
MOV P1,#0FFH ;设置P1口为输入模式
MOV TMOD,#01H ;设置定时器0为工作模式1
SETB ET0 ;开定时器0中断
SETB EA ;开总中断
CLR TR0 ;关闭定时器0
START:
MOV R0,P1
CJNE R0,#0FFH,KEY1 ;键盘扫描
CLR TR0
SJMP START
KEY1:
CJNE R0,#0FEH,KEY2 ;K1键按下
MOV 30H,#0FBH ;设置音阶1
MOV 31H,#0E9H
LJMP SET_TIMER
KEY2:
CJNE R0,#0FDH,KEY3;K2键按下
MOV 30H,#0FCH ;设置音阶2
MOV 31H,#5CH
LJMP SET_TIMER
KEY3:
CJNE R0,#0FBH,KEY4;K3键按下
MOV 30H,#0FCH ;设置音阶3
MOV 31H,#0C1H
LJMP SET_TIMER
KEY4:
CJNE R0,#0F7H,KEY5 ;K4键按下
MOV 30H,#0FCH ;设置音阶4
MOV 31H,#0EFH
LJMP SET_TIMER
KEY5:
CJNE R0,#0EFH,KEY6 ;K5键按下
MOV 30H,#0FDH ;设置音阶5
MOV 31H,#045H
LJMP SET_TIMER
KEY6:
CJNE R0,#0DFH,KEY7;K6键按下
MOV 30H,#0FDH ;设置音阶6
MOV 31H,#92H
LJMP SET_TIMER
KEY7:
CJNE R0,#0BFH,NOKEY;K7键按下
MOV 30H,#0FDH ;设置音阶7
MOV 31H,#0D6H
SET_TIMER:
SETB TR0 ;发声
SJMP START
NOKEY:
CLR TR0 ;无键按下
SJMP START
INT_T0:
;T0中断服务程序
MOV TH0,30H ;定时器赋初值
MOV TL0,31H
CPL BUZZ ;输出方波
RETI
;
END
编译好后检查出无错误和警告:
下载到单片机上后点开始:
开始后分别按按键K1~K7就可以发出7种音阶。
实验总结:
首先编写源程序时要将
BUZZ EQU P3.3 ;端口定义
ORG 8000H
LJMP MAIN
ORG 800BH
LJMP INT_T0
ORG 8100H
改成:
BUZZ EQU P3.3 ;端口定义
ORG 0000H
LJMP MAIN
ORG 000BH
LJMP INT_T0
ORG 0100H
设置合适的地址才能正确的运行。
连接导线时要注意用导线将A2区P3.3口(INT1)和B5区的BUZZ接口相连,然后将D1区的J53接口和A2区的J61接口一一对应相连。
连接好后按下k1~K7的按键如能发出7个音阶则证明实验成功。
让我们更好的理解了单片机的功能。
实验三直流电机控制电路设计
一 设计目的
1掌握单片机用PWM实现直流电机调整的基本方法,掌握直流电机的驱动原理。
2学习模拟控制直流电机正转、反转、加速、减速的实现方法。
二 设计要求
用已学的知识配合51单片机设计一个可以正转、反转或变速运动的直流电机控制电路,并用示波器观察其模拟变化状况。
三 设计思路及原理
PWM功率驱动电路如下:
图3.34直流电机驱动原理图
原理图如图3.34,只要ZDJ_A的电压比ZDJ_B的电压高,电机正转。
如果ZDJ_B的电压比ZDJ_A高,电机反转。
利用单片机对PWM信号的软件实现方法。
MCS一51系列典型产品8051具有两个定时计数器。
因为PWM信号软件实现的核心是单片机内部的定时器,所以通过控制定时计数器初值,从而可以实现从8051的任意输出口输出不同占空比的脉冲波形。
从而实现对直流电动机的转速控制。
。
AT89C51的P1.0—P1.2控制直流电机的快、慢、转向,低电平有效。
P3.0为PWM波输出,P3.1为转向控制输出,P3.2为蜂鸣器。
PWM控制DC电机转速,晶振为12M,利用定时器控制产生占空比可变的PWM波,按K1键,PWM值增加,则占空比增加,电机转快,按K2键,PWM值减少,则占空比减小,电机转慢,当PWM值增加到最大值255或者最小值1时,蜂鸣器将报警
四 实验器材
DVCC试验箱 导线若 电源等器件 PROTUES仿真软件 KRIL软件
五 实验流程与程序
#include < reg51.h > sbit K1 =P1^0 增加键
sbit K2 =P1^1 减少键
sbit K3 =P1^2 转向选择键
sbit PWMUOT =P3^0 PWM波输出
sbit turn_around =P3^1 转向控制输出 s
bit BEEP =P3^2 蜂鸣器
unsigned int PWM; void Beep(void);
void delay(unsigned int n); void main(void) {
TMOD=0x11; //设置T0、T1为方式1,(16位定时器)
TH0=0 65536us延时常数{t=(65536-TH)/fose/12} TL0=0;
TH1=PWM //脉宽调节,高8位 TL1=0;
EA=1; //开总中断
ET0=1; //开T0中断
ET1=1; //开T1中断 TR0=1 // T0定时允许
while
(1) {
if(K3==0&&K1==1&&K2==1) // 转向
{
turn_around=!
turn_around; }
while(K3==0); //检测K3是否释放
do{
PWM++
if(PWM>0xfe)//防止PWMS计数溢出
{
PWM=0xff; }
if(PWM==0xff)Beep() 响 delay(3000);
}
while(K1==0&&K2==1);
do{
PWM-- if(PWM<1)
{
PWM=1; }
if(PWM==1)Beep() delay(3000); }
while(K1==1&&K2==0); } }
void timer0() interrupt 1 using 2 // 定时器0中断服务程序 {
TR1=0 //T1禁止 TH0=0 //置T0定时常数 TL0=0
TH1=PWM //置T1定时常数 TL1=0;
TR1=1 //T1允许 PWMUOT=0 // PWM波输出0 }
void timer1() interrupt 3 using 3 //定时器1中断服务程序
{
TR1=0 //T1禁止 PWMUOT=1 //PWM波输出1 }
void Beep(void) //蜂鸣器子程序 {
unsigned char i; for (i=0;i<100;i++) {
delay(100);
BEEP=!
BEEP; }
BEEP=1; delay(100); }
void delay(unsigned int n) {
while(n--) ; }
六 Proteus仿真截图
七 实验结果
此次试验通过仿真系统进行了仿真,按下相应的开关,可实现控制直流电机的加速、减速及转向。
八 实验结论与心得
通过软件的设计及运行,实验达到了预期的结果,实现了电机的正转、反转,加速和减速设计。
设计过程中遇到了很多的问题,但是我们没有半途而废,加深了对知识的理解,一点一点的分析。
总而言之,这次课程设计让我受益匪浅。
在摸索该如何设计电路使之实现所需功能的过程中,培养了我的设计思维,增加了实际操作能力,也让深深地体会到了自己学习知识的不足之处,对于知识的理解程度不够深,自己以为明白的实际上不明白。
在以后的学习过程中,我会重视这些问题,逐渐改变自己的学习习惯,不断的进步!
实验四16×16LED扫描输出实验
一.实验目的
使用户学会利用单片机的IO口进行LED点阵的扫描显示。
二.实验设备及器件
IBMPC机 一台
DP-51PROC单片机综合仿真实验仪 一台
三.实验内容
编写一段程序,用P1口控制C3区4片74HC164进行行列扫描,使C3区的16×16LED点阵显示用户指定的汉字。
四.实验要求
学会使用单片机对LED点阵进行扫描显示。
五.实验步骤
1.使用导线将A2区的P10~P14与C3区的L_DAT_H、L_DAT_L、L_CLK、L_OE、L_STR依次连接。
2.运行光盘中的程序,显示“感谢您使用DP-51PROC单片机综合仿真实验仪!
”,先是向左滚动,后是向上滚动
3.如果用户希望改变显示的汉字,可以使用光盘中附带的字模提取软件(Pctolcd2002)提取用户希望显示汉字的字模,字模提取软件的设置为阴码、逐列式、逆向、十六进制、C51格式自定义,将生成的字模拷贝到程序中所指定的位置插入即可。
六.实验预习要求
阅读本书的2.8.19节内容,理解硬件结构,还可以先把程序编好,然后在KeilC51环境下进行软件仿真。
七.实验参考程序
#include
typedef unsignedchar byte;
typedef unsignedint word;
sbit datah595=P1^0;
sbit datal595=P1^1;
sbit clk595=P1^2;
sbit oe595=P1^3;
sbit str595=P1^4;
word data datah,datal;
byte code displaydata[]=
{
0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
//在以下位置插入字模
0x00,0x04,0x00,0x43,0xFC,0x70,0x14,0x00,0xD4,0x39,0x54,0x41,0x54,0x41,0xD4,0x49,
0x04,0x50,0x3F,0x42,0xC4,0x41,0x45,0x61,0x36,0x0A,0x04,0x34,0x00,0x27,0x00,0x00,/*"感",0*/
0x40,0x00,0x42,0x00,0xCC,0x3F,0x04,0x50,0x00,0x29,0xFC,0x11,0x56,0x4D,0x55,0x83,
0xFC,0x7F,0x50,0x00,0x90,0x41,0x10,0x80,0xFF,0x7F,0x10,0x00,0x10,0x00,0x00,0x00,/*"谢",1*/
0x80,0x00,0x40,0x20,0x30,0x38,0xFC,0x03,0x03,0x38,0x90,0x40,0x68,0x40,0x06,0x49,
0x04,0x52,0xF4,0x41,0x04,0x40,0x24,0x70,0x44,0x00,0x8C,0x09,0x04,0x30,0x00,0x00,/*"您",2*/
0x40,0x00,0x20,0x00,0xF0,0x7F,0x1C,0x00,0x07,0x40,0xF2,0x41,0x94,0x22,0x94,0x14,
0x94,0x0C,0xFF,0x13,0x94,0x10,0x94,0x30,0x94,0x20,0xF4,0x61,0x04,0x20,0x00,0x00,/*"使",3*/
0x00,0x80,0x00,0x40,0x00,0x30,0xFE,0x0F,0x22,0x02,0x22,0x02,0x22,0x02,0x22,0x02,
0xFE,0xFF,0x22,0x02,0x22,0x02,0x22,0x42,0x22,0x82,0xFE,0x7F,0x00,0x00,0x00,0x00,/*"用",4*/
0x08,0x20,0xF8,0x3F,0x08,0x20,0x08,0x20,0x08,0x20,0x10,0x10,0xE0,0x0F,0x00,0x00,/*"D"*/
0x08,0x20,0xF8,0x3F,0x08,0x21,0x08,0x01,0x08,0x01,0x08,0x01,0xF0,0x00,0x00,0x00,/*"P",5*/
0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,
0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"-",6*/
0x00,0x00,0xF8,0x19,0x08,0x21,0x88,0x20,0x88,0x20,0x08,0x11,0x08,0x0E,0x00,0x00,/*"5"*/
0x00,0x00,0x10,0x20,0x10,0x20,0xF8,0x3F,0x00,0x20,0x00,0x20,0x00,0x00,0x00,0x00,/*"1",7
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 原理 应用 实验 报告