太原理工单片机课程设计 电子课程表系统

发布时间:2011-01-05 15:29:33   来源:文档文库   
字号:

单片机课程设计报告

——电子课程表系统

组员

摘要:该实验设计基于AVRmega16开发板平台,根据点阵屏和七段数码管的基本原理,做出了方便实用的电子课表!

关键字:单片机 8*8点阵屏 电子课表

前言:

AVR单片机是一款功能十分强大,集成度非常高的数字处理系统。它集成了ADCDAC的模块,而且还有硬件滤波器!它基本上能够处理生活实时性不太强的模拟信号与数字信号,并实现通信!近年来,广告的普及和生活水平的提高,点阵大屏的需求日益强烈!

LED因其体积小,耗电量低,高亮度及环保等优点而被广泛应用于公共场所的大屏显示上,LED点阵大屏可应用于户外广告,交通导航,大厅公告,比赛的多媒体实时显示等领域。老校公教楼的点阵屏可以用来显示整幅课表。

我们的课程设计是基于AVR单片机,用8*8点阵显示滚动的课程英文名称,至于教室门口,可即时显示该教室内正在上的课程名称,方便师生选择合适的教室学习。所作的点阵屏具有可移植性强,功能简单,可以简单继续添加更多相关功能的模型,也可以扩展成多块点阵屏的组合,以改良显示效果。

正文:

一·系统设计目的、用途以功能

经过一段时间的观察,我们发现,同学们上自习是经常遇到一个问题。教室中有很多人,但不能确定里面是不是在上课,能不能到里面去自习。 公教楼进门的地方有电子大屏可以显示课程安排,但看起来过于麻烦,也不能具体到每一个教室。所以我们设想,能不能设计一个电子课表,放在每个教室的门口,显示当前在上的课程,并可以通过一定的按键来及时改变课程,以应对临时变化。后来经电子设计大赛的老师提醒,我们曾经想设计一种有控制终端的课程显示系统。即每个教室门口都有一个电子课表,通过终端的控制完成所有课表的显示。但后来发现,以我们的能力做这样的工作太过复杂,所以我们选择了更容易的方式:单一的放在教室门口的电子课表,只显示当前的课程。于是现在的作品应运而生。

电子课表的基本功能如下 主要功能有

1实现LED点阵屏汉字名称的滚动显示。

2实现不通课程汉字名称的自动切换。

3实现按键控制课程名称的临时更改。

4实现节日动画的显示。

5实现6位七段数码管显示时分秒。

6实现按键控制时间的调整。

硬件设计原理及内容

硬件设计思想:通过按键输入控制信号,由单片机进行处理,并将行列信号分别通过显示驱动输入点阵屏和数码管,控制点阵和数码管的显示.

Atmega16引脚图

硬件模块一

——基于Atmega16单片机,利用4片点阵屏的组合来实现16*16的显示,从而使汉字的显示变成可能。

我们分别采用两片74ls595来控制行的显示,用一块74ls154来控列的显示。本来计划要用两74ls138的级连来控制列的变化,后来在测试中发现出现一些问题,于是改为74ls154.154的使用可以减少资源的占用。

如焊接图所示,将左右点阵屏的行的控制引脚相连接,按照测试好的顺序排成015号,通过100欧的电阻后接到三极管上,三极管的作用是增大亮度。在三极管后同样使用100欧的电阻,最后接入两片74ls595.595的电源和接地连好后,控制端连接到单片机的控制端,100欧的电阻起限流作用。

将上下点阵屏的列的控制引脚相连接,同样按照顺序排为015号,接入74LS154芯片,再将154芯片的电源和接地连接,控制端借入单片机的控制端。

设置普通键盘,连到单片机的控制端作为电子课表系统的控制按键。

该模块做为电子课程表的核心系统,能直观的显示所需目的,简便、快捷、容易理解。围绕这一模块完成以后的拓展工作。

模块一硬件图

硬件模块二——七段数码管显示时分秒

1.74hc164实现8路并口输出的扩展,占用单片机的两个端口。编写hc164_send_byte()函数,程序控制hc164_data(PD6)作为数据线,将一字节由高位到低位,依次输出,输出时先根据该位的数值置PD6为“1或“0,然后控制hc164_CLKPA7)输出“1,再输出“0,模拟时钟信号,将PD6数据打入74hc164。循环移位8次后,将1字节的数据由低位到高位串行输入到74hc164中,即可在74hc164的输出端得到并行的8位数据,即七段数码管的段码值。

