当前位置:文档之家› (完整word版)单片机定时闹钟课程设计

(完整word版)单片机定时闹钟课程设计

目录

一、设计目的…………………………………………………………

二、设计要求…………………………………………………………

三、设计的总体结构…………………………………………………

3.1电路的总体原理框图……………………………………………

3.2 工作原理………………………………………………………

3.3 元器件名称……………………………………………………

四、各部分电路设计…………………………………………………

4.1 主电路……………………………………………………………………

4.2 显示电路…………………………………………………………………

4.3 内部时钟方式的电路……………………………………………………

4.4 按键及蜂鸣器电路………………………………………………………

五、整体电路图………………………………………………………

六、设计总结…………………………………………………………

6.1 设计过程中遇到的问题及解决方法………………………………………

6.2 设计体会……………………………………………………………………

6.3 对设计的建议………………………………………………………………

七、C语言程序………………………………………………………

八、附图…………………………………………………………………

一、设计目的

此次设计的目的是培养同学们系统地运用已学的理论知识解决实际问题的能力和查阅资料的能力,以及一定的自学能力和独立分析问题、解决问题的能力,能通过独立思考、查阅工具书、参考文献,寻找解决方案;通过完成所选题目的分析与设计,达到技术性能要求。

二、设计要求

1、能显示时时-分分-秒秒。

2、能够设定定时时间、修改定时时间。

3、定时时间到能发出报警声或者启动继电器,从而控制电器的启停。

三、设计的总体结构

3.1 电路的总体原理框图

图3.1 电路原理框图

3.2 工作原理

当给电路足够的电源时,电路开始正常初始化,此时显示“00 :00 :00”,若不进行时间调整和定时,时钟将正常计时下去。若按下按键1,由于按下次

数的不同,出现光标闪烁的位置不同,即可进行时间的时分秒的调整和定时时间的时分秒的调整,按键2和3分别是进行时间的加和减,若确定好时间,时钟将正常运行,到达定时时间后蜂鸣器将会响一段时间后停止。如果按复位键,时钟将重新初始化,需要重新定制时间。如果不做任何改动,到下一个定时的时间,时钟将会继续鸣叫。

3.3 元器件名称

3.3.1 芯片AT89C52

AT89C52 是ATMEL公司生产的低电压,高性能CMOS单片机.AT89C52 提供以下标准功能:8字节FLASH闪速存储器,256字竹内部RAM , 32个I/O口线,3个16 位定时/计数器,一个6向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,AT89c52可降至OHz 的静态逻辑操作,并支持两种软件可选的节电上作模式。空闲方式停止CPU 的工作,但允许RAM,定时/计数器.串行通信口及中断系统继续工作。掉电方式保存RAM 中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位.

3.3.2 LCD显示屏

1602液晶显示的原理是利用液晶的物理特性,通过电压对其显示区域进行控制,有电就有显示,这样即可以显示出图形。液晶显示器具有厚度薄、适用于大规模集成电路直接驱动、易于实现全彩色显示的特点。晶模块内部的控制器共有11条控制指令,如表所示:

表3-1:控制命令表

指令3:光标和显示模式设置 I/D:光标移动方向,高电平右移,低电平左移 S:屏幕上所有文字是否左移或者右移。高电平表示有效,低电平则无效。

指令4:显示开关控制。 D:控制整体显示的开与关,高电平表示开显示,低电平表示关显示 C:控制光标的开与关,高电平表示有光标,低电平表示

无光标 B:控制光标是否闪烁,高电平闪烁,低电平不闪烁。

指令5:光标或显示移位 S/C:高电平时移动显示的文字,低电平时移动光标。

指令6:功能设置命令DL:高电平时为4位总线,低电平时为8位总线N:低电平时为单行显示F:低电平时显示5×7的点阵字符。

指令9:读忙信号和光标地址 BF:为忙标志位,高电平表示忙,此时模块不能

接收命令或者数据,如果为低电平表示不忙。

3.3.3蜂鸣器

有源蜂鸣器是一种一体化结构的电子讯响器,是内部自带振荡电路,只需电平驱动就可以发生的蜂鸣器,而与其对应的无源蜂鸣器内部则无振荡电路。

四、各部分电路设计

4.1、主电路

主电路主要就是芯片的运行,加载程序后,在外部时钟的作用下,将按照程序运行,从而可以实现设计的要求,进行时钟时间和定时时间的调整,并且能够在到达定时时间后控制蜂鸣器发出声响。

图4.1 主电路

4.2、显示电路

显示电路即可以让我们看到时间的调整和定时时间的调整,显示调整后的时间。

图4.2显示电路

4.3、内部时钟方式的电路

单片机内部有一个用于构成振荡器的高增益反向放大器,它的输入端为芯片引脚XTAL1,输出端为引脚XTAL2。这两个引脚跨接石英晶体和微调电容,构成一个稳定的自激振荡器。时钟频率可以影响单片机的速度。单片机的各功能部件的运行都以时钟控制信号为基准

图4.3 内部时钟方式的电路

4.4、按键及蜂鸣器电路

按键可以对时间进行调整,蜂鸣器可以在到达定时的时间时提醒我们。

图4.5 按键及蜂鸣器电路

五、整体电路图

见附图。

六、设计总结

6.1、设计过程中遇到的问题及解决方法

在设计的过程中遇到问题是不可避免的,我遇到了很多问题,如下所示;

1.做实物时无法驱动数码管显示,后来了解到可以加锁存器,如74LS253,74LS573等等,还可以加三极管用来加大电流。当然如果换成液晶显示屏的话就不需要考虑驱动不了的问题了。

2.烧程序时没发烧进去,需要改变最高和最低波特率,才能按照步骤把程序烧进去。

3.仿真时没问题的电路,在做好实物时发现无法运行。原因可能是程序出现问题,或者在连实物时线路连接错误等等都有可能。这是很难的一部分,需要查找出原因。在做实物的过程中我进行的很多检查,有很多连接错误,最终又重新焊接的。

4.复位电路在实物中可以运行,但是在仿真中不能正常运行。目前还未找到原因。

6.2、设计体会

这次设计中遇到了很多问题,例如刚开始我在在仿真时程序出现了每次按

按钮时总是显示测量时需要关闭仿真的字样,试了很多方法都没有找到原因,最后才知道是因为按钮太近的缘故。很多类似的经历让我明白:

1. 在设计程序之前,务必要对所学单片机课程的内容有一个系统的了解,知道单片机片内片外的内容及其功能。

2. 设计程序关键要有一个清晰的思路和一个完整的软件流程图。模块化的设计思想在程序设计中的作用是重大的,它可以为你提供一个比较清晰的思路,并且很容易找到头绪,不至于在编写一个程序时感觉到无从下手。

3. 在设计程序时,不能妄想一次就将整个程序设计好,"反复修改,不断改进"是程序设计的必经之路。程序刚开始编好时,一般情况下会存在很多错误,要不断地修改,不断的改进才能达到预期的目的,编写程序的时间并不是很长,主要是花很多时间去修改程序。

