




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、单片机课程设计基于at89c52的88led汉字显示设计学院:信息科学技术学院班级: 姓名:指导老师:李京兵 目录摘要21总体方案31.1工作原理:31.2总体设计:32各单元电路特性及功能52.1at89c525主要功能特性:52.274hc16462.374hc57382.4点阵8*8led93程序设计103.1字段显示103.2程序流程图113.3程序清单124仿真结果155设计心得166参考文献17摘要 电子技术迅猛发展,点阵式显示器件作为现代信息显示的重要媒体,在金融证券、体育、机场、交通、商业、广告宣传、邮电电信、指挥调度、国防军事等许多领域中得到了广泛应用。因此点阵式显示器件的研
2、制、生产也的到了迅速的发展,并逐步形成产业,成为光电子行业的新兴产业领域。本设计以at89c52单片机开发板作为主控制模块,利用74hc573组成简单的外围电路驱动88led点阵显示屏,并利用74hc164实现输出数据的串并转化,通过keil软件编程来实现字符以及汉字显示。用proteus软件来连接电路及仿真。关键字: 单片机 at89c52 88led点阵 汉字显示1 总体方案1.1 工作原理:利用单片机at89c52作为本系统的中控模块。点阵led采用扫描的方式进行显示,本设计采用行扫描的方式。设置单片机at89c52的p2.5端口为数据串行输出,再用一个8位移位寄存器74hc164实现串
3、并转化,把数据转化为8位并行输出方式。设置单片机at89c52的p2.6端口为扫描字输出,通过一片74hc573驱动点阵8*8led实现汉字及字符的显示。1.2 总体设计:点阵8*8led电子显示屏为显示模块,单片机at89c52为控制模块,74hc573为驱动模块,74hc164为串并转换模块。设计总框图如图1:at89c52点阵8*8led74hc16474hc573图1 总框图设计总电路图,如图2图2 总电路图2 各单元电路特性及功能2.1 at89c52at89c52是一个低电压,高性能cmos 8位单片机,片内含8k bytes的可反复擦写的flash只读程序存储器和256 byte
4、s的随机存取数据存储器(ram),器件采用atmel公司的高密度、非易失性存储技术生产,兼容标准mcs-51指令系统,片内置通用8位中央处理器和flash存储单元,功能强大的at89c52单片机可提供许多较复杂系统控制应用场合。at89c52有40个引脚,32个外部双向输入/输出(i/o)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2个读写口线,at89c52可以按照常规方法进行编程,但不可以在线编程。其将通用的微处理器和flash存储器结合在一起,特别是可反复擦写的flash存储器可有效地降低开发成本。主要功能特性: 兼容mcs51指令系统 8k可反复擦写(
5、1000次)flash rom 32个双向i/o口 256x8bit内部ram 3个16位可编程定时/计数器中断 时钟频率0-24mhz 2个串行中断 可编程uart串行通道 2个外部中断源 共8个中断源 2个读写中断口线 3级加密位 at89c52引脚图,如图3图3 at89c52引脚图电路设计:设置p0端口为8位扫描字输出端,在51单片机中,p0口是漏极开路的,必须加上拉电阻,分别在p0.0到p0.7端口加一个100的电阻。设置p2.4端口为模拟串口时钟,接到74hc164的d24。设置p25端口为模拟串口数据,接到74hc164的d25。设置p26端口为段码选通位-控制74hc573段输
6、出。如总电路图中所示。2.2 74hc16474hc164用来做8位串入、并出移位寄存器。74hc164是高速硅门cmos器件,与低功耗肖特基型 ttl (lsttl) 器件的引脚兼容。74hc164 是 8 位边沿触发式移位寄存器,串行输入数据,然后并行输出。数据通过两个输入端(dsa 或 dsb)之一串行输入;任一输入端可以用作高电平使能端,控制另一输入端的数据输入。两个输入端或者连接在一起,或者把不用的输入端接高电平,一定不要悬空。时钟(cp)每次由低变高时,数据右移一位,输入到q0,q0是两个数据输入端(dsa 和 dsb)的逻辑与,它将上升时钟沿之前保持一个建立时间的长度。 主复位(
7、mr)输入端上的一个低电平将使其它所有输入端都无效,同时非同步地清除寄存器,强制所有的输出为低电平。74hc164引脚图,如图4图4 74hc164引脚图引脚说明: 符号引脚说明dsa1数据输入dsb2数据输入q0q336输出gnd7地 (0 v)cp8时钟输入(低电平到高电平边沿触发)/m/r9中央复位输入(低电平有效)q4q71013输出vcc14正电源功能说明:工作模式输入输出/m/rcpdsadsbq0q1 至 q7复位(清除)llxxll 至 l移位hlllq0 至 q6hlhlq0 至 q6hhllq0 至 q6hhhhq0 至 q6h = high(高)电平 h = 先于低-至-
8、高时钟跃变一个建立时间 (set-up time) 的 high(高)电平 l = low(低)电平 l = 先于低-至-高时钟跃变一个建立时间 (set-up time) 的 low(低)电平 q = 小写字母代表先于低-至-高时钟跃变一个建立时间的参考输入 (referenced input) 的状态 = 低-至-高时钟跃变电路设计:74hc164引脚1和2作为数据输入端口,都接入at89c52的p25端口,引脚8作为时钟输入(低电平到高电平边沿触发),接入at89c52的p24端口,引脚9作为中央复位输入(低电平有效),接入一个+5伏的vcc。q0q7作为数据输出端口,加上电线标号d1到
9、d8,接入点阵8*8led的一端的8个端口。引脚7接地,引脚14接电源。2.3 74hc573高性能硅门cmos 器件。器件的输入是和标准cmos输出兼容的;加上拉电阻,他们能和ls/alsttl输出兼容。当锁存使能端为高时,这些器件的锁存对于数据是透明的(也就是说输出同步)。当锁存使能变低时,符合建立时间和保持时间的数据会被锁存。输出能直接接到cmos,nmos 和ttl 接口上操作电压范围:2.0v6.0v低输入电流:1.0uacmos 器件的高噪声抵抗特性74hc573引脚图,如图5图5 74hc573引脚图74hc573功能表输入输入输入输出输出使能锁存使能dqlhhhlhllllx不
10、变hxxzx 不用关心、z 高阻态电路设计:74hc573做驱动电路,提高电流。d0到d7作为数据输出端口,接到at89c52的p00到p07端口,q0到q7作为数据输出端口,分别接一个10的电阻。引脚1接地,低电平有效,是控制输出使能端,使输出有效,引脚11接at89c52的p26端口,高电平有效,控制锁存使能端。 2.4 点阵8*8led图6为8*8点阵led外观及引脚图,图7为它的等效电路。只要其对应的x、y轴顺向偏压,即可使led发亮。例如如果想使左上角led点亮,则y0=1,x0=0即可。应用时限流电阻可以放在x轴或y轴。点阵led一般采用扫描式显示,实际运用分为三种方式:(1) 点
11、扫描; (2) 行扫描;(3) 列扫描。若使用第一种方式,其扫描频率必须大于1024hz,周期小于1ms即可。若使用第二和第三种方式,则频率必须大于128hz,周期小于7.8ms即可符合视觉暂留要求。此外一次驱动一列或一行(8颗led)时需外加驱动电路提高电流,否则led亮度会不足。本次设计所用的驱动电路是采用一个74hc573。图 6 8*8点阵led外观及引脚图图7 8*8点阵led等效电路电路设计:点阵8*8led的一段8个端口接74hc164的q0到q8端口,另一端的8个端口接到74hc573输出端q0到q8所接的电阻。3 程序设计3.1 字段显示输出的字符是:电子设计电子二班 字符是
12、一个一个显示的,根据点阵显示的原理以及字符的特点计算出每个字符显示的数据,如程序中所示。3.2 程序流程图开始显示第一行时间到?显示下一行第八行?nyyn图8 主程序流程图开始显示符号1时间到?显示下一符号最后一个?nyn图9 单个字符显示流程图3.3 程序清单/跳线设置:默认跳线位/效果:在点阵上会出现简单的图形与字符#include sbit dula=p26; /段码选通位-控制74hc573段输出#define uchar unsigned char sbit simuseri_clk=p24; /用p24模拟串口时钟sbit simuseri_data=p25; /用p25模拟串口数
13、据sbit a7=acc7;#define uint unsigned int unsigned char code tab=0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80;unsigned char code digittab448=0x08,0x3e,0x2a,0x3e,0x2a,0x3e,0x88,0xf8,0x7c,0x20,0xfe,0x10,0x10,0x10,0x14,0x18,0x72,0x52,0xdf,0x02,0x72,0x52,0x26,0xda,0x22,0x22,0x27,0xfa,0x22,0x22,0x26,0x22,0x00,0
14、x38,0x10,0x10,0x10,0x10,0x10,0x38,/i0x00,0x6c,0x92,0x82,0x44,0x28,0x10,0x00, /红心字符0x08,0x3e,0x2a,0x3e,0x2a,0x3e,0x88,0xf8,0x7c,0x20,0xfe,0x10,0x10,0x10,0x14,0x18,0x00,0x00,0x3c,0x00,0xff,0x00,0x00,0x00,0x10,0xf7,0x5a,0xff,0x5a,0x52,0xf7,0x10, 0x00,0xdb,0x5a,0x5a,0x5a,0x5a,0x7e,0x24,/w0x00,0x42,0x42,
15、0x42,0x42,0x42,0x42,0x3c,/u0x00,0x38,0x10,0x10,0x10,0x10,0x14,0x18,/j0x00,0x38,0x10,0x10,0x10,0x10,0x10,0x38,/i0x00,0x34,0x4c,0x44,0x44,0x44,0x44,0x44,/n0x00,0x38,0x44,0x04,0x04,0x74,0x44,0x38,/g0x00,0x6c,0x92,0x82,0x44,0x28,0x10,0x00, /红心字符0x00,0x7c,0x40,0x20,0x10,0x08,0x04,0x7c, /z0x00,0x44,0x44,0
16、x44,0x7c,0x44,0x44,0x44,/h0x00,0x38,0x44,0x44,0x44,0x7c,0x44,0x44,/a0x00,0x3c,0x42,0x42,0x42,0x42,0x42,0x3c,/o0x00,0xc6,0xaa,0xaa,0x92,0x82,0x82,0x82,/m0x00,0x7c,0x04,0x04,0x7c,0x04,0x04,0x7c,/e0x00,0x38,0x10,0x10,0x10,0x10,0x10,0x38,/i0x00,0x3c,0x42,0x42,0x42,0x52,0x62,0x7c,/q0x00,0x38,0x10,0x10,0x
17、10,0x10,0x10,0x38,/i0x00,0x38,0x44,0x44,0x44,0x7c,0x44,0x44,/a0x00,0x34,0x4c,0x44,0x44,0x44,0x44,0x44,/n0x00,0x6c,0x92,0x82,0x44,0x28,0x10,0x00, /红心字符0x00,0x7c,0x40,0x20,0x10,0x08,0x04,0x7c, /z0x00,0x44,0x44,0x44,0x7c,0x44,0x44,0x44,/h0x00,0x38,0x44,0x44,0x44,0x7c,0x44,0x44,/a0x00,0x34,0x4c,0x44,0x4
18、4,0x44,0x44,0x44,/n0x00,0x38,0x44,0x04,0x04,0x74,0x44,0x38,/g0x00,0x7c,0x04,0x04,0x7c,0x04,0x04,0x04,/f0x00,0x38,0x44,0x44,0x44,0x7c,0x44,0x44,/a0x00,0x34,0x4c,0x44,0x44,0x44,0x44,0x44,/n0x00,0x6c,0x92,0x82,0x44,0x28,0x10,0x00, /红心字符0x00,0x44,0x44,0x48,0x30,0x10,0x08,0x04,/y0x00,0x38,0x44,0x44,0x44,
19、0x7c,0x44,0x44,/a0x00,0x34,0x4c,0x44,0x44,0x44,0x44,0x44,/n0x00,0x44,0x44,0x48,0x30,0x10,0x08,0x04,/y0x00,0x38,0x44,0x44,0x44,0x7c,0x44,0x44,/a0x00,0x3c,0x42,0x42,0x42,0x42,0x42,0x3c,/o ; unsigned int timecount; unsigned char cnta; unsigned char cntb; /-/ 函数名称:out_simuseri / 输入参数:data_buf / 功能说明:8位同
20、步移位寄存器,将data_buf的数据逐位输出到 simuseri_data/-void out_simuseri(uchar data_buf) uchar i; i=8; acc=data_buf; do simuseri_clk=0; simuseri_data=a7; simuseri_clk=1; acc=acc1; while(-i!=0);void delay() uint i; i = 0x1ff; while(i-); void main(void) dula=1;p0=0xff; tmod=0x01; th0=(65536-3000)/256; tl0=(65536-3000)%256; tr0=1; et0=1; ea=1; while(1) ; void t0(void) interrupt 1 using 0 th0=(65536-3000)/256; tl0=(65536-3000)%256; p0=0xff; / 消隐,很重要,不加要红一片 out_simuseri(tabcnta); p0= digittabcntbcnta; cnta+; if
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- T/CAS 431-2020综合管廊管线支吊架技术规程
- T/CAQI 29-2021中小学教室空气质量管理指南
- T/CAPE 10021-2020设备全寿命周期管理导则
- 城管文职面试题及答案
- 郏县美术面试题及答案
- 财富顾问考试题及答案
- 歌舞团面试题及答案
- 互联网奇葩面试题及答案
- 人社局电工技能培训课件
- 成华区新质生产力
- 2025届辽宁省葫芦岛市第二次模拟考试二模英语试题(原卷版+解析版)
- 2025新疆交投集团所属子公司招56人笔试参考题库附带答案详解
- 2025-2030年中国铜合金散热器材料行业市场现状供需分析及投资评估规划分析研究报告
- 医疗器械销售流程与技巧
- 黑龙江省农村信用社联合社员工招聘考试真题2024
- 2025上海车展专题报告
- 纺织承包合同协议书
- 软件转让合同协议书
- 2025年北京市丰台区中考数学一模试卷
- 续签采购合同范本(标准版)
- 智能垃圾分类箱项目投资商业计划书范本(投资融资分析)
评论
0/150
提交评论