单片机课程设计 王伟 - 图文
更新时间:2024-03-18 08:08:01 阅读量: 综合文库 文档下载
- 单片机课程设计推荐度:
- 相关推荐
永城职业学院
课 程 设 计(论 文)
题 目: LED点阵显示系统设计及制作
系 部: 机电工程系 班 级: 机电一体化09 7班 姓 名: 王伟 指导老师: 卜闪闪 时 间: 2011年05月15日
单片机课程设计
目录
1 课题名称??????????????? 2 2 设计任务及要求????????????2 3 工作原理 ???????????????2 3.1阵屏原理 ………………………………….2 3.2 89SC51的引脚及相关功能……………..3 4 方案选择 ???????????????4 4.1方案一………………………………………4 4.2 方案二……………………………………...5 4.3方案选择 …………………………………..6 5设计与仿真???????????????6 5.1软硬件设计………………………………...6 5.1.1硬件设计………………………………6 5.1.2软件设计………………………………7 5.2绘制电路图及印刷板图…………………..11 5.3计算机仿真………………………………..11 6课设总结 ???????????????14 7参考文献 ???????????????14
1
单片机课程设计
1 课题名称
LED点阵显示系统设计与制作
2 设计任务及要求
1、掌握LED显示屏控制系统的显示原理,学习LED点阵显示
数字和字符的编程方法。
2、结合微机原理、单片机技术知识,查阅有关资料,设计一个以单片机为核心的LED点阵显示器系统,采用点阵LED作为显示器显示0-9及其它字符(例如显示\。
3 工作原理
3.1阵屏原理
8*8点阵为单色共阳模块,单点的正向工作电压为(Vf)=1.8V,
正向电流是(If)=8~10mA。静态点亮器件时(64点全部亮)的总电流是640mA,总电压是1.8V,总功率为1152mW。动态时取决与扫描频率(1/8s或1/16s),单点瞬间电流可达80~160mA。
点阵内部结构及外形如上,8X8点阵共由64个发光二极管组
2
单片机课程设计
成,且每个发光二极管是放置在行线和列线的交叉点上,当对应的某一行置1电平,某一列置0电平,则相应的二极管就亮;如要将第一个点点亮,则9脚接高电平13脚接低电平,则第一个点就亮了;如果要将第一行点亮,则第9脚要接高电平,而(13、3、4、10、6、11、15、16)这些引脚接低电平,那么第一行就会点亮;如要将第一列点亮,则第13脚接低电平,而(9、14、8、12、1、7、2、5)接高电平,那么第一列就会点亮 。
表1 8*8 LED点阵管脚分布 1 2 3 4 5 6 7 8 控制第五行显示 控制第七行显示 控制第二列显示 控制第三列显示 控制第八行显示 控制第五列显示 控制第六行显示 控制第三行显示 接高 接高 接低 接低 接高 接低 接高 接高 9 10 11 12 13 14 15 16 控制第一行显示 控制第四列显示 控制第六列显示 控制第四行显示 控制第一列显示 控制第二行显示 控制第七列显示 控制第八列显示 接高 接低 接低 接高 接低 接高 接低 接低 3.2 89SC51的引脚及相关功能
40个引脚按引脚功能大致可分为4个种类:电源、时钟、控制和I/O引脚。如右图
⒈) 电源: ⑴ VCC - 芯片电源,接+5V;
⑵ VSS - 接地端;
注:用万用表测试单片机引脚电流一般为0v或者5v,这是标准的TTL电平,但有时候在单片机程序正在工作时候测试结果并不是这个值而是介于0v-5v之间,其实这之是万用表反映没这么快而已,在某一个瞬间单片机引脚电流还是保持在0v或者5v的。
⒉) 时钟:XTAL1、XTAL2 - 晶体振荡 电路反相输入端和输出端。
3
单片机课程设计
⒊) 控制线:控制线共有4根,
⑴ ALE/PROG:地址锁存允许/片内EPROM编程脉冲
① ALE功能:用来锁存P0口送出的低8位地址
② PROG功能:片内有EPROM的芯片,在EPROM编程期间,此引脚输入编程脉冲。
⑵ PSEN:外ROM读选通信号。 ⑶ RST/VPD:复位/备用电源。
① RST(Reset)功能:复位信号输入端。 ② VPD功能:在Vcc掉电情况下,接备用电源。 ⑷ EA/Vpp:内外ROM选择/片内EPROM编程电源。 ① EA功能:内外ROM选择端。
② Vpp功能:片内有EPROM的芯片,在EPROM编程期间,施加编程电源Vpp。 ⒋) I/O线
80S51共有4个8位并行I/O端口:P0、P1、P2、P3口,共32个引脚。P3口还具有第二功能,用于特殊信号输入输出和控制信号(属控制总线)。
4 方案选择
4.1方案一
4.1.1方案原理图:
4
单片机课程设计
4.1.2方案分析:
LED一般采用扫描式显示,实际运用分为三种方式: 点扫描 、行扫描、 列扫描
采用列扫描、行施加数据信号的基本驱动方法。任意时间只有一列施加高电平信号,其余各列均为低压信号。行施加对应该列的数据信号,低电平有效。
以8x8 LED点阵列显示器为例说明字符显示原理,8列顺序扫描结束后,将完成一帧字符的显示。一帧扫描结束后,列扫描从第一行重新开始,周而复始。若行数据保持不变,则显示静态字符。反之,行数据发生变化,则显示内容将发生变化,如果保持前后帧内容的连贯性,就可以显示动态字符。
4.2 方案二
4.2.1方案原理图:
5
单片机课程设计
4.2.2方案分析:
由24块8*8点阵led构成一块大屏幕,单片机控制进行循环扫描,用多块移位寄存器控制输出内容,并由单片机串行输出显示内容的行编码,显示屏会滚动显示数字、字母。汉字等内容。
4.3方案选择
第一种方案,选用器件较少,控制比较简单,显示内容比较丰富,能满足课程设计的要求。第二种方案,显示内容丰富,显示效果好,但所用器件较多,控制比较复杂,所以选择第一种方案
5设计与仿真
5.1软硬件设计
5.1.1硬件设计
方案一中系统电路图可知系统整体由两大部分构成: 以单片机AT89S51为核心的模块;由1块8*8的LED点阵显示屏组成的显示模块;
以下是各单元电路的具体设计: 1、主控制单片机
本次设计使用的是AT89S51的最小系统电路,包括:电源、时钟脉冲、复位电路和程序存储器设定电路,只是接受少量的数字和字符,不用外接存储扩展。
时钟脉冲:AT89S51单片机的最高时钟脉冲频率已经达到了24MHz,它内部已经具备了振荡电路,只要在AT89S51的两个引脚(即19、18脚)连接到简单的石英振荡晶体的2个管脚即可,同
6
单片机课程设计
时晶体的2个管脚也要用30pF的电容耦合到地。
复位电路:89S51的复位引脚(RESET)是第9脚,当此引脚连接高电平超过2个机器周期,即可产生复位的动作。以12MHz的时钟脉冲为例,每个时钟脉冲为0.5μS,两个机器周期为1μS,因此,在第9脚上连接一个2μS的高电平脉冲,即可产生复位动作。最简单的就是只有一个电阻跟一个电容就可可靠复位的电路,电阻一般选择10K,电容一般选择10μF。
程序存储器设定电路:31脚接VCC,默认采用内部程序存储器。
2、LED显示模块
本次设计中8*8的LED电子显示屏的制作。相对而言是比较简单的。
5.1.2软件设计
(1) 显示代码的设计
假设显示数字“0” 1 2 3 4 5 6 7 8
● ● ●
● ● ● ● ● ● ● ● ● ●
● ● ●
7
单片机课程设计
因此,形成的列代码为00h,00h,3eh,41h,41h,41h,3eh,00h;只要把这些代码按扫描顺序分别送到相应的列线上面,即可实现“0”的数字显示。其他列代码用类似方法设计。
送显示代码过程如下所示
送第一列线代码到P3端口,同时置第一行线为“0”,其它行
线为“1”,延时2ms左右,送第二列线代码到P3端口,同时置第二行线为“0”,其它行线为“1”,延时2ms左右,如此下去,直到送完最后一列代码,又从头开始送。由于扫描速度很快,眼睛看到的是完整的数字。则类似可得其他数字及字符的编码。
(2)程序设计
1.流程图
程序采用循环扫描显
示,中断刷新显示内容的方法,字符转换周期为1秒,行扫描和字符控制用查表程序完成。
2.程序设计
TIM EQU 30H
8
单片机课程设计
CNTA EQU 31H CNTB EQU 32H
ORG 00H LJMP START
ORG 0BH //中断入口 LJMP T0X ORG 30H
START: MOV TIM,#00H //初始化 MOV CNTA,#00H MOV CNTB,#00H MOV TMOD,#01H
MOV TH0,#(65536-4000)/256//中断赋值 MOV TL0,#(65536-4000) MOD 256 SETB TR0 //开中断 SETB ET0 SETB EA
SJMP $ //循环等待
T0X: MOV TH0,#(65536-4000)/256 //中断程序
MOV TL0,#(65536-4000) MOD 256//恢复t0的计数初值 MOV DPTR,#TAB //查表,找到行选通信号 MOV A,CNTA MOVC A,@A+DPTR
MOV P3,A //行选通信号给p3口 MOV DPTR,#DIGIT MOV A,CNTB MOV B,#8 MUL AB ADD A,CNTA MOVC A,@A+DPTR
MOV P1,A //将显示信号给p1 INC CNTA MOV A,CNTA CJNE A,#8,NEXT MOV CNTA,#00H NEXT: INC TIM MOV A,TIM
9
单片机课程设计
CJNE A,#250,NEX //一秒后调整显示值 MOV TIM,#00H INC CNTB MOV A,CNTB
CJNE A,#10,NEX MOV CNTB,#00H NEX: RETI
TAB: DB 0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,07FH //行选通 DIGIT: DB 00H,00H,3EH,41H,41H,41H,3EH,00H //0 DB 00H,00H,00H,00H,21H,7FH,01H,00H //1 DB 00H,00H,27H,45H,45H,45H,39H,00H //2 DB 00H,00H,22H,49H,49H,49H,36H,00H //3 DB 00H,00H,0CH,14H,24H,7FH,04H,00H //4 DB 00H,00H,72H,51H,51H,51H,4EH,00H //5 DB 00H,00H,3EH,49H,49H,49H,26H,00H //6 DB 00H,00H,40H,40H,40H,4FH,70H,00H //7 DB 00H,00H,36H,49H,49H,49H,36H,00H //8 DB 00H,00H,32H,49H,49H,49H,3EH,00H //9 END
3.程序调试
调试程序采用Keil uVision3,首先启动keil软件的集成开发环境,点击“Project—>New Project”建立新的工程,选择AT89S51作为目标芯片。建立新的源文件,将程序输入并将源文件添加到工程中。
编译程序并改正程序中的错误,当程序没错误后点击“Debug—> Start/Stop Debug ”进入程序动态调试状态,验证程序能不
10
单片机课程设计
能正确的执行,不能则从新修改源程序,如果能则调试工作结束。
5.2绘制电路图及印刷板图
用protell99SE画出电路原理图如下:
5.3计算机仿真
电路图
11
单片机课程设计
(1) 打开Keil uVision3,新建Keil项目,选择AT89S51单片机作为CPU,新建C语言源文件,编写程序,并将其导入到“Source Group”中。在“Option for Target”对话窗口中,选中“Output”选项卡中的“Create HEX”选项和“Debug”选项卡中的“Use:Proteus VSM Simulator”选项。编译源程序,改正程序中的错误。
(2) 在Proteus ISIS中,选中AT89S51并单击鼠标左键,打开“Edit Compoment”对话窗口,设置单片机晶振频率为12MHZ,在此窗口中的“Program File”栏中,选择先前用Keil生成的.HEX文件。在Proteus ISIS的菜单栏中选择“File”->“Save Design”选项,保存设计。在Proteus ISIS的菜单栏中,打开“Debug”下拉菜单,在菜单中选中“Use Remote Debug Monitor”选项,以支持与Keil的联合调试。
(3) 在Keil的菜单栏中选择“Debug”->“Star/Stop Debug Session”选项,或者直接单击工具栏的“Debug>Star/Stop Debug Session”图标,进入程序调试环境。按“F5”键,顺序运行程序。调出“Proteus ISIS”界面,可以看到如下图的显示内容。
仿真结果
(1)显示数字
12
单片机课程设计
(2)显示字符
6课设总结
单片机是当前流行的控制技术,使用简单、功能强大、成本也
13
单片机课程设计
很低,对于我们以后的工作有很大用处,这次课设我们用单片机来完成不仅提高了我们对单片机的兴趣,而且使我们所学知识在实际中得到应用,提高了我们的应用能力。
课设使用了点阵,我们上课并没有学习这方面的内容,通过我们查资料,很快领会了点阵的使用方法,课设使用了多种软件帮助设计,让我们对设计方法有了进一步了解,而且我们设计了不同的显示内容,让我们对点阵的显示有了基本的掌握,我们感觉很有成就感。
我在这个学期做了一个单片机的小项目,对单片机已经比较熟悉,这次课设并没用感觉到很难,我们小组分工明确,各负其责,我主要负责软件的设计与调试。经过我们三个的共同努力,很快便将仿真结果做了出来。作出的结果可能不能让老师十分满意,但我们已经为我们的成果欢呼雀跃了。这只是一次简单的课设,在实际中的应用还会更难,这都需要我们不断的学习新的技术,不断提高自己的应用能力。
7参考文献
1、郑初华主编 汇编语言、微机原理及接口技术 第2版 北京:电子工业出版社 2006
2、张友德等 单片微型机原理、应用与实验 第五版 上海:复旦大学出版社 2003
3、网站:电子工程师之家 4沈红卫 主编,《基于单片机结构的智能系统设计与实现》,电子工业出版社
5黄惠媛 主编,《单片机原理与接口技术》,海洋出版社
14
正在阅读:
单片机课程设计 王伟 - 图文03-18
合资建设年产10000台康明斯6CT缸体30000台缸盖项目可行性研究报告09-18
经典3《情绪压力管理工作坊》(曹爱宏 )中华讲师网08-07
2015年人教版九年级上册化学:课题3走进化学实验室第一课时08-29
读书心得报告 (1)07-29
小学生庆元旦作文06-15
新会计科目使用说明06-12
装配式(PC)建筑外墙缝打胶施工方案06-12
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 王伟
- 单片机
- 课程
- 图文
- 设计
- 训练学复习题
- 27972农业机械 习题
- 九年级化学全册第9单元金属金属与酸的反应释疑解析素材新鲁教版
- 安全操作规程
- 集体备课活动记录之口语交际
- 安全标准资料第九册(文明(绿色)施工)
- 第三方备用板
- TRIBON M1教材--HULL1 Drafting - 图文
- 研究生政治考试试题及答案
- 工程经济学大作业
- 教学案例-粉刷匠
- 电力拖动自动控制系统期末复习题
- 研发项目奖金分配管理办法
- 注射用氨酪酸工艺验证报告1.0g - 图文
- 2012三级内蒙古自治区建造师继续教育理论考试试题及答案
- 公务员法执行情况的汇报
- 07~08学年度城北初级中学期末复习试卷2 - 图文
- 既有居住节能改造工程方案
- 项目奖金分配方案 - 图文
- 福建省2016届高三毕业班总复习单元过关形成性测试卷(文科)(立