单片机课设 080060301文档格式.docx
- 文档编号:13589513
- 上传时间:2022-10-11
- 格式:DOCX
- 页数:19
- 大小:389.40KB
单片机课设 080060301文档格式.docx
《单片机课设 080060301文档格式.docx》由会员分享,可在线阅读,更多相关《单片机课设 080060301文档格式.docx(19页珍藏版)》请在冰豆网上搜索。
2.3.1.2CD4511译码器……………………………………3
2.3.1.3时脉冲设计…………………………………………5
2.3.1.4显示设计……………………………………………6
2.3.1.5位选设计……………………………………………6
2.3.1.6复位设计……………………………………………6
2.3.1.7报警设计……………………………………………7
2.3.1.8按键设计……………………………………………7
2.3.2软件设计…………………………………………………8
2.3.2.1设计流程图…………………………………………8
2.3.2.2程序设计……………………………………………9
2.4软件硬件结合调试……………………………………………13
3、课程设计心得………………………………………………………14
4、参考文献……………………………………………………………14
5、教师评语…………………………………………………………15
附图………………………………………………………………16
1、课程设计目的
1.进一步熟悉和掌握单片机的结构及工作原理。
2.掌握单片机的接口技术及相关外围芯片的外特性,控制方法。
3.通过课程设计,掌握以单片机核心的电路设计的基本方法和技术,了解表关电路参数的计算方法。
4.通过实际程序设计和调试,逐步掌握模块化程序设计方法和调试技术。
5.通过完成一个包括电路设计和程序开发的完整过程,使学生了解开发一单片机应用系统的全过程,为今后从事相应打下基础。
2、课程设计内容
2.1设计所需器材
电阻:
1K(6个)200(7个)10K(8个)
按键开关:
5个
电容:
22pF(2个)
电解电容:
10μF(1个)
晶振:
6MHZ(1个)
CD4511:
1个
三极管:
9013NPN(5个)
共阴极数码管:
4个
蜂鸣器:
底座:
DIP40(2个)DIP16(1个)
基本电路板(及其相关器件):
万能电路板:
STC90C52AD或AT89S51(1片)
导线若干
2.2设计任务和要求
本次课程设计,我们这一组要求做的是厨房提醒器设计。
设计的主要内容是采用AT89S51作为控制单元,实现提醒器的设计。
(1)设计键盘输入电路;
(2)设计显示电路;
(3)合理分配地址,编写程序;
(4)利用PROTEL设计硬件电路原理图和PCB图;
(5)软硬件联机调试。
主要技术要求:
(1)设置提醒器的“开始”键,“清除”键,“分十位加一”键,“分个位加一”键和“秒十位加一”键。
刚通电时和按下“清除”键时,均可使显示器显示—00:
00。
按下开始键,则按照设定的时间减一定时。
当显示器再次显示为00:
00时则蜂鸣器提醒定时到。
(2)4个数码管分别显示分十位,分个位,秒十位和秒个位。
2.3设计方案
厨房提醒器设计,主要的部分是AT89S51,编写程序,实现软硬结合,实现提醒功能。
采用中断的方式,先清除按钮,然后设置分十位,分个位,秒十位,然后按开始按钮开始倒计时,当时间变为00:
00时蜂鸣器提醒则目的实现。
2.3.1硬件设计
2.3.1.1AT89S51说明
AT89S51的引说明和功能说明如下:
XTAL1:
接外部晶振的一个引脚。
在单片机内部,它是一反相放大器输入端,这个放大器构成了片内振荡器。
它采用外部振荡器时,些引脚应接地。
XTAL2:
在片内接至振荡器的反相放大器输出端和内部时钟发生器输入端。
当采用外部振荡器时,则此引脚接外部振荡信号的输入。
RST:
AT89C51的复位信号输入引脚,高电位工作,当要对芯片又时,只要将此引脚电位提升到高电位,并持续两个机器周期以上的时间,AT89C51便能完成系统复位的各项工作,使得内部特殊功能寄存器的内容均被设成已知状态。
P0口(P0.0~P0.7)是一个8位漏极开路双向输入输出端口,当访问外部数据时,它是地址总线(低8位)和数据总线复用。
外部不扩展而单片应用时,则作一般双向I/O口用。
P0口每一个引脚可以推动8个LSTTL负载。
P2口(P2.0~P2.7)口是具有内部提升电路的双向I/0端口(准双向并行I/O口),当访问外部程序存储器时,它是高8位地址。
每一个引脚可以推动4个LSTL负载。
P1口(P1.0~P1.7)口是具有内部提升电路的双向I/0端口(准双向并行I/O口),其输出可以推动4个LSTTL负载。
仅供用户作为输入输出用的端口。
P3口(P3.0~P3.7)口是具有内部提升电路的双向I/0端口(准双向并行I/O口),它还提供特殊功能,包括串行通信、外部中断控制、计时计数控制及外部随机存储器内容的读取或写入控制等功能。
2.3.1.2—CD4511译码器
CD4511是一个用于驱动共阴极LED(数码管)显示器的BCD码—七段码译码器,特点如下:
具有BCD转换、消隐和锁存控制、七段译码及驱动功能的CMOS电路能提供较大的拉电流,可直接驱动LED显示器。
BI:
4脚是消隐输入控制端,当BI=0时,不管其它输入端状态如何,七段数码管均处于熄灭(消隐)状态,不显示数字。
LT:
3脚是测试输入端,当BI=1,LT=0时,译码输出全为1,不管输入DCBA状态如七段均发亮,显示“8”。
它主要用来检测数码管是否损坏。
LE:
锁定控制端,当LE=0时,允许译码输出。
LE=1时译码器是锁定保持状态,译码输出被保持在LE=0时的数值。
DA、DB、DC、DD、为8421BCD码输入端。
a、b、c、d、e、f、g:
为译码输出端,输出为高电平1有效。
CD4511的内部有上拉电阻,在输入端与数码管笔段端接上限流电阻就可工作。
图2.3-2CD4511连接方式
功能表:
输入
输出
LE
BI
LT
INA
INB
INC
IND
SEGA
SEGB
SEGC
SEGD
SEGE
SEGF
SEGG
X
L
H
表2.3CD4511真值表
2.3.1.3时脉冲设计
图2.3-3
采用6MHZ的晶振,产生的机器周期为2μS,接在芯片的18,19引脚上。
在复位端口加低电平。
2.3.1.4显示设计
图2.3-4
需要显示时间选用共阴极的数码管是通过CD4511译码器驱动,接有330欧姆的保护电阻而成的
2.3.1.5位选设计
图2.3-5
四个数码管在显示时需要选通,采用AT89S51的P0口作为位选信号的输出端,低电平有效。
由于P0口有8个输出端,当端口为低电平使对应的数码管选通。
共阴极的数码管是高电平有效,所以采用NPN的三极管。
2.3.1.6复位设计
复位键直接加在单片机的复位端,当按键S被按下时,系统复位。
图2.3-6
2.3.1.7报警设计
图2.3-7
蜂鸣器接在P2.0口上,当触发时P2.0产生高电平使其导通,蜂鸣器响,报警。
2.3.1.8按键设计
图2.3-8
按键接在P2口上,P2.1~P2.5,按键按下后相应的按键由高电平变为低电平,产生检测信号。
2.3.2软件设计
2.3.2.1设计流程图
2.3.2.2程序设计
#include<
reg52.h>
#defineuintunsignedint
#defineucharunsignedchar
sbitmiaoshi=P2^3;
sbitfenge=P2^4;
sbitfenshi=P2^5;
sbitkaishi=P2^1;
sbitqingchu=P2^2;
sbitbaojing=P2^0;
sbitfenshiwei=P0^0;
sbitfengewei=P0^1;
sbitmiaoshiwei=P0^2;
sbitmiaogewei=P0^3;
ucharcodetable[]=
{0x10,0x11,0x12,0x13,0x14,
0x15,0x16,0x17,0x18,0x19};
uinttemp=0;
ucharaa,num0,num1=0,num2=0,num3=0;
//num0秒个位num1秒十位num2分个位num3分十位
voiddelay(uintz);
voiddisplay(ucharnum0,ucharnum1,ucharnum2,ucharnum3);
voidshezhi();
voidinit();
/*主程序*/
voidmain()
{uintx,y,ss;
init();
while
(1)
{
shezhi();
if(kaishi==0)//开始按键判断
{
delay(20);
if(kaishi==0)
TR0=!
TR0;
}
if(aa==10)
aa=0;
temp--;
if(temp==0)
ss=1;
{while(ss)//数码管闪烁报警
{
for(x=250;
x>
0;
x--)
{for(y=110;
y>
y--)
P1=0xf0;
P0=0xff;
ET0=0;
TR0=0;
baojing=1;
if(qingchu==0)
ss=0;
}
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机课设 080060301 单片机