单片机课程设计(5篇)-飞外

简介:飞外文库小编为你整理了多篇相关的《单片机课程设计》,但愿对你工作学习有帮助,当然你在飞外文库还可以找到更多《单片机课程设计》。

【1】杨居义。单片机课程设计指导。北京:北京大学出版社,2009。

【2】王效华,张咏梅。单片机原理与应用。北京:北京交通大学出版社,2007。 【3】杨光义,马宁,靳光明等。单片机原理与工程应用。北京:清华大学出版社,2009。

共1 页 中北大学单片机原理及接口技术课程设计说明书

2 硬件设计

2.1 设计的总体思路

硬件系统主要由单片机最小应用系统、LED数码管显示模块、晶振模块、按键模块等组成。在使用单片机的过程中必定会使用单片机的最小系统,由于我购买的单片机内部没有晶振,所以设计了外接的晶振模块。鉴于本次课程设计要求制作数字钟,所以使用了六位7段数码管来显示“XX XX XX”,从左向右分别是:时、分、秒。除了能上电复位,还设计了用三个按键实现时、分、秒的调制,使用方便灵活。 2.2 单片机最小系统

对51系列单片机来说,单片机+晶振电路+复位电路,便组成了一个最小系统。见图2.1。

图2.1 2.3 晶振模块

在AT89C51芯片内部有一个高增益反相放大器,其输入端为芯片引脚XTAL1(19脚),输出端为引脚XTAL2(18脚)。而在芯片内部,XTAL1和XTAL2之间跨接晶体振荡器和微调电容,从而构成一个稳定的自激振荡器。时钟电路产生的振荡脉冲经过触发器进行二分频之后,才成为单片机的时钟脉冲信号。见图2.2。

共2 页 中北大学单片机原理及接口技术课程设计说明书

图2.2 2.4 按键模块

用三个按键实现对时分秒的设置,其中一个按键实现对时分秒的控制,接P1.4口,另外两个按键接单片机的P1.5和P1.6口实现加一和减一的功能。 2.5 LED数码管显示模块

本次课程设计由于要显示时、分、秒,所以采用广泛使用的数码管动态显示接口。动态驱动是将所有数码管的8个显示笔划"a,b,c,d,e,f,g,dp"的同名端连在一起,另外为每个数码管的公共极COM增加位选通控制电各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是哪个数码管会显示出字形,取决于单片机对位选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。通过分时轮流控制各个数码管的COM端,就使各个数码管轮流受控显示,这就是动态驱动。在轮流显示过程中,每位数码管的点亮时间为1~2ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的I/O端口,而且功耗更低。

将数码管的位选信号接P2口的六个位,段选信号接P0口的八个位。再通过Keil软件以及51C语言编程实现数字钟的功能。本系统利用6位LED数码管显示时间,共阴极结构,当要显示某个数字时只要将数字所对应的引脚送入低电平。 2.6 硬件连接图

通过对设计电路的各个模块的分析,可以用PROTEUS绘制硬件电路。如图2.3所示。

共3 页 中北大学单片机原理及接口技术课程设计说明书

图2.3 2.7制作实物

(见附录A)

共4 页 中北大学单片机原理及接口技术课程设计说明书

3 软件设计

单片机最主要的功能是通过程序来实现各种功能,有了硬件的描述,再加上软件的编程,通过不断的调试与修改程序就能实现本次课程设计的目的。 3.1 程序流程图

系统总的流程图,见图3.1。

图3.1 3.2 调试与分析

由于在焊接实物之前,我大量查阅了资料,弄明白了此次课程设计任务的基本原理,对原理有了基本的认识后,就开始了焊接工作。虽然焊接花费了我大量的时间,但是在焊好以后上电时,所有的数码管都亮,说明焊接连线没有短路情况。

硬件连接好以后就是软件编程,但是编写程序中遇到了挺多问题,比如:编写程序是没有消除抖动。在同学的帮助下,使得数码管能正常实现数字钟的功能。 3.3 源程序

(见附录B)

共5 页 中北大学单片机原理及接口技术课程设计说明书

4 心得与结论

本次课程设计以AT89C51为核心部件,实现时间的设置功能。通过六位7段数码管显示可方便地校对时间,利用Keil软件编程完成时钟的功能。

通过实物的焊接以及软件的仿真和编写程序基本完成了数字电子钟的功能,尽量做到了硬件电路简单稳定,减小电磁干扰和其它环境干扰,充分发挥了软件编程的优点,减小了因器件精度不够引起的误差。由于时间有限和本身知识水平的局限,我认为此次设计还有需要改进和提高的地方,例如选用更高精度的元器件,硬件电路更加精确稳定等。

共6 页 中北大学单片机原理及接口技术课程设计说明书

参考文献

