单片机课程设计模板.docx
《单片机课程设计模板.docx》由会员分享,可在线阅读,更多相关《单片机课程设计模板.docx(20页珍藏版)》请在冰豆网上搜索。
![单片机课程设计模板.docx](https://file1.bdocx.com/fileroot1/2023-5/18/a3c0b3de-ed8b-4128-be0d-fd98fc2d104e/a3c0b3de-ed8b-4128-be0d-fd98fc2d104e1.gif)
单片机课程设计模板
单片机原理及其应用
课程设计
—XXXXXXXX(题目)设计
学号:
xxxxxxxxxxx
班级:
光信息xxxxxxx
姓名:
xxxxx
指导教师:
XXX
日期:
2013.12
课程设计任务书
班级:
光信息111801
姓名:
XXXX
设计周数:
1学分:
1
指导教师:
xxx
设计题目:
XXX
设计目的及要求:
目的:
1.熟悉手工焊锡的常用工具的使用及其维护与修理。
2.基本掌握手工电烙铁的焊接技术,能够独立的完成简单电子产品的安装与焊接。
熟悉电子产品的安装工艺的生产流程。
3.熟悉印制电路板设计的步骤和方法,熟悉手工制作印制电板的工艺流程,能够根据电路原理图,元器件实物设计并制作印制电路板。
4.熟悉常用电子器件的类别、型号、规格、性能及其使用范围,能查阅有关的电子器件图书。
5.能够正确识别和选用常用的电子器件,并且能够熟练使用普通万用表和数字万用表。
6.掌握和运用单片机的基本内部结构、功能部件、接口技术以及应用技术。
7.各种外围器件和传感器的应用;
8.了解电子产品的焊接、调试与维修方法。
要求:
1.学生都掌握、单片机的内部结构、功能部件,接口技术等技能;
2.根据题目进行调研,确定实施方案,购买元件,并绘制原理图,焊接电路板,调试程序;
3.焊接和写汇编程序及调试,提交课程设计系统(包括硬件和软件);.
4.完成课程设计报告
设计内容和方法:
(根据自己的具体情况编写)用STC89C52单片机和电平转换芯片MAX232组成一个简单的控制电路,用以控制红外发光头发射红外线,利用接收电路将信号放大点亮发光二极管。
方法:
利用EDA软件PROTEL99SE设计电路图,再用电烙铁将实物焊接到实验电路板上,通过电脑的串口写入一段程序到单片机中,实现单片机的控制作用
设计说明书要求:
目录
1绪论1
2总体设计2
3硬件部分3
4软件部分4
5总结5
参考文献6
附录7
附录1原理图8
附录2实物图9
1绪论
第二章总体设计
硬件部分实验主要包括对单片机
一、封面要求,见附件
二、任务书要求,见附件,注意根据自己的题目适当的修改
三、目录要求:
目录居中、三号、黑体,下空两行(小四)
目录正文,全部按小四写,分章写
正文包括绪论(课题的背景、研究的意义、课题研究的内容)、总体设计、硬件部分,软件部分,总结部分
四、结论和参考文献(注意格式)
[1]利大明,磁场的测量[M],北京:
机械工业出版社出版,1993:
2-5.
[2]卢文科等,霍尔元件与电子检测应用电路[M],北京:
中国电力出版社出版,2005:
52-58.
[3]陈棣湘,高速磁悬浮列车气隙磁场的测量[J],电工技术杂志,2003,12:
69-70,75.
ChenDixiang,TheAirGapMagneticFieldsMeasurementofHighSpeedMagneticLevitationVehicle ,ELECTROTECHNICALJOURNAL ,2003,12:
69-70,75.(inChinese)
[4]AnalogDevicesInc,AD22151datasheetRevA,MA,USA,,2003.
[5]TexasInstrumentsIncorporated,ADS7852datasheet,Texas,USA,,2002.
注:
目录部分不可直接复制模板中的,由于时间关系,后面的模板大家可以借鉴,但必须这么多篇幅,按照上课的要求完成即可
第一章绪论
近年来随着计算机在社会领域的渗透,单片机由于具有体积小、功能强、成本低、易扩展、应用面广等优点,其应用正在不断地走向深入,正迅速改变着人们传统的生产和生活方式。
在电子领域尤其是自动化智能控制领域,传统的分立元件或数字逻辑电路构成的控制系统,正以前所未见的速度被单片机智能控制系统所代替。
目前,一个学习与应用单片机的高潮正在工厂、学校及企事业单位大规模地兴起。
虽然单片机诞生至今已有30多年,近年来各种新型的嵌入式微处理器也不断涌现,但单片机在一块芯片上集成了一个计算机系统的基本部件,采用单片机开发的嵌入式系统的体积、功耗、成本不断降低,因此单片机仍然具有极强的生命力和竞争力,占据着微控制器领域的主要市场份额[5]。
学习单片机,不仅要掌握单片机方面的知识,还应根据具体硬件结构,以及针对具体应用对象特点的软件结合,以作完善。
本次课程设计是基于STC89C52RC单片机设计的最小系统,包括LED指示灯、复位电路、RS232电路、红外对射电路、光耦开关电路、蜂鸣器电路几个部分。
经过设计,可以使LED依次点亮、蜂鸣器发声等功能。
第二章总体设计
1.最小系统的系统框图:
图1系统框图
2.在单片机的选用上,一般需要考虑以下几点:
(1)单片机的基本参数例如速度,程序存储器容量,I/O引脚数量
(2)单片机的增强功能,例如看门狗,双指针,双串口,RTC(实时时钟),EEPROM,扩展RAM,CAN接口,I2C接口,SPI接口,USB接口。
(3)Flash和OTP(一次性可编程)相比较,最好是Flash。
(4)封装IP(双列直插),PLCC(PLCC有对应插座)还是贴片。
DIP封装在做实验时可能方便一点。
(5)工作温度范围,工业级还是商业机。
如果设计户外产品,必须选用工业级。
(6)功耗,尽量选用较低功耗的。
(7)工作电压范围。
(8)供货渠道畅通。
能申请样片,小批量购买有现货。
(9)价格低。
(10)有服务商。
(11)烧录器价格低。
(12)仿真器便宜。
(13)保密性能好。
(14)抗干扰性能好。
(15)和其他外设芯片放在一起的综合考虑。
在本次课程设计中,对单片机的要求较低,综合考虑后选用STC89C52单片机。
表一是STC89C52单片机的主要功能:
表一
主要功能特性
兼容MCS51指令系统
8K可反复擦写FlashROM
32个双向I/O口
256x8bit内部RAM
3个16位可编程定时/计数器中断
时钟频率0-24MHz
2个串行中断
可编程UART串行通道
2个外部中断源
共6个中断源
2个读写中断口线
3级加密位
低功耗空闲和掉电模式
软件设置睡眠和唤醒功能
3.STC89C52单片机引脚及其功能:
图2STC89C52单片机
STC89C52单片机:
①主电源引脚(2根)
VCC(Pin40):
电源输入,接+5V电源
GND(Pin20):
接地线
②外接晶振引脚(2根)
XTAL1(Pin19):
片内振荡电路的输入端
XTAL2(Pin20):
片内振荡电路的输出端
③控制引脚(4根)
RST/VPP(Pin9):
复位引脚,引脚上出现2个机器周期的高电平将使单片机复位。
ALE/PROG(Pin30):
地址锁存允许信号
PSEN(Pin29):
外部存储器读选通信号
EA/VPP(Pin31):
程序存储器的内外部选通,接低电平从外部程序存储器读指令,如果接高电平则从内部程序存储器读指令。
④可编程输入/输出引脚(32根)
STC89C52单片机有4组8位的可编程I/O口,分别位P0、P1、P2、P3口,每个口有8位(8根引脚),共32根。
PO口(Pin39~Pin32):
8位双向I/O口线,名称为P0.0~P0.7
P1口(Pin1~Pin8):
8位准双向I/O口线,名称为P1.0~P1.7
P2口(Pin21~Pin28):
8位准双向I/O口线,名称为P2.0~P2.7
P3口(Pin10~Pin17):
8位准双向I/O口线,名称为P3.0~P3.7
第三章硬件部分
一、电源输入电路:
对于整个设计而言,首要问题就是解决系统的供电问题。
要求电源模块稳定可靠。
在本课程设计中,电源供电模块的电源可以通过计算机的USB口供给,也可使用外部稳定的5V电源供电模块供给。
在电源电路中接入了电源指示LED以示是否正常工作。
图3电源输入电路
二、时钟/晶振电路:
每个单片机系统都有晶振,晶振的作用非常大,它结合单片机内部的电路,产生单片机所必需的时钟频率。
单片机的一切指令的执行都是建立在这个基础上的。
晶振提供的时钟频率越高,单片机的执行速度越快。
时钟可以由内部方式产生或外部方式产生。
图4时钟电路
在本次课程设计中采用内部方式时钟电路,电路图如图5所示。
图5时钟/晶振电路
三、复位电路[6]
复位电路的作用:
在上电或复位的过程中,控制CUP的复位状态。
这段时间内让CPU保持复位状态,而不是一上电或刚复位完毕就开始工作。
防止CPU发出错误的指令、执行错误操作,也可以提高电磁兼容性能。
同时,复位操作还对其他一些寄存器有影响。
单片机复位电路原理是在单片机的复位引脚RST上外接电阻和电容,实现上电复位。
当复位电平持续两个机器周期以上时复位有效。
复位电平的持续时间必须大于单片机的两个机器周期。
具体数值可以由RC电路计算出时间常数。
复位操作有上电自动复位相按键手动复位两种方式。
上电自动复位是通过外部复位电路的电容充电来实现的,其电路如图6(a)所示。
这佯,只要电源Vcc的上升时间不超过1ms,就可以实现自动上电复位,即接通电源就成了系统的复位初始化。
按键手动复位有电平方式和脉冲方式两种。
其中,按键电平复位是通过使复位端经电阻与Vcc电源接通而实现的,其电路如图6(b)所示;而按键脉冲复位则是利用RC微分电路产生的正脉冲来实现的,其电路如图6(c)所示。
(a)上电复位
(b)按键电平复位
(c)按键脉冲复位
图6复位电路
在本次课程设计中,采用按键脉冲复位电路。
电路图如图7所示:
图7复位电路
四、串口通信电路[3][5]
串口通信对单片机而言意义重大,不但可以实现将单片机的数据传输到计算机端,而且也能实现计算机对单片机的控制。
由于其所需电缆线少,接线简单,所以在较远距离传输中,得到了广泛的运用。
计算机和单片机之间进行通信时,两者之间不能直接相连,必须经过电平转换,否则就会损坏设备。
在本次课程设计中,选用MAX232芯片。
该芯片与TTL/COMS电平兼容。
片内有两个发送器、两个接收器,且使用+5V单电源供电,使用非常方便。
其主要作用是用来将普通5V的TTL电平转为10V串口通信电平。
1.MAX232芯片内部结构基本可分三个部分:
第一部分:
电荷泵电路。
由1、2、3、4、5、6脚和4只电容构成。
功能是
产生+12v和-12v两个电源,提供给RS-232串口电平的需要。
第二部分:
数据转换通道。
由7、8、9、10、11、12、13、14脚构成两个数据通道。
其中13脚(R1IN)、12脚(R1OUT)、11脚(T1IN)、14脚(T1OUT)为第一数据通道。
8脚(R2IN)、9脚(R2OUT)、10脚(T2IN)、7脚(T2OUT)为第二数据通道。
TTL/CMOS数据从T1IN、T2IN输入转换成RS-232数据从T1OUT、T2OUT送到电脑DP9插头;DP9插头的RS-232数据从R1IN、R2IN输入转换成TTL/CMOS数据后从R1OUT、R2OUT输出。
第三部分:
供电。
15脚DNG、16脚VCC(+5v)。
2.9针串行口的针脚功能如下表二所示:
表二
针脚
功能
针脚
功能
1
载波检测(DCD)
6
数据准备好(DSR)
2
接受数据(RXD)
7
请求发送(RTS)
3
发出数据(TXD)
8
清除发送(CTS)
4
数据终端准备好(DTR)
9
振铃指示(RI)
5
信号地线(SG)
图8是串口通信电路。
图8串口通信电路
五、LED指示灯电路:
图9LED指示灯电路
本次课程设计中,LED指示灯采用共阳极接法。
电路图如图9所示。
以P1.0管脚处的LED为例说明,当P1.0处的电平为低电平时,LED才能发光。
其它管脚处与P1.0管脚的情况相同。
只要使P1.0~P1.7管脚处的电平高低依次变化,就可以实现“流水”的效果。
六、蜂鸣器
在本次课程设计中,选用的是交流蜂鸣器。
电路图如图10所示。
图10蜂鸣器电路
蜂鸣器是一种一体化结构的电子讯响器,采用直流或者交流供电,广泛应用于计算机、打印机、复印机、报警器、电子玩具、汽车电子设备、电话机、定时器等电子产品中作发声器件。
蜂鸣器在电路中用字母“H”或“HA”表示。
七、红外对射电路
图11红外对射电路
本次课程设计中的电路图如下图11所示:
红外发光二极管:
常用的红外发光二极管,其外形和发光二极管LED相似,发出红外光(近红外线约0.93μm)。
管压降约1.4V,工作电流一般小于20mA。
为了适应不同的工作电压,回路中常串有限流电阻。
发射红外线去控制相应的受控装置时,其控制的距离与发射功率成正比。
为了增加红外线的控制距离,红外发光二极管工作于脉冲状态,因为脉动光(调制光)的有效传送距离与脉冲的峰值电流成正比,只需尽量提高峰值Ip,就能增加红外光的发射距离。
提高Ip的方法,是减小脉冲占空比,即压缩脉冲的宽度т,一些彩电红外遥控器,其红外发光管的工作脉冲中空比约为1/4~1/3;一些电气产品红外遥控器,其占空比是1/10。
减小冲占空比还可使小功率红外发光二极管的发射距离大大增加。
常见的红外发光二极管,其功率分为小功率(1mW~10mW)、中功率(20mW~50mW)和大功率(50mW~100mW以上)三大类。
要使红外发光二极管产生调制光,只需在驱动管上加上一定频率的脉冲电压。
红外线发射与接收的方式有两种,其一是直射式,其二是反射式。
直射式指发光管和接收管相对安放在发射与受控物的两端,中间相距一定距离;反射式指发光管和接收管并列一起,平时接收管始终无光照,只在发光管发出的红外光遇到反射物时,接收管收到反射回来的红外线才工作。
双管红外发射电路,可提高发射功率,增加红外发射的作用距离。
红外接收二极管:
红外接收二极管能很好地接收红外发光二极管发射的波长为94Onm的红外光信号,而对于其他波长的光线则不能接收。
因而保证了接收的准确性和灵敏度。
八、光耦开关
光耦合器亦称光电隔离器或光电耦合器,简称光耦,它是以光为媒介来传输电信号的器件。
对输入、输出电信号起隔离作用,光耦合器一般由三部分组成:
光的发射、光的接收及信号放大。
通常把发光器(红外线发光二极管LED)与受光器(光敏半导体管)封装在同一管壳内。
当输入端加电信号时发光器发出光线,受光器接受光线之后就产生光电流,从输出端流出,从而实现了“电—光—电”转换。
从而起到输入、输出、隔离的作用。
以光为媒介把输入端信号耦合到输出端的光电耦合器,由于它具有体积小、寿命长、无触点,抗干扰能力强,输出和输入之间绝缘,单向传输信号等优点,在数字电路上获得广泛的应用。
又由于光耦合器的输入端属于电流型工作的低阻元件,因而具有很强的共模抑制能力。
所以,它在长线传输信息中作为终端隔离元件可以大大提高信噪比。
图12是本次课程设计所采用的电路。
图12光耦开关电路
第四章软件部分
1、流水灯程序设计[1][4]:
#include//包含52头文件
#include//要使用"_nop_();"
#defineuintunsignedint
#defineucharunsignedchar
voiddelay_ms(uchara)//ams延时子函数
{
uinti;
while(a>0)
{
for(i=100;i>0;i--)
{
_nop_();
}
a--;
}
}
voidmain()
{
uchari,m=0xff;
while
(1)
{
for(i=0;i<8;i++)
{
P1=m;
m&=0xfe;
m<<=1;
delay_ms(500);//延时100ms
}//P1口的LED灯由上至下依次点亮
m=0xff;
for(i=0;i<8;i++)
{
P1=m;
m&=0x7f;
m>>=1;
delay_ms(500);
}//P1口的LED灯由下至上依次点亮
m=0xff;
}//不断循环
}
2、光耦模块程序设计[1][4]:
#include
sbitGO=P0^5;
unsigneda;
voidmain()
{
while
(1)
{
a=50000;
GO=0;
while(a--);
a=50000;
GO=1;
while(a--);
}
}
3、蜂鸣器模块程序设计[1][4]:
#include
sbitX=P3^2;
unsigneda;
voidmain()
{
while
(1)
{
a=50000;
X=0;
while(a--);
a=50000;
X=1;
while(a--);
}
}
第五章总结
一、问题
在连接电路的过程中出现了一些错误,总结如下:
(1)蜂鸣器不发声
经检查后,发现没有把三极管的发射极接地。
接地后,蜂鸣器可以发声。
(2)上电后,红外对射的指示灯不亮
经检查后,发光二极管损坏。
更换后指示灯可以正常发光,挡住红外发光二极管和红外接收二极管后,指示灯不亮。
问题解决。
(3)给单片机的P0.5管脚低电平,光耦开关指示灯不亮。
经检查发现光耦的一个管脚没有接地。
接地后,下载入程序,指示灯可以正常发光。
二、收获
通过这次课程设计,使我对单片机有了初步的了解,为以后进一步学习做了准备。
同时,也使我了解到了一些电子元器件的应用。
例如,红外对射可以用在报警防盗、遥控器等。
LED可以用在显示屏、汽车用灯(包含汽车内部的仪表板、音响指示灯、开关的背光源、阅读灯和外部的刹车灯、尾灯、侧灯以及头灯等)、LED广告牌等。
蜂鸣器可以用在计算机、打印机、复印机、报警器、电子玩具、汽车电子设备、电话机、定时器等电子产品中作发声器件。
光耦可以用在触发电路、脉冲放大电路等场合。
同时,经过这些天的实际动手操作,使我认识到看似简单的问题,真正做起来的时候,如果不认真、不按照确定的步骤进行,会产生很多问题。
在动手操作时不能眼高手低,一定要养成良好的做事风格和习惯。
参考文献:
[1]徐爱钧,彭秀华.《KeilCx51V7.0单片机高级语言编程与uVision2应用实践》,电子工业出版社,2004年6月
[2]郭天祥.《十天会单片机》视频教学。
[3]史东海.《单片机数据通信技术从入门到精通》,西安电子科技大学出版社,2002年11月
[4]谭浩强.《C程序设计(第三版)》,清华大学出版社,2005年7月
[5]倪小军,章韵.《单片机原理与接口技术》,清华大学出版社,2009年9月
[6]姜志海,黄玉清.《单片机原理及应用》,电子工业出版社,2005年7月
附录
附录1原理图
附录2实物图