2.74ls138实现6路并口输出的扩展,将位选的段码值依次打入74ls13874ls138任一时刻只有一个输出口输出低电平,对应的一位数码管被选中,扫描6次后可以实现六位数码管的显示。

4.51欧电阻起限流的作用。

6.该模块可以实现时分秒的显示,补充并强化了电子课表的功能,为了节省单片机布局有些不合理的端口,用了两处串入并出的扩展。

模块二硬件图

3、系统设计所需资源及参数

Atmega16单片机、8×8共阳点阵屏4个、74HC595移位寄存器 2个、74ls154 译码器1个、100欧电阻32个、NPN8050三极管16个、排线若干、共阴三位七段数码管两块,74hc164移位寄存器一片,74ls138译码器一片,51欧电阻8

174HC154参数:

描述: 74HC595是告诉的硅结构的CMOS器件, 兼容低电压TTL电路,遵守JEDEC标准。74HC595是有8位移位寄存器和一个存储器,三态输出功能。 移位寄存器和存储器是分别的时钟。 数据在SCHcp的上升沿输入,在STcp的上升沿进入的存储寄存器中去。如果两个时钟连在一起,则移位寄存器总是比存储寄存器早一个脉冲。 移位寄存器有一个串行移位输入(Ds),和一个串行输出(Q7’,和一个异步的低电平复位,存储寄存器有一个并行8位的,具备三态的总线输出,当使能OE时(为低电平),存储寄存器的数据输出到总线。

特点:8位串行输入 /8位串行或并行输出 存储状态寄存器,三种状态; 输出寄存器可以直接清除 100MHz的移位频率。

输出能力: 并行输出,总线驱动;串行输出;标准中等规模集成电路。

274HC595参数:

QA--QH: 八位并行输出端。

QH': 级联输出端。SI: 串行数据输入端。

74595的控制端说明:

/SCLR(10): 低点平时将移位寄存器的数据清零。

SCK(11):上升沿时数据寄存器的数据移位。QA-->QB-->QC-->...-->QH;下降沿移位寄存器数据不变。(脉冲宽度:5V时,大于几十纳秒就行了)

RCK(12):上升沿时移位寄存器的数据进入数据存储寄存器,下降沿时存储寄存器数据不变。(5V时,大于几十纳秒就行了),更新显示数据。

/G(13): 高电平时禁止输出(高阻态)。如果单片机的引脚不紧张,用一个引脚控制它,可以方便地产生闪烁和熄灭效果。比通过数据端移位控制要省时省力。

374ls138参数

3个输入信号进行译码。得到8个输出状态。

G1,G2A,G2B,为数据允许输出端,G2A,G2B低电平有效。G1高电平有效。A,B,C为译码信号输出端,Y0~Y7为译码输出端,低电平有效。

474ls164参数

4、测试过程及数据

1.测试仪器:

CVAVRAVR Studio软件 JTAG下载线,easyavr开发板。

2.测试与分析:

1)测试点阵:把万用表调到测二极管的档,用红表笔触行输入端,用黑表笔触列输出端。注意观察256个点是否正常亮。

2)测试按键:直接连接按键到单个可用LED发光二极管(这里采用实验板上发光二极管),按下每个按键看LED是否可亮,若亮,说明按键可用。

3)程序调试:通过CvavrAVR Studio在线仿真调试,知道程序编译并运行成功。

4)正式操作过程。

1、通电之后,数码管开始显示110030。没有按键,则依次滚动显示原子物理学30s,课间休息20秒,无课30秒,之后停止显示。

2.显示过程中,若按下key1键,显示有活动,再按下,返回。

3、显示课间时,按key2,实现课间休息和心图案的转换。

4|、显示过程中,按key3键,实现显示效果的滚动快慢显示。

5|显示过程中,按key4键,显示正弦波动的的国旗。

5、成员分工及工作情况

高三垒:程序编写及调试,帮助检测硬件电路

尹燕利:焊接部分电路,编写字模

刘海生:材料购买、硬件焊接、系统测试、论文撰写、心得总结。

我们组的每个成员都认真负责地完成了各自负责的一块工作,使整个系统得以完成。

参考资料:

www.avrvi.com

AVR单片机嵌入式系统原理与应用实践》马潮

本文来源:https://www.2haoxitong.net/k/doc/ac4009f6ba0d4a7302763ab5.html

《太原理工单片机课程设计 电子课程表系统.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式