4. 要养成注释程序的好习惯,让人一看就能明白你的思路,这样也为资料的保存和交流提供了方便。刚开始我在编写程序时,很不习惯于写注释,感觉很麻烦,而且没用,但是在修改的过程中我就遇到了较大的麻烦,以至于不得不重新的作了注释,以增加程序的易读性,从而使修改过程变得容易一些。

总之,通过这次课程设计不仅使我巩固了本课程所学的基本知识,还使我具有了撰写科研报告的初步训练能力,我相信这些能力在我以后的工作或者是再学习中一定会起到不小的作用,一切的辛苦和艰难都是值得的。

6.3、对设计的建议

在设计前应该对所要实现的功能有一定的了解,定下有大概的流程图,把设计模块化,写程序时也应该一个模块一个模块的写,这样方便理解,也方便以后的检查。在仿真和实物的过程中要了解所使用芯片的功能及引脚的排列方式,这样焊接时比较方便。

七、C语言程序

#include

#define uchar unsigned char

#define uint unsigned int

uchar code table1[]="00:00:00";

sbit lcden=P2^6 ;//位定义

sbit lcdrw=P2^5;

sbit lcdrs=P2^4;

sbit s1=P3^0;

sbit s2=P3^1;

sbit s3=P3^2;

sbit beep=P3^7;//定义蜂鸣器

uchar num,count,s1num;//显示的位数;响应中断数;按键次数;

uint i;

char shi,fen,miao,shi1,fen1,miao1;

void delay(uint z)//延时程序

{

uint x,y;

for(x=z;x>0;x--)

for(y=110;y>0;y--);

}

void write_com(uchar com)//控制指令

{

lcdrs=0; //低电平时选择指令寄存器

lcdrw=0;// 低电平时进行写操作

delay(5);

lcden=1; //E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令

P0=com;

delay(5);

lcden=0;

}

void write_data(uchar date)//数据指令

{

lcdrs=1;

lcden=1; //均为高时是读出数据的内容

delay(5);

P0=date;

delay(5);

lcden=0;

}

void init()//初始化

{

lcdrw=0;

lcden=0;

delay(15);

write_com(0x38);//设置为4位总线,单行显示

delay(5);

write_com(0x38);

delay(5);

write_com(0x38);

write_com(0x38);//重复多次以确定可以正确设置

write_com(0x08);//无光标正常显示

write_com(0x01);//清显示

write_com(0x06);//光标和显示模式设置d1 I/D:光标移动方向,高电平右移d0 S:屏幕上所有文字是否左移或者右移。低电平表示光标闪烁write_com(0x0c);// 显示开关控制。d2 D:控制整体显示的开与关,高电平表示开显示d1 C:控制光标的开与关,低电平表示无光标B:控制光标是否闪烁,低电平不闪烁

write_com(0x80+1);d7为高时,显示数据存储地址

TMOD=0x11;工作方式3

TH0=(65536-50000)/256;//定时时间为50ms

TL0=(65536-50000)%256;

EA=1;//开总中断

ET0=1;//打开定时器

TR0=1;//启动定时器

write_com(0x80+4);//秒的设定

for(num=0;num<8;num++)

{

write_data(table1[num]);

delay(20);

}

write_com(0x80+0x40+4);

for(num=0;num<8;num++)

{

write_data(table1[num]);

delay(20);

}

}

void write_sfm(uchar add,uchar date)//调整时间

{

uchar shi,ge;

shi=date/10;

ge=date%10;

write_com(0x80+0x40+add);//控制指令,0x40:字符发生器RAM地址设置进行加

write_data(0x30+shi);//数据指令,功能设置命令d4 DL:高电平时为4位总线d3 N:低电平时单行显示d2 F: 低电平时显示5x7的点阵字符,高电平时显示5x10的点阵字符。

write_data(0x30+ge);

}

void write_shedingsfm(uchar add1,uchar date1)//设定定时时间

{

uchar shi1,ge1;

shi1=date1/10;

ge1=date1%10;

write_com(0x80+add1);//控制指令

write_data(0x30+shi1);

write_data(0x30+ge1);

}

void keyscan()

{

if(s1==0)

{

delay(5);

if(s1==0)

{

s1num++;

while(!s1);//s1按下

}

}

if(s1num==1)//按下次数

{

TR0=0;//停止定时器工作

write_com(0x80+0x40+11);//调整时间设置,控制秒设定

write_com(0x0f); //d3 显示开关控制。d2 D:控制整体显示的开与关,高电平表示开显示d1 C:控制光标的开与关,高电平表示有光标d0 B:控制光标是否闪烁,高电平闪烁

}

if(s1num==2)

{

write_com(0x80+0x40+8);//控制分钟设定

write_com(0x0f);//控制光标闪烁

}

if(s1num==3)

{

write_com(0x80+0x40+5);//控制时设定

write_com(0x0f);

}

if(s1num==4)

{TR0=1;//启动定时器,定时时间的设定

write_com(0x80+11);//控制秒的设定

write_com(0x0f);//光标显示

}

if(s1num==5)

{

write_com(0x80+8);//定时分钟的设定

write_com(0x0f);

}

if(s1num==6)

{

write_com(0x80+5);//定时时的显示

write_com(0x0f);

}

if(s1num==7)

{

s1num=0; // 按键次数清零

write_com(0x0c);//显示此时为无光标状态}

if(s1num!=0)//有按键时

{

if(s2==0)

{

delay(5);

if(s2==0)

{

while (!s2);

if(s1num==1)

{

miao++;

if(miao==60)

{

miao=0;

}

write_sfm(10,miao)//第10位进行秒的设定

write_com(0x80+0x40+11);//控制秒的设定

}

if(s1num==2)

{

fen++;

if(fen==60)

{

fen=0;

}

write_sfm(7,fen);

write_com(0x80+0x40+8);

}

if(s1num==3)

{

shi++;

if(shi==24)

{

shi=0;

}

write_sfm(4,shi);

write_com(0x80+0x40+5);

}

if(s1num==4)

{

TR0=1;//定时器启动

miao1++;

if(miao1==60)

{

miao1=0;

}

write_shedingsfm(10,miao1);

write_com(0x80+11);

}

if(s1num==5)

{

fen1++;

if(fen1==60)

{

fen1=0;

}

write_shedingsfm(7,fen1);

write_com(0x80+8);

}

if(s1num==6)

{

shi1++;

if(shi1==24)

{

shi1=0;

}

write_shedingsfm(4,shi1);

write_com(0x80+5);

}

}

}

}

if(s3==0)

{

delay(5);

if(s3==0)

{

while (!s3);

if(s1num==1)

{

miao--;

if(miao==-1)

{

miao=59;

}

write_sfm(10,miao);

write_com(0x80+0x40+11);

}

if(s1num==2)

{

fen--;

if(fen==-1)

{

fen=59;

}

write_sfm(7,fen);

write_com(0x80+0x40+8);

}

if(s1num==3)

{

shi--;

if(shi==-1)

{

shi=23;

}

write_sfm(4,shi);

write_com(0x80+0x40+5); }

if(s1num==4)

{

TR0=1;

miao1--;

if(miao1==-1)

{

miao1=59;

}

write_shedingsfm(10,miao1);

write_com(0x80+11);

}

if(s1num==5)

{

fen1--;

if(fen1==-1)

{

fen1=59;

}

write_shedingsfm(7,fen1);

write_com(0x80+8);

}

if(s1num==6)

{

shi1--;

if(shi1==-1)

{

shi1=23;

}

write_shedingsfm(4,shi1);

write_com(0x80+5);

}

}

}

}

void main()//主函数

{

init();//初始化函数

while(1)

{

keyscan();//键盘扫描

if(count==20)//响应中断20次,时间1s

{

count=0;//清零

miao++;//秒加1

if(miao==60)//60秒时分加1

{

miao=0;

fen++;

if(fen==60)//60分时时加1

{

fen=0;

shi++;

if(shi==24)//24时时时全为0,从00:00:00开始计时

{

shi=0;

}

write_sfm(4,shi);//修改时

}

write_sfm(7,fen);//修改分

}

write_sfm(10,miao);//修改秒

if((shi==shi1)&&(fen==fen1)&&(miao==miao1))//蜂鸣器电路的运行{

for(i=0;i<10;i++)

{

beep=0;//蜂鸣器响

delay(50);

beep=1;

delay(50);

}

}

}

}

}