[1] 杨文龙.单片机原理及应用[M].西安电子科技大学出版社,1993. [2] 李朝青.单片机原理及接口技术[M].北京航空航天大学出版社,2003. [3] 胡汉才.单片机原理及系统设计[M].清华大学出版社,2003. [4] 杨忠煌,黄博俊,李文昌.单芯片8051实务与应用[M].中国水利水电出版社,2001. [5] 王守中,51单片机开发入门与典型实例[M].人民邮电出版社. [6] 黄文梅.系统分析与仿真:MATLAB语言及应用[M].国防科技大学出版社,1999. [7] 阎石.数字电子技术(

共7 页 中北大学单片机原理及接口技术课程设计说明书

致谢

首先,很感谢学院给我们电气工程及其自动化专业的学生一次把理论加深的机会,使得我们更好的理解《单片机原理及接口技术》这门课程,通过实物的焊接以及软件仿真使得自己的动手能力有了一定的提高;其次,虽然这次课程设计是每个人制作一个实物,但是大家一起讨论,分析,最终调试成功,使大家的思维更加开阔;最后,感谢余老师的研究生给予我们焊接工具的支持。

共8 页

中北大学单片机原理及接口技术课程设计说明书

附录A

制作的实物照片

共9 页 中北大学单片机原理及接口技术课程设计说明书

附录B

源程序清单 #include #define uint unsigned int #define uchar unsigned char uint hhh,mmm,sss; uint status; //函数声明

void delayMS(uint t) void keyprocess(unsigned char key); void display(); void timer0(); main() //主函数 { ucharsegcode[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};//0,1,2,3,4,5,6,7,8,9 uchar dispbit[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf};//数码管位选码 buffer[]={0,0,0,0,0,0,0,0}; bit keyrel; uchar buf; uchar keyin; keyrel=1; buf=0xff; TMOD=0x01; //T0工作在方式1,16位计数器 TH0=(65536-1000)/256;// 定时器0设置延时1ms中断初始值 TL0=(65536-1000)%256; TR0=1; IE=0x82; //开定时器0中断

共10 页 中北大学单片机原理及接口技术课程设计说明书

status=0; //延时函数

void delayMS(uint t) // 晶振频率12MHZ { uint i;

while(t--)

for(i=0;i=4) status = 0;

break; case 0xd0:switch(status) //按下加1键,3种模式下加1

{

case 0x01:if(hhh0) hhh--;

else hour=23; break;

共12 页 中北大学单片机原理及接口技术课程设计说明书

case 0x02:if(mmm>0) mmm--;

else min=59; break;

case 0x03:if(sss>0) sss--;

else sss=59; break;

} break; default:break; } } //数码管显示函数 void display() { uchar i;

//正常计时显示

{

buffer[0]=hhh/10; // 显示时的十位

buffer[1]=hhh%10 // 显示时的个位

buffer[2]=mmm/10; // 显示分的十位

buffer[3]=mmm%10; // 显示分的个位

buffer[4]=sss/10; // 显示秒的十位

buffer[5]=sss%10; // 显示秒的个位

for(i=0;i=1000) // 定时 1S 到,以下为时钟的正常走钟逻辑 { count=0; sss++; if(sss>60) { sss=0; mmm++; if(mmm>60) { mmm=0; hhh++; if(hhh>24) { hhh=0; }

} } }

}

共14 页


单片机课程设计

《单片机技术》课程设计说明书 音乐盒 院、部:电气与信息工程学院 学生姓名:刘亮 指导教师:凌云职称讲师 专业:电子信息工程 班级:电子1302班 学号:1330340220 完成时间: 2016年1......

单片机课程设计

课 程 设 计 设计题目: 基于单片机的8*8点阵显示数字设计 学生姓名: 指导教师: 二级学院: 专业: 班级: 学号: 目 录 摘要„„„„„„„„„„„„„„„„„„„„„„„„„„......

单片机课程设计

单(dps是什么意思?dps在游戏中是指一次战斗从开始到结束,伤害总量/战斗时间,简单的说就是一次战斗中,你攻击起来的每秒伤害。)片机课程设计_报警器 报警器 ORG 0010H START:MOV DPTR,#TAB CLR P3.1 SETB P1 MOV A,P1 CPL A ANL A,#0F0H SWAP A MOV R0,A LCALL DISP1 MOV A,P1 CPL A ANL A,#0FH MOV......

单片机课程设计

目录 第 1 章概述.....................................................................................6 第 2 章单片机.................................................

单片机课程设计

分类号编号 烟 台 大 学 课 程 设 计 基于单片机8051的密码锁控制 院系:机电学院专业: 机械设计制造及其自动化姓名:学号:2010年7 月 6 日 0 目录 第一章:引言·········......

单片机课程设计

武汉理工大学单片机实训报告 第一章 绪论 ...............................................................................................................................

单片机课程设计

设计题目: 单片机课程设计 学生姓名:学院: 电气与信息工程学院班级: 电子111班 指导教师:日 期: 2014年9月20日 一、课程设计目的: 了解电子元器件的功能与原理,掌握单片机的结构......

单片机课程设计

多元智能理论在美国教育改革的理论和实践中产生了广泛的积极影响,并且已经成为当前美国教育改革的重要理论基础之一。运用多元智能理论分析我国的教育问题,对于促进我国的教育......

单片机课程设计

单片机课程设计 跑马灯的控制 摘要:本设计选择对跑马灯的控制,先构思跑马灯实现预想效果,然后进行分 析,根据要求编写程序,选择硬件端口,并进行调试致预想效果,最后浅谈课程设计的......