单片机原理与应用》
课程设计指导书
班级:09机电1 指导教师:高金玉
2018.5.17
单片机课程设计指导书
、课程设计目的
单片机课程设计作为独立的教案环节,学习完《单片机原理及应用》课程后,并在进行相关课程设计基础上进行的一次综合练习。
其目的在于加深对MCS-51单片机的理解,掌握单片机应用系统的设计方法;掌握常用接口芯片的正确使用方法;强化单片机应用电路的设计与分析能力;提高学生在单片机应用方面的实践技能和科学作风;培育学生综合运用理论知识解决问题的能力,力求实现理论结合实际,学以致用的原则。
学生通过查阅资料、接口设计、程序设计、安装调试、整理资料等环节,初步掌握工程设计方法和组织实践的基本技能;熟悉单片机系统及程序的编制过程,为今后从事生产技术工作打下必要的基础;学会灵活运用已经学过的知识,并能不断接受新的知识,大胆发明创造的设计理念。
、课程设计要求
课程设计应充分体现教师指导下的以学生为中心”的教案模式,以学生为认知主体,充分调动学生的积极性和能动性,重视学生自学能力的培养。根据课程设计具体课题安排时间,确定课题的设计、编程和调试内容,分小组进行。根据合理的进度安排,一步一步、踏踏实实地开展课程设计活动,按时完成每部分工作。课程设计集中在教室、机房进行,每天由班长、学习委员负责考勤,指导教师抽查。在课程设计过程中,坚持独立完成,实现课题规定的各项指标,并写出设计报告。
三、课程设计时间及进度安排
课程设计集中在1周进行。为保证达到预计的教案任务及目的,以小组为单位分别进行资料的收集、方案论证、电路设计、编程、调试、实验及改进。具体进度及要求安排如下:
时间内容
布置课题,落实任务,确定课题及组织形式,收集课题相关的技术资料及方第1天
案论证、分析、讨论。
第2天电路设计、设计各模块程序框图及软件设计、调试
第3 —4天电路设计、设计各模块程序框图及软件设计、调试
第5天调试,整理资料、写课程设计报告递交课程设计报告、总结
四、课程设计课题及内容
具体设计课题可根据实际情况选择,或在下列给出的题目任选一题。
题目一校园作息时间控制系统
设计要求:
(1>作息时间能控制电铃,可以按键设置时间,包括设置当前时间,显示闹铃设置时间,设定闹铃时间,闹铃的
ON/OFF设置等。
(2>利用单片机实现,方法自选。整个系统需自行设计电路,辅助电路及元件自选
题目二交通信号灯控制系统
设计要求:
(1>正常情况下交叉路口的轮流通行(主道3个LED红、黄、绿控制直行,支道3个LED红、黄、绿,
切换时间自行设定>;
(2>特殊情况控制通行方式控制,用按键开关K1控制主道通行,支道禁行,K2控制支道通行,主道禁行,特殊情况控制通行放行。
(3>有紧急情况时用按键开关K0控制两道均为红灯;
(4>4位LED数码管能够显示双直行方向绿灯和红灯的等待时间。
题目三环境温度监测系统
设计要求:
(1>多路温度监测:温度范围0-1500 C,分辨率0.5 C,测量误差w 10C
(2>能实时显示测量的温度值:xxxx.x,显示器每隔一分钟刷新一次温度值
(3>当温度值超过设定的报警限值时,可用蜂鸣器和发光管实现声光报警
题目四太阳能热水器自动控制系统
设计要求
实现温度和水位参数的实时显示,而且具有温度设定、水位设定与控制功能,停电后再来电时也不用重新设定,具有故障报警和故障自处理功能;能实现在用水时,若日晒水温达不到设定值,则电加热自动补温;良好的稳定性和抗干扰性能。
题目五LED大屏幕滚动显示电子钟
设计要求:用LED点阵显示电子钟。工作时,先滚动显示“您好,今天是20**年**月*日星期
*”,然后静止显示当前时间“ **:**”3秒钟,如此循环。
题目六单片机脉搏测量仪
设计要求:
(1>接触式测量和非接触式测量脉搏;
(2>测量值显示
题目七八路智能抢答器
设计要求:
(1>八路抢答,各用一个抢答按钮;
(2>设置一个控制开关,控制系统的清零和抢答的开始;
(3>具有数据锁存和显示功能,抢答开始后若有选手按动抢答按钮,编号立即锁存,并在数码管上显示出选手的编号和抢答时刻,同时扬声器给出音响提示,此外,要封锁输入电路,禁止其他选手抢答。优先抢答选手的编号一直保持到系统清零为止;
可扩展以下功能:
(4>具有定时抢答的功能,选手在设定的时间内抢答有效,且一次抢答的时间设定为8秒,超时扬声
器报警;
(5>定时抢答的时间到,却没有选手抢答时,本次抢答无效,系统短暂报警,并封锁输入电路,禁止选手超时抢答,时间显示器上显示00 ;
(6>开始开关未动作,选手抢答无效,并报警,系统复位,重新开始。
题目八电子计时器设计要求:
(1>上电时自动显示时、分、秒
(2>设置一个控制按键,按下按键,则时钟以秒为单位开始计时
(3>运行状态下可通过控制按键使时钟暂停,同时显示已计时数值
(4>停止状态(已上电>,按下复位键,时钟复位(清零>并进入下一次计时状态
题目九简易数字电压表
设计要求:
可以测量0?5V的8路输入电压值,并在四位LED数码管上轮流显示或单路选择显示。
题目十简易数字频率计
要求:
(1>频率测量
a.测量范围信号:方波、正弦波;幅度:0.5V?5V ;频率:1Hz?1MHz
b .测量误差<0.1%
(2>周期测量
a.测量范围信号:方波、正弦波;幅度:0.5V?5V ;频率:1Hz?1MHz
b .测量误差<0.1%
(3>脉冲宽度测量
a.测量范围信号:脉冲波;幅度:0.5V?5V ;脉冲宽度>100 s
b ?测量误差<1%
(4>显示器
十进制数字显示,显示刷新时间1?10秒连续可调,对上述三种测量功能分别用不同颜色的发光
二极管指示。
五、设计报告中的几点说明
设计完成后,要求每个同学写出设计报告。设计报告包括设计过程、逻辑电路图、程序框图、程序、调试说明、心得体会等内容,逻辑电路图和程序框图必须按照下列原则画出。
1、程序框图的原则是:
框图一般有几个框图构成,通常所有的框图画在一张图纸上。所画框图不必太详细,也不能太模糊,关键是要反映出程
序的主要思路,逻辑顺序,输入输出以及控制点的设计思想。
② 框图要能清晰地表示出控制信息和数据信息的流向。信息的流向可以是任意的,通常由左至右、自上到下。
③所有框图和连线必须清晰整齐。
2、画逻辑电路图的原则是:
①一般把电路的输入端画在左边,输出端画在右边,重要的电路画在上部,不重要的画在下部。
②所有通路应尽量连接,连接线可交叉,但若相交则要用一个圆点表示。如果走线拥挤须将通路分开画时,应在断口两端做上标记。
③
超出一张纸的逻辑电路,应使用同一坐标系统(像地图一样>,标出信号从一张到另一张的引出点和引
入点。
单片机课程设计报告
——电子课程表系统
摘要:该实验设计基于AVRmega16开发板平台,根据点阵屏和七段数码管的基本原理,做出了方便实用的电子课表。关键字:单片机8*8点阵屏电子课表
前言:
AVR单片机是一款功能十分强大,集成度非常高的数字处理系统。它集成了ADC与DAC的模块,而且
还有硬件滤波器!它基本上能够处理生活实时性不太强的模拟信号与数字信号,并实现通信!近年来,广告的普及和生活水平的提高,点阵大屏的需求日益强烈!
LED 因其体积小,耗电量低,高亮度及环保等优点而被广泛应用于公共场所的大屏显示上,LED 点阵大屏可应用于户外广告,交通导航,大厅公告,比赛的多媒体实时显示等领域。老校公教楼的点阵屏可以用来显示整幅课表。
我们的课程设计是基于AVR单片机,用8*8点阵显示滚动的课程英文名称,至于教室门口,可即时显示该教室内正在上的课程名称,方便师生选择合适的教室学习。所作的点阵屏具有可移植性强,功能简单,可以简单继续添加更多相关功能的模型,也可以扩展成多块点阵屏的组合,以改良显示效果。
正文:
一、系统设计目的、用途以及功能
经过一段时间的观察,我们发现,同学们上自习是经常遇到一个问题。教室中有很多人,但不能确定 里面是不是在上课,能不能到里面去自习。
公教楼进门的地方有电子大屏可以显示课程安排,但看起来过于麻烦,也不能具体到每一个教室。所 以我们设想,能不能设计一个电子课表,放在每个教室的门口,显示当前在上的课程,并可以通过一 定的按键来及时改变课程,以应对临时变化。后来经电子设计大赛的老师提醒,我们曾经想设计一种 有控制终端的课程显示系统。即每个教室门口都有一个电子课表,通过终端的控制完成所有课表的显 示。但后来发现,以我们的能力做这样的工作太过复杂,所以我们选择了更容易的方式:单一的放在 教室门口的电子课表,只显示当前的课程。于是现在的作品应运而生。 电子课表的基本功能如下:
1、 实现LED 点阵屏汉字名称的滚动显示。
2、 实现不通课程汉字名称的自动切换。
3、 实现按键控制课程名称的临时更改。
4、实现节日动画的显示。
5、实现6位七段数码管显示时分秒。
6、实现按键控制时间的调整。
二、硬件设计原理及内容
硬件设计思想:通过按键输入控制信号,由单片机进行处理,并将行列信号分别通过显示驱动输 入点阵屏和数码管,控制点阵和数码管的显示
硬件模块一
基于Atmega16单片机 利用4片点阵屏的组合来实现16*16的显示,从而使汉字的显示变成可能。
控制信
按键
74IS138
Led
16*16
*点阵屏
iMOSl) iMkSO) 六位七段数码
Atmega16引脚图
ATmega16 母
74hc164
匚 匚 匚 二 二 二 匚
二
|_
厂
L
匚 匚
r
匸 c
-
HI ■舟 I VCC GMO Pfco PB H FEZ PH Li
Rim pet PDG PE ; ARE 卜 ZND
poPDPDroPD-PDplh
765 432107 n nn
二二二
我们分别采用两片74IS595来控制行的显示,用一块74IS154来控列的显示。本来计划要用两74ls138的级连来控制列的变化,后来在测试中发现出现一些问题,于是改为74IS154 ?且154的使用可以减少资源的占用。
如焊接图所示,将左右点阵屏的行的控制引脚相连接,按照测试好的顺序排成0?15号,通过100欧的电阻后接到三极管上,三极管的作用是增大亮度。在三极管后同样使用100欧的电阻,最后接入两片7
4IS595.将595的电源和接地连好后,控制端连接到单片机的控制端,100欧的电阻起限流作用。
将上下点阵屏的列的控制引脚相连接,同样按照顺序排为0?15号,接入74LS154芯片,再将154芯片
的电源和接地连接,控制端借入单片机的控制端。
设置普通键盘,连到单片机的控制端作为电子课表系统的控制按键。
该模块做为电子课程表的核心系统,能直观的显示所需目的,简便、快捷、容易理解。围绕这一模块完成以后的拓展工作。
模块一硬件图
硬件模块二一一七段数码管显示时分秒
1?用74hc164实现8路并口输出的扩展,占用单片机的两个端口。编写hc164_send_byte(>函数,程序控
制hc164_data(PD6>作为数据线,将一字节由高位到低位,依次输出,输出时先根据该位的数值置PD6 为“1或“0;'然后控制hc164_CLK(PA7>输出“ 1;'再输出“0;'模拟时钟信号,将PD6数据打入74hc16 4。循环移位8次后,将1字节的数据由低位到高位串行输入到74hc164中,即可在74hc164的输出端得
到并行的8位数据,即七段数码管的段码值。
2?用74ls138实现6路并口输出的扩展,将位选的段码值依次打入74ls138;74ls138任一时刻只有一个输
出口输出低电平,对应的一位数码管被选中,扫描6次后可以实现六位数码管的显示。
4.51欧电阻起限流的作用。
6?该模块可以实现时分秒的显示,补充并强化了电子课表的功能,为了节省单片机布局有些不合理的
端口,用了两处串入并出的扩展。 模块二硬件图
Atmega16单片机、8 X8共阳点阵屏4个、74HC595移位寄存器
2个、74ls154
译码器1个、100欧电阻32个、NPN8050三极管16个、排线若干、共阴三位七段数码管两块, 74hc164
移位寄存器一片,74ls138译码器一片,51欧电阻8个
1、74HC154 参数:
描述:
74HC595是告诉的硅结构的 CMOS 器件,
兼容低电压TTL 电路,遵守JEDEC 标准。74HC595是有8位移位寄存器和一个存储器,三态输出功能。 移位寄存器和存储器是分别的时钟。
INPUTS
ourpurs
Vqc A B C □ G2 G1 14 u 12 11
24 23
22 21 20
悩
10
17
10
15
1*
> <
卜<
■O
o-
<
> 1 c ? t
1
i
3
4 5
6 7
a 9
1
Ml |l :
<
>
! :
i d
5 ( 5 J
5 < 】1 0 GND
OUTPIFTS
数据在SCHcp 的上升沿输入,在STcp 的上升沿进入的存储寄存器中去。如果两个时钟连在一起,则移 位寄存器总是比存储寄存器早一个脉冲。
移位寄存器有一个串行移位输入 (Ds >,和一个串行输出(Q7>,和一个异步的低电平复位,存储寄存器 有一个并行8位的,具备三态的总线输出,当使能 0E 时(为低电平 >,存储寄存器的数据输出到总线。 特点:8位串行输入 /8位串行或并行输出
存储状态寄存器,三种状态。
输出寄存器可以直接清除
100MHz 的移位频率。
输出能力:并行输出,总线驱动;串行输出;标准中等规模集成电路。
H —— ■注:—
一
L
_I
J
系统设计所需资源及参数
2、74HC595 参数:
QA--QH:八位并行输出端。
QH':级联输出端。SI:串行数据输入端。 74595的控制端说明:
/SCLR(10脚〉:低点平时将移位寄存器的数据清零。 SCK(11脚> :上升沿时数据寄存器的数据移位。 QA-->QB--
>QC-->...--
>QH ;下降沿移位寄存器数据不变。
(脉冲宽度:5V 时,大
于几十纳秒就行了 >
RCK(12脚> :上升沿时移位寄存器的数据进入数据存储寄 存器,下降沿
时存储寄存器数据不变。 (5V 时,大于几十纳
秒就行了 >,更新显示数据。
/G(13 脚 >:
高电平时禁止输出(高阻态>。如果单片机的引脚不紧张,用一个引脚控制它,可以方便地产生闪烁和 熄灭效果。比通过数据端移位控制要省时省力。
DflTAUUTPUTS
Vcc YO VI ¥2 Y3 Y4 Y5 ¥6
A B C G2S USB Cl Y7 GND
* "
' ------- --------- ' OUTPUT
SELECT
EMABIE
对3个输入信号进行译码。得到 8个输出状态。
G1,G2A,G2B,为数据允许输出端, G2A,G2B 低电平有效。G1高电平有效。A,B,C 为译码信号输出端,
Y0~Y7为译码输出端,低电平有效。
4、74IS164 参数
四、测试过程及数据
1.测试仪器:
CVAVR 和 AVR Studio 软件,JTAG 下载线,easyavr 开发板。
ttfl —
16 —恢
2
15 Qc —
—QA Qo
U ? — SER (4)
13 一
O E
—G
5
12
O F 一
—RCK
11
Q G —
— SC 札 g 丄
10 一- —SCLR
亠$
9 ND —
—Q'H
3、74IS138 参数
2.测试与分析:
(1>测试点阵:把万用表调到测二极管的档,用红表笔触行输入端,用黑表笔触列输出端。注意观察 2 56个点是否正常亮。
(2>测试按键:直接连接按键到单个可用LED 发光二极管(这里采用实验板上发光二极管>,按下每个按
键看LED是否可亮,若亮,说明按键可用。
(3>程序调试:通过Cvavr和AVR Studio在线仿真调试,知道程序编译并运行成功。
(4>正式操作过程。
1通电之后,数码管开始显示11:00 : 30。没有按键,则依次滚动显示原子物理学30s,课间休息20秒,无课30秒,之后停止显示。
2.显示过程中,若按下key1 键,显示有活动,再按下,返回。
3、显示课间时,按key2,实现课间休息和心图案的转换。
4|、显示过程中,按key3键,实现显示效果的滚动快慢显示。
5|显示过程中,按key4键,显示正弦波动的的国旗。
五、成员分工及工作情况
六、参考资料
《AVR单片机嵌入式系统原理与应用实践》马潮