void timer0() interrupt 1//中断函数

{

TH0=(65536-50000)/256;

单片机课程设计 简易计算器的设计

目录 摘要 (1) 绪论 (1) 1.设计要求及功能分析 (1) 1.1 设计要求 (1) 1.2 基本功能 (2) 2.设计方案 (2) 2.1 硬件部分设计方案 (2) 2.1.1 单片机部分 (2) 2.1.2 按键部分 (2) 2.1.3 显示部分 (2) 2.2 软件部分设计方案 (2) 3.系统的硬件总体设计 (4) 3.1 系统的总体硬件设计 (4) 3.2 键盘连接电路 (4) 3.3 显示屏连接电路 (5) 3.4 单片机芯片AT89C51 (6) 3.5 外接电路 (7) 4.系统的软件总体设计 (8) 4.1 键盘识别程序设计 (8) 4.2 显示程序 (11) 4.3 运算程序 (11) 5.元器件清单及程序清单 (12) 5.1 元器件清单 (12) 5.2 程序清单 (12) 6.软件仿真 (18) 6.1 仿真验证 (18) 6.2 性能分析 (20) 6.3 出现故障及其原因 (20) 6.4 解决方法 (20) 结论 (20) 参考文献 (21) 致谢 (21) 附录PCB图 (22)

简易计算器的设计 学生:李飞马鹏超舒宏超 指导老师:王孝俭 摘要:单片机是指一个集成在一块芯片上的完整计算机系统。尽管他的大部分功能集成在一块小芯片上,但是它具有一个完整计算机所需要的大部分部件:CPU、内存、内部和外部总线系统,目前大部分还会具有外存。同时集成诸如通讯接口、定时器,实时时钟等外围设备。而现在最强大的单片机系统甚至可以将声音、图像、网络、复杂的输入输出系统集成在一块芯片上。单片机内部也用和电脑功能类似的模块,比如CPU,内存,并行总线,还有和硬盘作用相同的存储器件,不同的是它的这些部件性能都相对我们的家用电脑弱很多,不过价钱也是低的,一般不超过10元即可,用它来做一些控制电器一类不是很复杂的工作足矣了。我们现在用的全自动滚筒洗衣机、排烟罩、VCD等等的家电里面都可以看到它的身影!它主要是作为控制部分的核心部件。它是一种在线式实时控制计算机,在线式就是现场控制,需要的是有较强的抗干扰能力,较低的成本,这也是和离线式计算机的(比如家用PC)的主要区别。单片机比专用处理器最适合应用于嵌入式系统,因此它得到了最多的应用。事实上单片机是世界上数量最多的计算机。现代人类生活中所用的几乎每件电子和机械产品中都会集成有单片机。手机、电话、计算器、家用电器、电子玩具、掌上电脑以及鼠标等电脑配件中都配有1-2部单片机。而个人电脑中也会有为数不少的单片机在工作。汽车上一般配备40多部单片机,复杂的工业控制系统上甚至可能有数百台单片机在同时工作!单片机的数量不仅远超过PC机和其他计算的综合,甚至比人类的数量还要多。 关键词:单片机、计算器、控制电路、仿真。 绪论 设计要求掌握数码管移位动态扫描显示的编程方法,掌握矩阵扫描的编程方法,掌握数据在内部运算的编程方法。设计任务实现最大8位正整数加、减、乘、除,具备清零、等于功能,16个按键功能依次为:数字0、数字1、数字2、数字3、数字4、数字5、数字6、数字7、数字8、数字9、清零、等于、加、减、乘、除。 1.设计要求及功能分析 1.1设计要求: 本次单片微型计算机与接口技术课程设计做的是利用C51单片机为主体的计算器,实现了简单的加、减、乘、除功能。采取的是键盘输入和液晶显示屏的输出结果显示。主要硬件构成部分由四个,一个AT89C51单片机芯片,一个液晶显示屏,一个4*4键盘和一个排阻(10K)做P0口的上拉电阻,可以实现16位的数值操作计算。 1.2基本功能: 首先,计算器可现实8位数字,开机运行时,只有数码管最低位显示为“0”,其他位全部不显示;

基于51单片机实现的简单闹钟设计

【摘要】众所周知闹钟对我们日常生活来讲是一个很重要的工具,因而我利用单片机AT89C52制作一个简单的倒计时定时闹钟。本设计利用单片机的内部中断资源和按键的基本使用方法构思而成。利用按键设定需要定时的时间长短,利用中断设置20次中断定义一秒,然后利用程序设计时间倒数。并使用4个8段数码管显示分和秒,并且定时结束后使用电铃警示。硬件系统利用proteus仿真,在仿真中就能观察到系统的实际运行情况。 【关键字】 单片机AT89C51 倒计时定时中断 protues仿真 一、设计项目简介 基于51单片机进行简单闹钟设计。四位数码管从左往右分别代表十分位,分位,十秒位,秒位。按动对应按键能增加各个位的数值,按动开始计时按键能开始倒计时。 二、硬件设计 1.总体设计思路 控制芯片使用比较熟悉的AT89C52单片机芯片,数码管使用四位相连的8段共阴数码管,并且使用74HC573锁存器控制数码管的显示。在定时过程使用s1控制十分位,s2控制分位,s3控制十秒位,s4控

制秒位,s5开始倒计时。 基本思路设计如下: 2. AT89C52芯片介绍 80C52是INTEL 公司MCS-51系列单 片机中基本的产品,它采用INTEL 公司可靠的CHMOS 工艺技术制造的 高性能8 位单片机,属于标准的MCS-51的HCMOS 产品。它结合了HMOS 的高速和高密度技术及CHMOS 的低功耗特征,它基于标准的MCS-51单片机体系结构和指令系统,属于80C51增强型单片机版本,集成了时钟输出和向上或向下计数器等更多的功能,适合于类似马达控制等应用场合。 80C52内置8位中央处理单元、256字节内部数据存储器RAM 、8k 片内程序存储器(ROM )32个双向输入/输出(I/O)口、3个16位定时/计数器和5个两级中断结构,一个全双工串行通信口,片内时钟振荡

单片机课程设计 电子定时闹钟

学号:************ HEBEI UNITED UNIVERSITY 单片机课程设计说明书 设计题目:电子定时闹钟 学生姓名: 专业班级: 学院: 指导教师: **年**月**日

成绩评定表

摘要 本设计是采用单片机技术的电子定时闹钟,近年来集成电路技术的出现和应用,是推动了人类文明的突飞猛进。基于集成电路技术的单片机产品更是方便了人们的生活和工作,目前以单片机技术的应用为核心的产品种类非常丰富。应用我们所学过的知识和查阅相关资料,我制作了这个单片机技术为基础的LCD可校时可定时电子闹钟,这是一个简单的实用的单片机电子设计产品。 本“LCD定时电子闹钟’设计采用AT89C51为主控芯片。在充分理解了设计的要求后,准确的定位了设计的目的,然后构思了总体的方案。在选择和合适的硬件完成了电路的设计后,又进行了软件的设计和调试。本系统的硬件组成以及工作原理都有详细的图文说明,所应用的软件技术和各个模块设计的功能及工作过程也有详细的介绍,最后的部分则详细描述了了软件仿真及调试过程。

Abstract This design is the use of single-chip computer technology electronic timing alarm clock, in recent years, integrated circuit technology and applications, is to promote the human civilization make a spurt of progress. Based on the integrated circuit single chip computer product is more convenience to people's life and work, the single chip technology as the core of the products is very rich. Apply what we have learned the knowledge and access to relevant information, I produced the single chip technology based on LCD timing timing electronic alarm clock, which is a simple and practical single chip electronic product design. The" LCD electronic timing alarm clock ' design uses AT89C51as the main control chip. In the full understanding of the design requirements, accurate positioning of the design objective, then the overall scheme design. In the choice and appropriate hardware circuit design, and software design and debugging. The system hardware composition and working principle of a detailed graphic shows, by the application of the software technology and each module function and the working process is also introduced in detail, the last part is a detailed description of the software simulation and debugging process.

单片机课程设计完整版样本

课程设计( 论文) 课程名称单片机 题目名称简易密码锁的设计学院高等技术学院 专业班级高1 1 0 9 学号3869 学生姓名刘欢 指导教师胡立强 11月28 日 目录

一,任务目的 (3) 二,任务要求 (3) 三,电路与元器件 (4) 四,程序设计 (5) 五,程序运行测试 (6) 六,任务小结 (7) 七,心得体会 (8) 八,参考文献 (9) 1.任务目的

经过对具有四个按键输入和一个数码管显示的简易密码锁的设计与制作, 让读者理解C语言中数组的基本概念和应用技术, 并初步了解单片机与键盘和LED数码管的接口电路设计及编程控制方法。 2.任务要求 在一些智能门控管理系统, 需要输入正确的密码才能开锁。基于单片机控制的密码锁硬件电路包括三部分: 按键、数码显示和电控开锁驱动电路, 三者的对应关系如图表3.16所示。 表3.16 简易密码锁状态 简易密码锁的基本功能如下: 4个按键, 分别代表数字0,1,2,3: 密码在程序中事先设定, 为0-3之间的一个数字; 上电复位后, 密码锁初始状态为关闭, 密码管显示符号”—”; 当按下数字键后, 若与事先设定的密码相同, 则数码管显示字符”P”, 打开锁, 3秒后恢复锁定状态, 等待下一次密码的输入, 否则显示字符”E”持续3秒, 保持锁定状态并等待下次输入。 3.电路与元器件 根据任务要求, 用一位LED数码管作为显示器件, 显示密码锁的状态信息, 数码管采用静态连接方式; 4个按键连接到P0口的低四位

P0.0-P0.3引脚, 设P0.0连接数字”0”按键、P0.1连接数字”1”按键, 依次类推; 锁的开、关电路用P3.0控制的一个发光二极管代替, 发光二极管点亮表示锁打开, 熄灭表示锁定。根据以上分析, 采用如图3.21所示的连接电路。 图3.21 简易密码锁电路 简易密码锁电路所需元器件清单如表3.17所示。 元器件名称参数数量元器件名 称 参数数量 插座DIP40 1 电阻103 1 单片机AT89SC51 1 电解电容22UF 1

单片机课程设计计算器

课程设计说明书 课程设计名称:单片机课程设计 课程设计题目:四位数加法计算器的设计学院名称:电气信息学院 专业班级: 学生学号:

学生姓名: 学生成绩: 指导教师: 课程设计时间:至

格式说明(打印版格式,手写版不做要求) (1)任务书三项的内容用小四号宋体,倍行距。 (2)目录(黑体,四号,居中,中间空四格),内容自动生成,宋体小四号。 (3)章的标题用四号黑体加粗(居中排)。 (4)章以下的标题用小四号宋体加粗(顶格排)。 (5)正文用小四号宋体,倍行距;段落两端对齐,每个段落首行缩进两个字。 (6)图和表中文字用五号宋体,图名和表名分别置于图的下方和表的上方,用五号宋体(居中排)。(7)页眉中的文字采用五号宋体,居中排。页眉统一为:武汉工程大学本科课程设计。 (8)页码:封面、扉页不占页码;目录采用希腊字母Ⅰ、Ⅱ、Ⅲ…排列,正文采用阿拉伯数字1、2、3…排列;页码位于页脚,居中位置。 (9)标题编号应统一,如:第一章,1,,……;论文中的表、图和公式按章编号,如:表、表……;图、图……;公式()、公式()。

课程设计任务书 一、课程设计的任务和基本要求 (一)设计任务(从“单片机课程设计题目”汇总文档中任选1题,根 据所选课题的具体设计要求来填写此栏) 1. 系统通过4x4的矩阵键盘输入数字及运算符。 2. 可以进行4位十进制数以内的加法运算,如果计算结果超过4位十进制数,则屏幕显示E。 3. 可以进行加法以外的计算(乘、除、减)。 4. 创新部分:使用LCD1602液晶显示屏进行显示,有开机欢迎界面,计算数据与结果分两行显示,支持小数运算。 (二)基本要求 1.有硬件结构图、电路图及文字说明; 2.有程序设计的分析、思路说明; 3.有程序流程框图、程序代码及注释说明; 4.完成系统调试(硬件系统可以借助实验装置实现,也可在Proteus 软件中仿真模拟); 5.有程序运行结果的截屏图片。

基于ATC单片机定时闹钟设计

塔里木大学信息工程学院 《单片机原理与外围电路》课程论文 题目:单片机定时闹钟设计 姓名:海热古丽·依马木 学号: 15 班级:计算机15-1班

摘要:本设计是单片机定时闹钟系统,不仅能实现系统要求的功能,而且还有附加功能,即还能设定和修改当前所显示的时间。?本次设计的定时闹钟在硬件方面就采用了AT89C51芯片,用6位LED数码管来进行显示。LED用P0口进行驱动,采用的是动态扫描显示,能够比较准确显示时时—分分—秒秒。通过S1、S2、S3、和S4四个功能按键可以实现对时间的修改和定时,定时时间到喇叭可以发出报警声。在软件方面采用汇编语言编程。整个定时闹钟系统能完成时间的显示,调时和定时闹钟、复位等功能,并经过系统仿真后得到了正确的结果。 关键词:单片机、AT89C51、定时闹钟、仿真? Abstract:T his design is a single-chip timing alarm system, can not only realize the function of system requirements, and there are additional functions, which can set up and modify the display time. Timing alarm clock this design adopts the AT89C51 chip on the hardware side, with 6 LED digital tube to display. LED P0 export driven, by using dynamic scanning display, can accurately display always - sub - seconds seconds. Through the S1, S2, S3, and S4 four function keys can be achieved on the time changes and timing, timing to the horn can send out alarm sound. Using assembly language programming in the software. The timing clock system has functions of time display, timing and timing alarm clock, reset and other functions, and the system simulation to obtain correct results. Keywords: single chip microcomputer, AT89C51, alarm clock,

单片机课程设计电子时钟实验可定时调闹钟用LCD显示

姓名学号 时间 2013.1.9 实验题目电子数字钟 一、实验目的与要求 1.电子数字钟必须具有显示年、月、日和显示时、分、秒的功能。(用LCD显示)。 2.具有按键时间校正功能。 3.具备设定闹钟和定时闹钟功能。 二、实验环境(硬件环境、软件环境) 1.硬件环境:单片机开发板一个,计算机一台,单片机主机电源线及与计算机的连接线各一条。 2.软件环境:软件Keil C51和软件Flash Magic。 三、实验电路(P2口输入、P1口输出实验原理图) 本次实验主要使用了开发板的4个板块,分别是单片机STC89C52(如图2所示)、矩阵键盘(如图2所示)、1206LCD显示器和蜂鸣器(如图3所示)。其中单片机芯片通过P0口把总线和矩阵键盘连接;通过P2.2和蜂鸣器间接相连,因为蜂鸣器所在的电路已经连芯片ULN2003,因此用一根杜邦线把P2.2和芯片ULN2003的第一个输入口IN1连起来。而键盘 显示这一块,由于内部已经把键盘显示的电路和单片机芯片连接起来了,

所以不需要借助杜邦线了。图1为实物连线图。 图1 实物连线图 图2 单片机机座和矩阵键盘

图3 蜂鸣器和1602液晶显示器 四、程序流程图 主要算法:主函数中先定时中断初始化,利用定时器中断实现走时,调用LCD显示程序和按键处理子函数,再调用显示时间函数显示初始时间值。同时,在主函数中判断当前的小时和分钟值是否等于闹钟设定的时间,若等于则让蜂鸣器响。主函数算法的框图如图4所示。 按键处理函数算法:通过键盘扫描函数得到确定哪个键盘按下,得到键盘值,如果键0按下则暂停时钟走时;键1按下则在当前的光标所在的时间单元加1;键2按下则开闹钟;键3按下则实现当前的时间单元左移一位的功能;键4按下则在当前的光标所在的时间单元减1。 时间的年月日算法:通过定时器实现时钟的走时,秒满60,分钟加1;分满60,小时加1;小时满24,日加1;至于每个月的天数根据闰年和非闰年的表格确定当月天数。

单片机课程设计报告电子密码锁完整版

单片机课程设计报告电 子密码锁 HEN system office room 【HEN16H-HENS2AHENS8Q8-HENH1688】

山东交通学院 单片机原理与应用课程设计院(部):轨道交通学院 班级:自动化121 学生姓名: 学号: 指导教师: 时间:— 课程设计任务书 题目电子密码锁设计 系 (部) 轨道交通学院 专业班级自动化121 学生姓名 学号 06 月 01 日至 06 月 12 日共 2 周 指导教师(签字) 系主任(签字) 年月日

目录 3.总体设计 (2)

4 密码比较模块 (6) (6) (8) (9) 附录 (10)

摘要 设计运用了ATMEL公司的AT89S52芯片系统,将微处理器、总线、蜂鸣器、矩阵键盘、存储器和I/O口等硬件集中一块电路板上,通过读取键盘输入的数据(密码)并储存到ATMEL912 24C08存储器中,然后判断之后键盘输入的数据与已存储的数据是否相同来决定打开密码箱或锁键盘或报警。在keil4软件中编程,系统可实现6位密码的处理,并通过控制步进电机控制密码箱门的电子锁,同时还可以修改改密码。利用单片机系统制作的密码箱安全性能更高,更易操作且体积小。 关键词:单片机、密码锁、修改密码 1.设计要求 本实验将实现六位数的电子密码锁。要求使用4X4 行列式键盘作为输入,并用LCD 实时显示。具体要求如下:1. 开机时LCD显示“welcome to use”,初始化密码为“123456”,密码可以更改。 2. 按下“10”,开始则显示“Enter Please:”。3. 随时可以输入数值,并在LCD上实时显示‘*’。当键入数值时,为了保密按从左到右依次显示‘*’,可键入值为0~9。 4. 按下“13”键,则表示确定键按下,进行密码对比。如相符则在LCD第一行显示“Open the door!”,同时指示灯亮起并且步进电机旋转一定的角度;如不符,则LCD第一行显示“Wrong password!”,并且蜂鸣器同时提示一下。如果密码连续三次错误则蜂鸣器连续响5下,并且持续5秒不能进行任何操作 5.在开锁状态下按下“12”键,进入修改密码状态,LCD同时提示“Enter new code!”。为删除按键,出入之后可以进行删除。按键为关闭按键,只有在打开状态下才可以关闭,按下之后LCD显示“Close the door!”。 2.功能概述 此设计分为四个功能模块。 第一模块:按键输入模块,用于密码的输入以及其他的密码操作按键。 第二模块:LCD模块,是与使用者交流的界面,用于显示各种状态下的内容。 第三模块:步进电机模块,用于控制密码锁的打开与关闭。 第四模块:24C08模块,用于储存输入的密码并读出来。 3.总体设计 本次设计作品的主要构成部分包括80C51单片机、LCD1602、24C08、矩阵按键、LED 等、蜂鸣器。如图1总体仿真图,图2实物图。 图1 总体电路图 图2 密码锁实物图 4.硬件设计 矩阵按键设计 如图3所示矩阵按键由P1口控制,了加强密码的保密性,采用一个4×4的矩阵式键盘可以任意设置用户密码(1-16位长度),从而提高了密码的保密性,同时也能减少与单片机接口时所占用的I/O口线的数目,节省了单片机的宝贵资源,在按键比较多的时候,通常采用这种方法。 每一行与每一列的交叉处不相同,而是通过一个按键来连通,利用这种行列式矩阵结构只需要N根行线与M根列线,即可组成具有N × M 个按键的矩阵键盘。 在这种行列式矩阵键盘编码的单片机系统中,键盘处理程序首先执行等待按键并确

AT89C51单片机C实现简易计算器

AT89C51单片机简易计算器的设计 一、总体设计 根据功能和指标要求,本系统选用MCS-51系列单片机为主控机。通过扩展必要的外围接口电路,实现对计算器的设计。具体设计如下:(1)由于要设计的是简单的计算器,可以进行四则运算,为了得到较好的显示效果,采用LCD 显示数据和结果。 (2)另外键盘包括数字键(0~9)、符号键(+、-、×、÷)、清除键和等号键,故只需要16 个按键即可,设计中采用集成的计算键盘。 (3)执行过程:开机显示零,等待键入数值,当键入数字,通过LCD显示出来,当键入+、-、*、/运算符,计算器在内部执行数值转换和存储,并等待再次键入数值,当再键入数值后将显示键入的数值,按等号就会在LCD上输出运算结果。 (4)错误提示:当计算器执行过程中有错误时,会在LCD上显示相应的提示,如:当输入的数值或计算得到的结果大于计算器的表示范围时,计算器会在LCD上提示溢出;当除数为0时,计算器会在LCD 上提示错误。 系统模块图:

二、硬件设计 (一)、总体硬件设计 本设计选用AT89C51单片机为主控单元。显示部分:采用LCD 静态显示。按键部分:采用4*4键盘;利用MM74C922为4*4的键盘扫描IC,读取输入的键值。 总体设计效果如下图:

(二)、键盘接口电路 计算器输入数字和其他功能按键要用到很多按键,如果采用独立按键的方式,在这种情况下,编程会很简单,但是会占用大量的I/O 口资源,因此在很多情况下都不采用这种方式,而是采用矩阵键盘的方案。矩阵键盘采用四条I/O 线作为行线,四条I/O 线作为列线组成键盘,在行线和列线的每个交叉点上设置一个按键。这样键盘上按键的个数就为4×4个。这种行列式键盘结构能有效地提高单片机系统中I/O 口的利用率。 矩阵键盘的工作原理: 计算器的键盘布局如图2所示:一般有16个键组成,在单片机中正好可以用一个P口实现16个按键功能,这种形式在单片机系统中也最常用。 图 2 矩阵键盘布局图 矩阵键盘内部电路图如图3所示:

基于单片机的定时闹钟课程设计报告书

任务书 一、设计目的 本设计主要是对51单片机的一个方面的扩展,是能实现一般定时闹钟功能的设计。需要实现某一功能时,按对应的按键即可,经过多次验证,此设计灵活简便,可以实现显示、定时、修改定时、定时时间到能发出报警声的功能。 二、设计要求 1、能显示时时—分分—秒秒。 2、能够设定定时时间,并修改定时时间。 3、定时时间到能发出警报声。

目录 1.绪论 (1) 2.方案论证 (1) 3.方案说明 (2) 4.硬件方案设计 (2) 4.1单片机STC89C52 (2) 4.2 时钟电路 (4) 4.3数码管显示电路 (4) 4.4键盘电路 (6) 4.5报警电路 (7) 5.软件方案设计 (7) 5.1系统软件设计 (7) 5.2键盘程序 (7) 5.3 LED (8) 5.4音响报警电路 (8) 5.5 程序流程图 (8) 6.调试 (9) 7.小结 (10) 8.参考文献 (11) 9.附录:定时闹钟源程序 (12)

1.绪论 系统采用单片机STC89C52作为本设计的核心元件,在其基础上外围扩展芯片和外围电路,附加时钟电路,复位电路,键盘接口及LED显示器。键盘采用独立连接式。还有定时报警系统,即定时时间到,通过扬声器发出报警声,提示预先设定时间时间到,从而起到定时作用。 外围器件有LED显示驱动器及相应的显示数字电子钟设计与制作可采用单片机来完成。由于其功能的实现主要通过软件编程来完成,那么就降低了硬件电路的复杂性,而且其成本也有所降低,所以在该设计与制作中采用单片机STC89C52,它是低功耗、高性能的CMOS型8位单片机。片内带有8KB的Flash 存储器,且允许在系统内改写或用编程器编程。另外, STC89C52的指令系统和引脚与8051完全兼容,片内有512B的RAM、32条I/O口线、3个16位定时计数器、4个外部中断、一个7向量4级中断结构(兼容传统51的5向量2级中断结构)等。 在LED显示器中,分成静态显示和动态显示两类,在这个设计的最小系统中主要用了它的动态显示功能,动态显示器利用了人视觉的短暂停留,在数据的传输中是一个一个传输的,且先传输低位。 2.方案论证 单片机作为核心的控制元件,使得电路的可靠性比较高,功能也比较强大,而且可以随时的更新系统,进行不同状态的组合。 本系统采用单片机STC89C52作为本设计的核心元件,利用两个4位7段共阴LED作为显示器件。接入共阴LED显示器,可显示时,分钟,秒,单片机外围接有定时报警系统,定时时间到,蜂鸣器发出报警声,提示预先设定时间到。 电路由下列部分组成:时钟电路、复位电路、控制电路、LED显示、报警电路,芯片选用STC89C52单片机。 系统基本框图如图2.1所示:

单片机课程设计完整版《PWM直流电动机调速控制系统》

单片机原理及应用课程设计报告设计题目: 学院: 专业: 班级: 学号: 学生姓名: 指导教师: 年月日 目录

设计题目:PWM直流电机调速系统 本文设计的PWM直流电机调速系统,主要由51单片机、电源、H桥驱动电路、LED 液晶显示器、霍尔测速电路以及独立按键组成的电子产品。电源采用78系列芯片实现+5V、+15V对电机的调速采用PWM波方式,PWM是脉冲宽度调制,通过51单片机改变占空比实现。通过独立按键实现对电机的启停、调速、转向的人工控制,LED实现对测量数据(速度)的显示。电机转速利用霍尔传感器检测输出方波,通过51单片机对1秒内的方波脉冲个数进行计数,计算出电机的速度,实现了直流电机的反馈控制。 关键词:直流电机调速;定时中断;电动机;波形;LED显示器;51单片机 1 设计要求及主要技术指标: 基于MCS-51系列单片机AT89C52,设计一个单片机控制的直流电动机PWM调速控制装置。 设计要求 (1)在系统中扩展直流电动机控制驱动电路L298,驱动直流测速电动机。 (2)使用定时器产生可控的PWM波,通过按键改变PWM占空比,控制直流电动机的转速。 (3)设计一个4个按键的键盘。 K1:“启动/停止”。 K2:“正转/反转”。 K3:“加速”。 K4:“减速”。 (4)手动控制。在键盘上设置两个按键----直流电动机加速和直流电动机减速键。在

手动状态下,每按一次键,电动机的转速按照约定的速率改变。 (5)*测量并在LED显示器上显示电动机转速(rpm). (6)实现数字PID调速功能。 主要技术指标 (1)参考L298说明书,在系统中扩展直流电动机控制驱动电路。 (2)使用定时器产生可控PWM波,定时时间建议为250us。 (3)编写键盘控制程序,实现转向控制,并通过调整PWM波占空比,实现调速; (4)参考Protuse仿真效果图:图(1) 图(1) 2 设计过程 本文设计的直流PWM调速系统采用的是调压调速。系统主电路采用大功率GTR为开关器件、H桥单极式电路为功率放大电路的结构。PWM调制部分是在单片机开发平台之上,运用汇编语言编程控制。由定时器来产生宽度可调的矩形波。通过调节波形的宽度来控制H电路中的GTR通断时间,以达到调节电机速度的目的。增加了系统的灵活性和精确性,使整个PWM脉冲的产生过程得到了大大的简化。 本设计以控制驱动电路L298为核心,L298是SGS公司的产品,内部包含4通道逻辑驱动电路。是一种二相和四相电机的专用驱动器,即内含二个H桥的高电压大电流双全桥式驱动器,接收标准TTL逻辑电平信号,可驱动46V、2A以下的电机。可驱动2个电机,OUTl、OUT2和OUT3、OUT4之间分别接2个电动机。5、7、10、12脚接输入控制电平,控制电机的正反转,ENA,ENB接控制使能端,控制电机的停转。 本设计以AT89C52单片机为核心,如下图(2),AT89C52是一个低电压,高性能 8位,片内含8k bytes的可反复擦写的只读程序存储器和256 bytes的随机存取数据存储器(),器件采用的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,AT89C52单片机在电子行业中有着广泛的应用。 图(2) 对直流电机转速的控制即可采用开环控制,也可采用闭环控制。与开环控制相比,速度控制闭环系统的机械特性有以下优越性:闭环系统的机械特性与开环系统机械特性相比,其性能大大提高;理想空载转速相同时,闭环系统的静差(额定负载时电机转速降落与理想空载转速之比)要小得多;当要求的静差率相同时, 闭环调速系统的调速范

单片机课程设计——基于C51简易计算器

单片机双字节十六进制减法实验设计 摘要 本设计是基于51系列的单片机进行的双字节十六进制减法设计,可以完成计 算器的键盘输入,进行加、减、3位无符号数字的简单运算,并在LED上相应的显示结果。 设计过程在硬件与软件方面进行同步设计。硬件方面从功能考虑,首先选择内部存储资源丰富的AT89C51单片机,输入采用5个键盘。显示采用3位7段共阴极LED动态显示。软件方面从分析计算器功能、流程图设计,再到程序的编写进行系统设计。编程语言方面从程序总体设计以及高效性和功能性对C语言和汇编语言进行比较分析,针对计算器四则运算算法特别是乘法和除法运算的实现,最终选用KEIL公司的μVision3软件,采用汇编语言进行编程,并用proteus 仿真。 引言 十六进制减法计算器的原理与设计是单片机课程设计课题中的一个。在完成理论学习和必要的实验后,我们掌握了单片机的基本原理以及编程和各种基本功能的应用,但对单片机的硬件实际应用设计和单片机完整的用户程序设计还不清楚,实际动手能力不够,因此对该课程进行一次课程设计是有必要的。 单片机课程设计既要让学生巩固课本学到的理论,还要让学生学习单片机硬件电路设计和用户程序设计,使所学的知识更深一层的理解,十进制加法计算器原理与硬软件的课程设计主要是通过学生独立设计方案并自己动手用计算机电路设计软件,编写和调试,最后仿真用户程序,来加深对单片机的认识,充分发挥学生的个人创新能力,并提高学生对单片机的兴趣,同时学习查阅资料、参考资料的方法。 关键词:单片机、计算器、AT89C51芯片、汇编语言、数码管、加减

目录 摘要 (01) 引言 (01) 一、设计任务和要求............................. 1、1 设计要求 1、2 性能指标 1、3 设计方案的确定 二、单片机简要原理............................. 2、1 AT89C51的介绍 2、2 单片机最小系统 2、3 七段共阴极数码管 三、硬件设计................................... 3、1 键盘电路的设计 3、2 显示电路的设计 四、软件设计................................... 4、1 系统设计 4、2 显示电路的设计 五、调试与仿真................................. 5、1 Keil C51单片机软件开发系统 5、2 proteus的操作 六、心得体会.................................... 参考文献......................................... 附录1 系统硬件电路图............................ 附录2 程序清单.................................. 一、设计任务和要求

定时闹钟设计课程设计报告

定时闹钟设计 摘要: 本设计目的是利用单片机设计制作一个简易的定时闹铃时钟,可以放在宿舍或教室使用,在夜晚或黑暗的场合也可以使用。可以设置现在的时间以及闹铃的时间并且显示出来,若时间到则发出一阵声响。 本次设计的定时闹钟在硬件方面就采用了AT89C52芯片,用6位LED数码管进行显示。LED用P0口进行驱动,采用的是动态扫描显示,能够比较准确显示时时—分分—秒秒。通过五个功能按键可以实现对时间的修改、定时和闹铃终止,闹钟设置的时间到时蜂鸣器可以发出声响。在软件方面用C51编程。整个定时闹钟系统能完成时间的显示,调时和设置闹钟、停止响铃等功能,并经过系统仿真后得到了正确的结果。 关键词:定时闹钟;蜂鸣器;AT89C52;74HC245;

目录

第1章绪论 设计目的 本次课程设计的主题是定时闹钟,其基础部分是一个数字钟。电路系统由秒信号发生器、“时、分、秒”计数器、显示器组成。其中秒信号产生器是整个系统的时基信号,它直接决定计时系统的精度,这里用51单片机的定时器来实现。利用定时器获得每一秒的时刻,然后在程序中,我们就可以给秒进行逐秒赋值,满60秒则进位为1分,满60分则进位为1小时,满24小时则时间重置实现一天24小时的循环。译码显示电路将“时”、“分”、“秒”计数器的输出状态送到七段显示译码器译码,通过一个六位八段数码管显示出来。 这里利用51单片机的相关知识,来实现电子闹钟的相关功能。实验使用了 AT89C52、74HC245等芯片,通过单片机的P0、P3管脚来驱动数码管显示出相应的时刻。本文将讲述AT89C52、74HC245等芯片的基本功能原理,并重点介绍该电子闹钟的设计。 设计要求和任务 使用6位七段LED显示器来显示现在的时间;显示格式为“时时分分秒秒”;具有4个按键来做功能设置,可以设置现在的时间及显示闹铃设置时间;时间到则发出一阵声响,可通过按键复位;对单片机系统设计的过程进行总结,认真书写课程设计报告并按时上交。 利用51单片机结合七段LED显示器设计一个简易的定时闹铃时钟,可以放在宿舍或教室使用,由于用七段LED显示器显示数据,在夜晚或黑暗的场合也可以使用。可以设置现在的时间及显示闹铃设置时间,若时间到则发出一阵声响。 论文主要内容 论文分别叙述从硬件和软件上实现该设计的过程。第2章为总体设计方案。第3章主要介绍设计实现需要解决的硬件问题。依次介绍所使用的各种硬件的使用方法,并附上仿真电路图和文字说明。第4章从软件的角度说明实现该设计需要解决的问题。

单片机课程设计——基于C51简易计算器

单片机十进制加法计算器设计 摘要 本设计是基于51系列的单片机进行的十进制计算器系统设计,可以完成计 算器的键盘输入,进行加、减、乘、除3位无符号数字的简单四则运算,并在LED上相应的显示结果。 设计过程在硬件与软件方面进行同步设计。硬件方面从功能考虑,首先选择内部存储资源丰富的AT89C51单片机,输入采用4×4矩阵键盘。显示采用3位7段共阴极LED动态显示。软件方面从分析计算器功能、流程图设计,再到程序的编写进行系统设计。编程语言方面从程序总体设计以及高效性和功能性对C 语言和汇编语言进行比较分析,针对计算器四则运算算法特别是乘法和除法运算的实现,最终选用全球编译效率最高的KEIL公司的μVision3软件,采用汇编语言进行编程,并用proteus仿真。 引言 十进制加法计算器的原理与设计是单片机课程设计课题中的一个。在完成理论学习和必要的实验后,我们掌握了单片机的基本原理以及编程和各种基本功能的应用,但对单片机的硬件实际应用设计和单片机完整的用户程序设计还不清楚,实际动手能力不够,因此对该课程进行一次课程设计是有必要的。 单片机课程设计既要让学生巩固课本学到的理论,还要让学生学习单片机硬件电路设计和用户程序设计,使所学的知识更深一层的理解,十进制加法计算器原理与硬软件的课程设计主要是通过学生独立设计方案并自己动手用计算机电路设计软件,编写和调试,最后仿真用户程序,来加深对单片机的认识,充分发挥学生的个人创新能力,并提高学生对单片机的兴趣,同时学习查阅资料、参考资料的方法。 关键词:单片机、计算器、AT89C51芯片、汇编语言、数码管、加减乘除

目录 摘要 (01) 引言 (01) 一、设计任务和要求............................. 1、1 设计要求 1、2 性能指标 1、3 设计方案的确定 二、单片机简要原理............................. 2、1 AT89C51的介绍 2、2 单片机最小系统 2、3 七段共阳极数码管 三、硬件设计................................... 3、1 键盘电路的设计 3、2 显示电路的设计 四、软件设计................................... 4、1 系统设计 4、2 显示电路的设计 五、调试与仿真................................. 5、1 Keil C51单片机软件开发系统 5、2 proteus的操作 六、心得体会.................................... 参考文献......................................... 附录1 系统硬件电路图............................ 附录2 程序清单..................................

单片机课程设计电阻测量(完整版)

课程设计报告课程名称:单片机课程设计 设计题目:电阻测量 院系:通信与控制工程系 专业:通信工程 班级: 学生姓名: 学号: 08409212 起止日期: 指导教师: 教研室主任:

摘要 本设计电阻测量是利用A/D转换原理,将被测模拟量转换成数字量,并用数字方式显示测量结果的电子测量仪表。通常测量电阻都采用大规模的A/D转换集成电路,测量精度高,读数方便,在体积、重量、耗电、稳定性及可靠性等方面性能指标均明显优于指针式万用表。其中,A/D转换器将输入的模拟量转换成数字量,逻辑控制电路产生控制信号,按规定的时序将A/D转换器中各组模拟开关接通或断开,保证A/D 转换正常进行。A/D转换结果通过计数译码电路变换成BCD码,最后驱动显示器显示相应的数值。本系统以单片机AT89C52为系统的控制核心,结合A/D转换芯片ADC0809设计一个电阻测量表,能够测量一定数值之间的电阻值,通过四位数码显示。具有读数据准确,测量方便的特点。 关键词:单片机(AT89C52);电压;A/D转换;ADC0809

目录 设计要求 (1) 1、方案论证与对比 (1) 1.1方案一 (1) 1.2方案二 (1) 1.3方案对比与比较................................... 错误!未定义书签。 2、系统硬件电路的设计 (2) 2.1振荡电路模块 (2) 2.2A/D转换电路模块 (3) 2.2.1主要性能 (3) 2.2.2 ADC0809芯片的组成原理 (4) 2.2.3 ADC0809引脚功能 (4) 2.3主控芯片AT89C52模块 (5) 2.3.1主要功能特性 (6) 2.3.2 主要引脚功能 (6) 2.4显示控制电路的设计及原理 (8) 3、程序设计 (9) 3.1初始化程序 (9) 3.2主程序 (10) 3.3显示子程序 (10) 3.4A/D转换测量子程序 (11) 4、调试及性能分析 (11) 4.1调试与测试 (11) 4.2性能分析 (12) 5、元件清单 (13) 6、总结与思考及致谢............................... 错误!未定义书签。参考文献. (13)

单片机4X4键盘计算器课程设计报告书

《单片机课程设计报告》 教学院: 专业班级: 学号: 学生: 指导教师: 时间: 地点:

单片机课程设计任务书 一、课题名称 单片机课程设计 二、设计目的 为了进一步巩固学习的理论知识,增强学生对所学知识的实际应用能力和运用所学的知识解决实际问题的能力,开始为期两周的单片机课程设计。通过实训使学生在巩固所学知识的基础之上具有初步的单片机系统设计与应用能力。 三、设计容 设计基于51单片机的简易计算器系统电路,并以该电路为基础进行编程,要求能够实现0-99之间的数进行加、减、乘、除运算的功能。 四、设计要求 1、设计简易计算器,要求能对0-99之间的数进行加、减、乘、除运算。 2、用4×4的键盘作为输入设备。 3、用LED或LCD进行显示。 4、编写无符号数加、减、乘、除运算、输入和显示的程序。 5、对系统的进行综合和调试,使其具有对0-99之间的数进行加、减、乘、除运算的功能。 6、编写课程设计的总结

六、设计报告 课程设计报告的基本容至少包括封面、正文、附录三部分。课程设计报告要求统一格式,字体工整规。 1、封面 封面包括“《单片机课程设计》课程设计报告”、班级、、学号以及完成日期等。 2、正文 正文是实践设计报告的主体,具体由以下几部分组成: (1)课程设计题目; (2)课程设计任务与要求; (3)设计过程(包括设计方案、设计原理、创新点以及采用的新技术等); (4)方案的比较与论证; (5)硬件电路设计,各个模块的设计与器件的选择; (6)软件程序的设计与调试; (7)课程设计总结(包括自己的收获与体会;遇到的问题和解决的方法;技术实现技巧和创新点;作品存在的问题和改进设想等); 3.附录 附录1:系统设计原理图 附录2:系统硬件元器件清单 附录3:系统的程序 七、考核方式与成绩评定办法 及格(60分~69分)、60分以下为不及格。

相关主题
文本预览
相关文档 最新文档