基于C51单片机的8×8 LED点阵屏汉字显示..

合集下载

51单片机8X8点阵滚动显示 - C51源代码

51单片机8X8点阵滚动显示 - C51源代码

51单片机8X8点阵滚动显示- C51源代码51单片机8X8点阵滚动显示- C51源代码/*--------------------------------------------------------------*///LED8*8滚动显示//列扫描,低电平有效/*--------------------------------------------------------------*///包含头文件#include <reg52.h>#include "74HC595.H"/*--------------------------------------------------------------*///全局变量定义unsigned char i;unsigned int m,n;/*--------------------------------------------------------------*///代码库#define num sizeof(table) //代码长度unsigned char codeaa[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; unsigned char code table[]= {//取模方式阴码列扫描逆向0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*" ",0*/0x00,0x7F,0x7F,0x39,0x6F,0x46,0x00,0x00,/*"R",1 */0x00,0x41,0x7F,0x7F,0x41,0x00,0x00,0x00,/*"I",2 */0x00,0x3E,0x7F,0x41,0x63,0x22,0x00,0x00,/*"C",3 */0x00,0x7F,0x7F,0x08,0x7F,0x7F,0x00,0x00,/*"H",4 */0x00,0x7F,0x7F,0x06,0x7F,0x7F,0x00,0x00,/*"M",5 */0x00,0x3E,0x7F,0x41,0x63,0x22,0x00,0x00,/*"C",6 */0x00,0x3F,0x7F,0x40,0x7F,0x3F,0x00,0x00,/*"U",7 */0x00,0x36,0x7F,0x49,0x7F,0x36,0x00,0x00,/*"8",9 */0x00,0x63,0x7F,0x1C,0x7F,0x63,0x00,0x00,/*"X",1 0*/1*/0x00,0x01,0x7F,0x7F,0x01,0x01,0x00,0x00,/*"T",1 3*/0x00,0x7F,0x7F,0x49,0x49,0x41,0x00,0x00,/*"E",1 4*/0x00,0x26,0x6F,0x49,0x7B,0x32,0x00,0x00,/*"S",1 5*/0x00,0x01,0x7F,0x7F,0x01,0x01,0x00,0x00,/*"T",1 6*/0x00,0x7F,0x7F,0x39,0x6F,0x46,0x00,0x00,/*"R",1 8*/0x00,0x61,0x79,0x5D,0x4F,0x43,0x00,0x00,/*"Z",1 9*/0x00,0x08,0x08,0x08,0x08,0x08,0x00,0x00,/*"-",2 0*/0x00,0x62,0x73,0x59,0x4F,0x46,0x00,0x00,/*"2",2 1*/0x00,0x3E,0x7F,0x41,0x7F,0x3E,0x00,0x00,/*"0",2 2*/0x00,0x3E,0x7F,0x41,0x7F,0x3E,0x00,0x00,/*"0",2 3*/4*/0x00,0x7F,0x7F,0x41,0x7F,0x3E,0x00,0x00,/*"D",2 6*/0x00,0x7F,0x7F,0x49,0x49,0x41,0x00,0x00,/*"E",2 7*/0x00,0x7F,0x7F,0x06,0x7F,0x7F,0x00,0x00,/*"M",2 8*/0x00,0x7F,0x7F,0x41,0x7F,0x7F,0x00,0x00,/*"O",2 9*/0x00,0x26,0x6F,0x49,0x7B,0x32,0x00,0x00,/*"S",3 1*/0x03,0x07,0x7C,0x7C,0x07,0x03,0x00,0x00,/*"Y",3 2*/0x00,0x26,0x6F,0x49,0x7B,0x32,0x00,0x00,/*"S",3 3*/0x00,0x01,0x7F,0x7F,0x01,0x01,0x00,0x00,/*"T",3 4*/0x00,0x7F,0x7F,0x49,0x49,0x41,0x00,0x00,/*"E",3 5*/0x00,0x7F,0x7F,0x06,0x7F,0x7F,0x00,0x00,/*"M",3 6*/0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*" ",37*/};/*--------------------------------------------------------------*///显示函数void Display(void){Ser_IN((aa[i])); //列扫描数据Ser_IN(table[i + n]); //查表取出行扫描数据Par_OUT(); //输出显示i++; if(i == 8) i = 0; //循环扫描m++; if(m == 500) {m = 0; n++;} //滚动速度控制if(n == num-7) n = 0; //循环显示}/*--------------------------------------------------------------*///定时器初始化void T0_init(void){TMOD = 0xf8;TH0 = 0xcc; //5000usTL0 = 0x00;IE = 0x82;TR0 = 1;}/*--------------------------------------------------------------*///定时器中断服务void T0_intservice(void) interrupt 1 using 0 {TH0 = 0xf8;TL0 = 0xcc;Display();}/*--------------------------------------------------------------*///主函数void main (void){T0_init();while(1);}74HC595.H//Note: 74HC595驱动// __ __//Note: MR 主复位接电源正极, OE 使能端,输出有效接电源负极/*--------------------------------------------* /#ifndef __74HC595_H__#define __74HC595_H__/*--------------------------------------------* /sbit SD = P1^4; //串行数据输入sbit ST_CK = P1^5; //存储寄存器时钟输入sbit SH_CK = P1^6; //移位寄存器时钟输入/*--------------------------------------------*///数码管断码和位码的定义//unsigned char codeseg[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e,0x00,0x ff};//0 1 2 3 4 5 6 7 8 9 a b c d e f 8 无//unsigned char codepos[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};//1 2 3 4 5 6 7 8/*--------------------------------------------* ///函数声明void Ser_IN(unsigned char Data); //串行数据输入void Par_OUT(void); //串行数据输出//void Ser_Par(unsigned char Data); //串行输入,并行输出/*--------------------------------------------* ///串行数据输入void Ser_IN(unsigned char Data)unsigned char i;for(i = 0; i < 8; i++){SH_CK = 0; //CLOCK_MAX=100MHzSD = Data & 0x80;Data <<= 1;SH_CK = 1;}}/*--------------------------------------------* ///并行数据输出void Par_OUT(void){ST_CK = 0;ST_CK = 1;}/*--------------------------------------------* ///串行输入,并行输出/*void Ser_Par(unsigned char Data){Ser_IN(Data);Par_OUT();}*//*--------------------------------------------* /#endif网站统计Powered by Tiki Wiki CMS Groupware | Theme: Fivealive - Lemon。

基于51单片机的LED8X8点阵设计

基于51单片机的LED8X8点阵设计

毕业设计报告题目基于51单片机点阵设计姓名学校班级学号专业指导教师完成时间摘要LED点阵显示屏是一种简单的汉字显示器,具有价廉、易于控制、使用寿命长等特点,可广泛应用于各种公共场合,如车站、码头、银行、学校、火车、公共汽车显示等。

现在大街小巷随处可见,所以研究LED点阵屏显得格外重要。

点阵 LED 显示屏作为一种现代电子媒体,具有灵活的显示面积可任意分割和拼装、高亮度、长寿命、数字化、实时性等特点,应用非常广泛。

目录目录第一章系统设计方案 (3)1.1系统方案 (3)第二章电路硬件设计 (4)2.1 单片机介绍 (4)2.2晶振时钟电路 (6)2.3复位电路 (6)2.4 按键模块 (7)2.5 点阵模块 (7)2.6 下载模块 (7)2.7 电源模块 (8)软件设计 (9)结论 (9)附录:原理图 (10)第一章系统设计方案1.1系统方案本设计由单片机最小系统,按键模块,点阵模块,下载接口,电源电路组成。

单片机最小由主控MCU,复位,晶振时钟组成,按键模块由8个独立按键组成,该系统完成了单片机控制数据输出到点阵模块。

RP1为P0口的上拉电阻。

按键设置功能,单片机数把据发送给点阵,显示出来。

第二章电路硬件设计2.1 单片机介绍本设计采用的是AT89C52单片机, AT89C52是一种可编程可擦除,低电压,8位微处理器。

1.电源引脚:Vcc (40脚):电源端,接+5V电源。

Vss(Gnd) (20脚):接地端,接+5V电源地端2. 外接晶体引脚:XTAL1和XTAL289C52内部有一个振荡器和时钟产生电路。

XTAL1(19脚):片内振荡电路反相放大器输入XTAL2(18脚):片内振荡电路反相放大器输出当采用内部时钟时,片外连接石英晶体和微调电容,产生原始的振荡脉冲信号。

采用外部时钟时, XTAL1输入外部时钟脉冲信号, XTAL2悬空.3. 控制信号引脚:RST、ALE、PSEN、EARST (9脚) : 复位信号输入端,高电平有效。

51单片机8x8点阵显示程序参考

51单片机8x8点阵显示程序参考

51单片机8x8点阵显示程序参考本程序用的是51单片机控制8*8点阵显示I(心形)U#include#define uint unsigned int#define uchar unsigned char//使用的IO口要根据自己接在单片机里的情况来更改sbit RCK = P3^6; //声明串行输出存储锁存线RCKsbit SCK = P3^5; //声明串行数据输入时钟线SCKsbit SER = P3^4; //声明串行数据输入线SERsbit HC = P0^0; //声明C信号接口sbit HB = P0^1; //声明B信号接口sbit HA = P0^2; //声明A信号接口#define ROW1 HC = 0; HB = 0; HA = 0; //定义使能第1行#define ROW2 HC = 0; HB = 0; HA = 1; //定义使能第2行#define ROW3 HC = 0; HB = 1; HA = 0; //定义使能第3行#define ROW4 HC = 0; HB = 1; HA = 1; //定义使能第4行#define ROW5 HC = 1; HB = 0; HA = 0; //定义使能第5行#define ROW6 HC = 1; HB = 0; HA = 1; //定义使能第6行#define ROW7 HC = 1; HB = 1; HA = 0; //定义使能第7行#define ROW8 HC = 1; HB = 1; HA = 1; //定义使能第8行uchar h;//显示数据,可以用取模软件来获取uchar iloveu[] = {0x00,0x3C,0x18,0x18,0x18,0x18,0x3C,0x00,0x00,0x36,0x7F,0x7F,0x3E,0x1C,0x08,0x00,0x00,0x22,0x22,0x22,0x22,0x22,0x1C,0x00,0x10,0x30,0x10,0x10,0x10,0x10,0x38,0x00,0x7C,0x08,0x10,0x08,0x04,0x44,0x38,0x00,0x10,0x30,0x10,0x10,0x10,0x10,0x38,0x00,0x08,0x18,0x28,0x48,0x7C,0x08,0x08,0x00};void delay(uint z) //延时函数,单位ms{uint i, j;for(i = z; i > 0; i--)for(j = 110; j > 0; j--);}void ROW() //行驱动函数switch(h){case 0: ROW1;break;case 1: ROW2;break;case 2: ROW3;break;case 3: ROW4;break;case 4: ROW5;break;case 5: ROW6;break;case 6: ROW7;break;case 7: ROW8;break;}RCK = 1; //595输出存储器锁存移位寄存器中的状态值RCK = 0; //595输出存储器状态保持}void in_data(uchar n) //数据打入74HC595函数{uchar x,y;y = n;for(x = 8; x > 0; x--){if(y&0x01)//特别注意先打入的是高位对应第8列,最后打入低位对应第1列SER = 1;elseSER = 0;y = y>>1;//对应先高位后对位应往右移位数据SCK = 0; //时钟接低,准备下一次读取数据SCK = 1; //595芯片读取数据}}void main(void){uchar m, in[56], n;RCK = 0; //清零锁存线SCK = 0; //清零时钟线for(h = 0; h < 56; h++)in[h] = iloveu[h]; //赋值运算,保护原始数据while(1) {for(m = 18; m> 0; m--){for(h = 0; h < 8; h++){in_data(in[h]);ROW();delay(1);}}//左移for(h = 0; h < 8; h++){if(in[h]&0x80)m = 1; //预先保存第一位数据elsem = 0;for(n = 0; n < 6; n++){if(in[h+8*n+8]&0x80) //没有改变in[h+8]的值in[h+8*n] = (in[h+8*n]<<1) + 1; //循环左移思想elsein[h+8*n] <<= 1; //第一位数据丢失了}if(m)in[h+8*n] = (in[h+8*n]<<1) + 1; //循环左移思想elsein[h+8*n] <<= 1;}}}。

基于单片机控制的8X8点阵汉字显示屏的设计

基于单片机控制的8X8点阵汉字显示屏的设计

陕西理工学院毕业设计基于单片机控制的点阵汉字显示屏的设计【摘要】该设计是一款以单片机AT89c51为控制器的LED点阵显示屏系统。

该系统可实现汉字的静态和动态特效显示。

系统采用PC机作为上位机,上位机向单片机发送控制命令和上位机所存储的显示代码,AT89c51单片机接收并处理PC机的控制命令以及显示代码,由显示驱动模块驱动一个16×16分辨率的LED点阵显示屏的扫描显示。

PC机与单片机之间的通信采用RS—232C通信标准来实现。

【关键字】AT89c51;LED点阵显示;串行通信陕西理工学院毕业设计Design and Realization of the Lattice Screen of LEDBased on AT89C51Abstract:This paper introduces a design of the LED lattice display system base on MCU AT89c51. The system can display Chinese characters of the show and from top to bottom and move around the magi c show. And can be cascaded to expand the screen size to achieve increased content purposes. The PC sends control commands and displays code to microcontroller, A T89c51 receives control commands from PC and shows the code, Driver module drives a 16×16-reso lution LED lattice LED’s panel display scan showed. Communication between PC and the microcontroller using RS-232C communications standards.Key words:A T89c51;lattice LED’s panel display;serial communication陕西理工学院毕业设计目录引言 (1)1.课题相关知识 (2)1.1AT89C51简介 (2)1.2串并转换器74LS164简介 (2)1.3锁存器74L373简介 (3)1.4DSP简介 (3)1.5EDA简介 (3)2.系统设计方案 (5)2.1通信系统设计 (5)2.2LED点阵显示屏设计 (5)2.3硬件设计方案图 (6)2.4系统软件编译器的选择 (6)2.5上位机控制传输软件设计 (7)3. 硬件开发 (8)3.1硬件整体设计概述及功能分析 (8)3.2控制系统设计 (8)3.3译码电路设计 (10)3.4列驱动电路设计 (10)3.5通信系统硬件设计 (11)3.6电源设计 (11)3.7LED显示屏设计 (12)4. 软件设计及开发 (14)4.1程序设计流程图 (14)4.2LED显示屏的显示方式的设计 (14)4.2.1点阵数据表达方式的设计 (15)4.2.2 显示程序的设计 (16)4.3通信设计 (17)5. 系统测试 (19)5.1系统硬件部分调试方法 (19)5.1.1串口调试 (19)5.2系统联合调试及结果 (19)总结 (21)致谢 (22)参考文献 (23)科技外文翻译 (24)附录A 硬件原理图 (31)附录B 仿真图 (32)附录C 设计程序 (33)陕西理工毕业设计引言随着现代计算机技术和自动化技术的发展,带动了嵌入式技术的飞速发展。

基于AT89C5151的8×8点阵LED数码字符显示器的设计

基于AT89C5151的8×8点阵LED数码字符显示器的设计

目录第一章引言 (1)第二章方案选择及总体设计 (3)2.1 方案确定 (3)2.1.1 功能要求 (3)2.1.2 方案确定 (3)2.2 器件选择 (3)第三章控制系统硬件设计 (4)3.1 整体模块设计 (4)3.2 单片机最小系统设计 (4)3.2.1 晶振电路设计 (4)3.2.2 复位电路设计 (5)3.3 驱动电路设计 (6)3.4 LED点阵显示设计 (7)第四章控制系统软件设计 (10)4.1 软件设计思想 (10)4.2 主程序流程图 (11)第五章系统仿真及性能分析 (12)5.1 软件系统仿真 (12)5.2 硬件仿真结果分析 (12)第六章总结致谢 (15)第七章参考文献 (17)附录 (18)附录A 硬件结构图 (18)附录B 主程序清单 (18)附录C 元件清单 (22)第一章引言LED是光二极管LIGHT EMINTTING DIODE的英文缩写,是一种直接能将电能转化为可见光的半导体。

LED点阵是由发光二极管排列组成的显示器件,在日常生活中随处可见,其发光类型属于冷光源,效率及发热量是普通发光器件难以比拟的。

它采用低电压扫描驱动,具有耗电少、使用寿命长、成本低、亮度高、故障少、视角大、可视距离远、可靠耐用、应用灵活、安全、响应时间短、绿色环保、控制灵活等特点。

随着社会经济的不断进步,人们对LED显示器的认识不断加深,其应用领域越来越广。

本设计是基于AT89C5151的8×8点阵LED数码字符显示器的设计,LED点阵显示屏作为一种新兴的显示器件,是由多个独立的LED发光二极管封装而成. LED点阵显示屏可以显示数字或符号, 通常用来显示时间、速度、系统状态等。

本文讲述了基于AT89C51单片机8×8 LED数码字符显示器的基本原理、硬件组成与设计,Proteus软件仿真,程序设计等基本环节与相关技术。

LED电子显示屏具有所显内容信息量大,外形美观大方,操作使用方便灵活。

基于C51单片机的8×8 LED点阵屏汉字显示

基于C51单片机的8×8 LED点阵屏汉字显示

单片机课程设计报告—8×8 LED点阵屏显示“大”字第一章设计内容及要求 (3)第二章总体设计 (3)2.1 系统框图…………………………………………………3、42.2 设计步骤 (4)第三章各部分电路设计 (4)3. 1 复位电路………………………………………………4 、53.2时钟电路……………………………………………5、 6 3.3显示电路…………………………………………………6、73. 4大字取模…………………………………………………73.5 LED 引脚连接方式……………………………………8、93.6总体电路 (9)第四章程序设计 (9)4.1软件流图......................................................9、10 4.2大字的模 (10)4.2主程序………………………………………………10、11 4.3 C51单片机开发工具:keil 4 Proteus使用方法…11、16第五章仿真结果 (16)第六章总结与体会................................................17、18 第七章参考文献 (18)附录程序清单……………………………………………19、20基于C51单片机的8×8 LED点阵屏汉字显示一设计要求1、设计一个8*8点阵LED电子显示屏2、要求在目测条件下LED显示屏各点亮度均匀、充足,可静态显示一个大字。

二总体方案设计2.1系统框图根据设计要求与设计方案,硬件电路的设计框图如图1所示。

硬件电路结构由8个部分组成:时钟电路、复位电路、按键接口电路、电源电路、点阵显示阳极电路、点阵显示阴极电路和8*8点阵显示电路。

2.2设计步骤根据设计要求,初步确定设计方案如下: 1. 选择STC89C52单片机(晶振频率为f=12MHZ)作为整个系统的核心器件,对整个系统进行总体控制,发送并时时处理系统信息。

基于单片机的8X8 LCD汉字显示器的课程设计

基于单片机的8X8 LCD汉字显示器的课程设计

中北大学课 程 设 计 说 明 书学生姓名: 学 号: 学 专 题 院: 业: 目: 中北大学信息商务学院电子信息工程 专业综合实践之硬件部分:基于单片机的汉字点阵系统的设计指导教师:张敏娟职称:讲师2013年 元 月 6 日I中北大学课程设计任务书2012/13 学年第 一 学期学 专院: 业:中北大学信息商务学院 电子信息工程学 生 姓 名: 学 号: 课程设计题目: 专业综合实践之硬件部分:基于单片机的汉字点阵系统的设计起 迄 日 期: 课程设计地点: 指 导 教 师: 系 主 任:2013 年 1 月 7 日~2013 年 1 月 18 日无损楼 201,510 张敏娟 王浩全下达任务书日期:II2013 年 1 月 6 日课 程 设 计 任 务 书1.设计目的:基于 C51 单片机,完成 LCD 汉字点阵系统的设计。

使学生将掌握的硬件理论知 识与实践结合,提高学生的科研、综合创新能力。

2.设计内容和要求(包括原始数据、技术参数、条件、设计要求等) :任务要求: 1、 掌握和熟悉单片机系统的开发环境 KEIL C51 和相应的软件; 2、 采用 80C51 单片机和 LCD 点阵显示模块实现组合点阵显示; 3、 具有显示内容自动更新功能,完成对任意存储信息完整显示。

5、基于实验箱对系统进行仿真和程序调试; 6、基于 PROTEL99 或 altium deisigner 绘制系统的原理图和制版图。

3.设计工作任务及工作量的要求〔包括课程设计计算说明书(论文)、图纸、 实物样品等〕 :系统的硬件原理图和制版图; 基于实验箱调试成功的系统软件程序和界面; 设计说明书III课 程 设 计 任 务 书4.主要参考文献:[1]潘松,黄继业.EDA 技术实用教程.-3 版.-北京:科学出版社,2006 综合电子设计与 实践,王振红,清华大学出版社,2008 年 9 月第 2 版; [2]曾繁泰,陈美金.VHDL 程序设计.北京:清华大学出版社,2000; [3]褚振勇,翁木云.FPGA 设计及应用.西安:西安电子科技大学出版社,2002 [4] 综合电子设计与实践王振红清华大学出版社 2008 年 9 月第 2 版; [5] EDA 实用技术及应用刘艳萍国防工业出版社 2006 年第 1 版 [6] 基于 QuartusII 的 FPGA/CPLD 数字系统设计实例张丽敏电子工业出版社 2007 [7] CPLD/FPGA 常用模块与综合系统设计实例精讲罗苑棠电子工业出版社 2007。

【免费下载】基于51单片机的8乘8LED点阵显示屏的设计

【免费下载】基于51单片机的8乘8LED点阵显示屏的设计

基于单片机的8*8LED点阵显示屏的设计随着单片机在各个领域的广泛应用,许多用单片机作控制驱动LED显示屏也应运产生。

本系统设计使用单片机MCS-51控制扫描方法实现LED点阵显示器的字符的显示,介绍了用单片机进行显示系统开发的方法,单片机软件、硬件调试技术,还有点阵显示驱动扩展的一般方法。

1.引言1.1 研究的目的、意义LED因其体积小,耗电量低,亮度及环保等优点而被广泛应用于公共场所的大屏显示上,LED点阵大屏可应用于户外广告,交通导航,大厅公告,比赛的多媒体实时显示等领域。

本设计作品的用途正是在于实现大屏显示的核心功能,即汉字的显示,可实际应用于简单的显示系统中,如简单的排队叫号显示屏,电梯显示屏等。

通过此次设计将单片机软硬件结合起来对程序进行编辑,校验,锻炼实践能力和理论联系实际的能力。

1.2 本设计所要做的工作为了完成该设计实现,经过考虑论证,决定分为以下几个阶段进行:(1)对课题进行全面的分析,明确系统要实现的功能,大致了解要解决的问题,制定总的设计方案;(2)根据论证设计硬件系统并画出电路图,并根据电路图在面包板上连接电路图;(3)在硬件的基础上设计软件程序;(4)利用仿真器编译软件程序,进行调试仿真;(5)把调试成功的程序利用烧入器烧入到芯片中去;(6)把固化好程序的芯片插入到实际应用系统,投入到实际使用。

2.系统设计方案2.1系统构成框图3.硬件电路设计3.1 主要器件介绍3.1.1 LED点阵LED点阵显示屏采用1个8*8共64个象素的点阵,通过LED点阵资料判断出该点阵的引脚分布,如图3.1所示。

8*8的LED点阵为单色共阳模块,单点的工作电压为正向(Vf)=1.8v,正向电流(if)=8-10MA。

静态点亮器件时(64点全亮)总电流为640mA。

总电压为1.8v,总功率为1.15w.动态时取决于扫描频率(1/8或1/16秒),单点瞬间电流可达80-160mA。

图3.1点阵LED扫描法介绍点阵LED一般采用扫描式显示,实际运用分为三种方式:(1)点扫描(2)行扫描(3)列扫描若使用第一种方式,其扫描频率必须大于16*64=1024HZ,周期小于1MS即可。

单片机课程设计报告 8乘以8点阵 汉字显示

单片机课程设计报告  8乘以8点阵   汉字显示

一、设计题目点阵式汉字LED显示屏的制作使用了64个高亮度发光管,组成了8行8列的发光点阵。

制作了一个轮流显示。

二、课程设计目的为了进一步巩固学习的理论知识,增强学生对所学知识的实际应用能力和运用所学的知识解决实际问题的能力,开始为期两周的单片机课程设计。

通过实训使学生在巩固所学知识的基础之上具有初步的单片机系统设计与应用能力。

单片机课程设计的目的是培养学生综合设计的能力,训练学生灵活应用所学知识,独立完成问题分析、总体设计和编程实现等软硬件开发全过程的综合实践能力。

巩固、深化学生的理论知识,提高编程水平,并在此过程中培养他们严谨的科学态度和良好的学习作风。

为今后学习其他计算机课程打下基础。

课程设计为学生提供了一个既动手又动脑,独立实践的机会,将书本上的理论知识和工作、生产实际有机结合起来,从而锻炼学生分析问题、解决实际问题的能力,提高学生的编程能力和创新意识。

本课题实训目的:(1)掌握驱动LED8×8点阵模块显示电路的原理(2)掌握8×8点阵组成一个轮换显示汉字及取字模块软件的使用方法三、课程设计要求在处理题目时,要求从分析题目的需求入手,设计硬件电路图,编制上机程序和上机调试等若干步骤完成题目,最终写出完整的课程设计与程序分析报告。

前期准备工作完备与否直接影响到后续上机调试工作的效果。

四、课程设计内容功能说明本程序执行将字型“江海学院”轮流显示实现本功能所使用的电路如图4.1所示图4.1 电路图流程图如图4.2所示图4.2流程图8×8点阵显示如图4.3所示图4.3 8×8点阵显示本设计采用了A T89C51单片机作控制器,12MHz晶振, 8×8点阵共需要64个发光二极管组成,当接高电平的时候则相应的二极管就亮。

先开始清屏100MS,置码指针初值设置每个字的停留时间,每个字8个码,存入R0,然后扫描输出,再扫描下一个,输出到P2,再取下一个码,扫描1MS,八个码完,如果不完就循环到扫描输出,下一步每个字的码时间是否到了不到就从每个字八个码开始循环,下一步8个字48个码是否完成,如果没有完成就从每个字停留时间。

基于51单片机的8乘8LED点阵显示屏的设计

基于51单片机的8乘8LED点阵显示屏的设计

基于51单⽚机的8乘8LED点阵显⽰屏的设计基于单⽚机的8*8LED点阵显⽰屏的设计随着单⽚机在各个领域的⼴泛应⽤,许多⽤单⽚机作控制驱动LED显⽰屏也应运产⽣。

本系统设计使⽤单⽚机MCS-51控制扫描⽅法实现LED点阵显⽰器的字符的显⽰,介绍了⽤单⽚机进⾏显⽰系统开发的⽅法,单⽚机软件、硬件调试技术,还有点阵显⽰驱动扩展的⼀般⽅法。

1.引⾔1.1 研究的⽬的、意义LED因其体积⼩,耗电量低,亮度及环保等优点⽽被⼴泛应⽤于公共场所的⼤屏显⽰上,LED点阵⼤屏可应⽤于户外⼴告,交通导航,⼤厅公告,⽐赛的多媒体实时显⽰等领域。

本设计作品的⽤途正是在于实现⼤屏显⽰的核⼼功能,即汉字的显⽰,可实际应⽤于简单的显⽰系统中,如简单的排队叫号显⽰屏,电梯显⽰屏等。

通过此次设计将单⽚机软硬件结合起来对程序进⾏编辑,校验,锻炼实践能⼒和理论联系实际的能⼒。

1.2 本设计所要做的⼯作为了完成该设计实现,经过考虑论证,决定分为以下⼏个阶段进⾏:(1)对课题进⾏全⾯的分析,明确系统要实现的功能,⼤致了解要解决的问题,制定总的设计⽅案;(2)根据论证设计硬件系统并画出电路图,并根据电路图在⾯包板上连接电路图;(3)在硬件的基础上设计软件程序;(4)利⽤仿真器编译软件程序,进⾏调试仿真;(5)把调试成功的程序利⽤烧⼊器烧⼊到芯⽚中去;(6)把固化好程序的芯⽚插⼊到实际应⽤系统,投⼊到实际使⽤。

2.系统设计⽅案2.1系统构成框图3.硬件电路设计3.1 主要器件介绍3.1.1 LED点阵LED点阵显⽰屏采⽤1个8*8共64个象素的点阵,通过LED点阵资料判断出该点阵的引脚分布,如图3.1所⽰。

8*8的LED点阵为单⾊共阳模块,单点的⼯作电压为正向(Vf)=1.8v,正向电流(if)=8-10MA。

静态点亮器件时(64点全亮)总电流为640mA。

总电压为1.8v,总功率为1.15w.动态时取决于扫描频率(1/8或1/16秒),单点瞬间电流可达80-160mA。

51单片机8*8点阵LED显示原理及程序

51单片机8*8点阵LED显示原理及程序

51单片机8*8点阵LED显示原理及程序更多发布时间:2008年8月16日在8X8点阵LED上显示柱形,让其先从左到右平滑移动三次,其次从右到左平滑移动三次,再次从上到下平滑移动三次,最后从下到上平滑移动三次,如此循环下去。

1.程序设计内容8X8点阵LED工作原理说明:8X8点阵共需要64个发光二极管组成,且每个发光二极管是放置在行线和列线的交叉点上,当对应的某一列置1电平,某一行置0电平,则相应的二极管就亮;因此要实现一根柱形的亮法,如图49所示,对应的一列为一根竖柱,或者对应的一行为一根横柱,因此实现柱的亮的方法如下所述:一根竖柱:对应的列置1,而行则采用扫描的方法来实现。

一根横柱:对应的行置0,而列则采用扫描的方法来实现。

2.硬件电路3.汇编源程序ORG 00HSTART: NOPMOV R3,#3LOP2: MOV R4,#8MOV R2,#0LOP1: MOV P1,#0FFHMOV DPTR,#TABAMOV A,R2MOVC A,@A+DPTR MOV P3,AINC R2LCALL DELAY DJNZ R4,LOP1 DJNZ R3,LOP2MOV R3,#3LOP4: MOV R4,#8 MOV R2,#7LOP3: MOV P1,#0FFH MOV DPTR,#TABA MOV A,R2MOVC A,@A+DPTR MOV P3,ADEC R2LCALL DELAY DJNZ R4,LOP3 DJNZ R3,LOP4MOV R3,#3LOP6: MOV R4,#8 MOV R2,#0LOP5: MOV P3,#00H MOV DPTR,#TABB MOV A,R2MOVC A,@A+DPTR MOV P1,AINC R2LCALL DELAY DJNZ R4,LOP5 DJNZ R3,LOP6 MOV R3,#3LOP8: MOV R4,#8 MOV R2,#7LOP7: MOV P3,#00H MOV DPTR,#TABB MOV A,R2MOVC A,@A+DPTR MOV P1,ADEC R2LCALL DELAYDJNZ R4,LOP7DJNZ R3,LOP8LJMP STARTDELAY: MOV R5,#10D2: MOV R6,#20D1: MOV R7,#248DJNZ R7,$DJNZ R6,D1DJNZ R5,D2RETTABA: DB 0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,07FH TABB: DB 01H,02H,04H,08H,10H,20H,40H,80HEND4.C51语言源程序#include <AT89X52.H>unsigned CHAR code taba[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; unsigned CHAR code tabb[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};void DELAY(void){unsigned CHAR i,j;for(i=10;i>0;i--)for(j=248;j>0;j--);}void DELAY1(void){unsigned CHAR i,j,k;for(k=10;k>0;k--)for(i=20;i>0;i--)for(j=248;j>0;j--);}void main(void){unsigned CHAR i,j;while(1){for(j=0;j<3;j++)//FROM left to right 3 time {for(i=0;i<8;i++){P3=taba[i];P1=0xff;DELAY1();}}for(j=0;j<3;j++)//FROM right to left 3 time{for(i=0;i<8;i++){P3=taba[7-i];P1=0xff;DELAY1();}}for(j=0;j<3;j++)//FROM top to bottom 3 time {for(i=0;i<8;i++){P3=0x00;P1=tabb[7-i];DELAY1();}}for(j=0;j<3;j++)//FROM bottom to top 3 time {for(i=0;i<8;i++){P3=0x00;P1=tabb[i];DELAY1();}}}}。

基于C51单片机的8×8 LED点阵屏汉字显示资料

基于C51单片机的8×8 LED点阵屏汉字显示资料

单片机课程设计报告—8×8 LED点阵屏显示“大”字第一章设计内容及要求 (3)第二章总体设计 (3)2.1 系统框图.........................................................3、4 2.2 设计步骤 (4)第三章各部分电路设计 (4)3. 1 复位电路………………………………………………4 、5 3.2时钟电路……………………………………………5、 63.3显示电路.........................................................6、7 3. 4大字取模 (7)3.5 LED 引脚连接方式..........................................8、9 3.6总体电路 (9)第四章程序设计 (9)4.1软件流图......................................................9、10 4.2大字的模 (10)4.2主程序......................................................10、11 4.3 C51单片机开发工具:keil 4 Proteus使用方法...11、16 第五章仿真结果 (16)第六章总结与体会................................................17、18 第七章参考文献 (18)附录程序清单……………………………………………19、20基于C51单片机的8×8 LED点阵屏汉字显示一设计要求1、设计一个8*8点阵LED电子显示屏2、要求在目测条件下LED显示屏各点亮度均匀、充足,可静态显示一个大字。

二总体方案设计2.1系统框图根据设计要求与设计方案,硬件电路的设计框图如图1所示。

硬件电路结构由8个部分组成:时钟电路、复位电路、按键接口电路、电源电路、点阵显示阳极电路、点阵显示阴极电路和8*8点阵显示电路。

基于单片机的8×8LED字幕显示设计概述

基于单片机的8×8LED字幕显示设计概述

第一章方案选择及总体设计1.1 方案确定1.1.1 功能要求1、采用STC-52单片机作为微处理器。

2、设计一个8×8点阵LED数码字符显示器。

3、在目测条件下LED显示屏各点亮度均匀、充足、稳定、清晰无串扰。

4、动态显示“0——9”几个字符。

1.2.2 方案确定采用ST89C52单片机作为微处理器,将共阳极二极管用共阴型接法连接成8×8点阵LED数码字符阵列,通过程序控制,采用动态显示,建立字符库“0——9”。

1.2 器件选择微处理器采用ST89C52系列单片机,ST89C52单片机是这几年在我国非常流行的单片机,是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Flash Programmable and Erasable Read Only Memory)高性能单片机,可擦除只读存储器可以反复擦除100次,具有低功耗、高性能的特点。

第二章控制系统设计2.1 控制系统硬件设计2.1.1整体模块设计本设计行、列驱动电路,显示器电路,运用单片机的智能化,系统的将每个功能电路模块连接在一起,总体结构设计如图1所示。

图1 硬件系统框图此次需要实现的功能是利用一个ST89C52,一个8×8LED点阵,动态显示“0——9”10个字,采用PC上位机驱动显示电路。

2.1.2 单片机最小系统设计ST89C52单片机最小系统电路由复位电路、晶振电路两部分组成。

2.1.2.1 晶振电路设计ST89C52单片机芯片内部设有一个由反向放大器构成的振荡器,XTAL1和XTAL2分别为振荡电路的的输入端和输出端,时钟可有内部或外部生成,在XTAL1和XTAL2引脚上外接定时元件,内部振荡电路就会产生自激振荡。

系统采用的定时元件为石英晶体和电容组成的并联谐振回路。

晶振频率采用12MHZ,C1、C2的电容值取30pF,电容的大小起频率微调的作用。

晶振电路图如图所示。

XTAL1XTAL2图2 晶振电路图2.1.2.2 复位电路设计 ST89C52单片机在启动运行时或者出现死机时需要复位,使CPU 以及其他功能部件处于一个确定的初始状态,并从这个状态开始工作。

基于单片机的8×8LED字幕显示设计

基于单片机的8×8LED字幕显示设计

第一章方案选择及总体设计1.1方案确定1.1.1功能要求、采用STC-52单片机作为微处理器。

12、设计一个8× 8点阵LED数码字符显示器。

3、在目测条件下LED显示屏各点亮度均匀、充足、稳定、清晰无串扰。

4、动态显示“ 0——9”几个字符。

1.2.2方案确定采用ST89C52单片机作为微处理器,将共阳极二极管用共阴型接法连接成8× 8点阵LED数码字符阵列,通过程序控制,采用动态显示,建立字符库“0——9”。

1.2器件选择微处理器采用ST89C52系列单片机,ST89C52单片机是这几年在我国非常流行的单片机,是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFIaSh PrOgrammabIe and EraSabIe Read Only MemOry )高性能单片机,可擦除只读存储器可以反复擦除100次,具有低功耗、高性能的特点。

第二章控制系统设计2.1控制系统硬件设计2.1.1整体模块设计本设计行、列驱动电路,显示器电路,运用单片机的智能化,系统的将每个功能电路模块连接在一起,总体结构设计如图1所示。

图1硬件系统框图此次需要实现的功能是利用一个ST89C52 —个8× 8LED点阵,动态显示“0 ——9” 10个字,采用PC上位机驱动显示电路。

2.1.2单片机最小系统设计ST89C52单片机最小系统电路由复位电路、晶振电路两部分组成。

2.1.2.1 晶振电路设计ST89C52单片机芯片内部设有一个由反向放大器构成的振荡器,XTAL1和XTAL2分别为振荡电路的的输入端和输出端,时钟可有内部或外部生成,在XTAL1 和XTAL2引脚上外接定时元件,内部振荡电路就会产生自激振荡。

系统采用的定时元件为石英晶体和电容组成的并联谐振回路。

晶振频率采用12MHZ C1、C2的电容值取30pF,电容的大小起频率微调的作用。

晶振电路图如图所示。

VCC AT89C51 S5 RST VCC AT89C51 VCCVCC二 C510MF/25VRST10MF/25RSTR94.7KR2 4.7KVSSVSS图3上电复位电路图 图4按键电平复位电路图复位电路工作原理:C1---- ------------- 1 XTAL1 30pF ~L X112MHZC2---- ------------- O XTAL2 30pF图2晶振电路图2.1.2.2 复位电路设计ST89C52单片机在启动运行时或者出现死机时需要复位,使CPU 以及其他功能部件处于一个确定的初始状态,并从这个状态开始工作。

基于单片机8×8点阵控制系统设计

基于单片机8×8点阵控制系统设计

烟台南山学院单片机课程设计题目基于单片机8×8点阵控制系统设计姓名:所在学院:烟台南山学院所学专业:电气工程及其自动化班级:电气工程1006学号:指导教师:完成时间:2013-9-5摘要本文研究了基于AT89C51单片机LED8×8点阵显示屏的设计并运用Proteus软件进行原理图绘制,运用Keil软件进行仿真和调试。

主要介绍了LED 8×8点显示屏的硬件电路设计、汇编程序设计与调试、Proteus软件绘制原理图和实物制作等方面的内容,本显示屏的设计具有体积小、硬件少、电路结构简单及容易实现等优点。

能帮助广大电子爱好者了解汉字的点阵显示原理,认识单片机的基本结构、工作原理及应用方法,并提高单片机知识技术的运用能力。

利用单片机来设计的系统,既能实现系统所需的功能,也可以满足计数的准确性、迅速性,并且电路简单、操作简单、通用性强。

关键字:Keil软件;LED8×8点阵显示屏;Proteus软件;AT89C51单片机目录1 绪论 (1)2 总体设计方案 (1)2.1 硬件电路组成及介绍 (1)2.1.1 AT89C51单片机 (2)2.1.2 LED显示屏 (4)2.2 系统各单元电路设计 (4)2.2.1 最小系统 (4)2.2.2 驱动电路设计 (6)2.2.3 上拉电阻 (7)2.2.4 显示电路 (7)2.2.5 时钟电路 (8)2.3 字符的点阵显示原理及字库代码获取方法 (9)3 程序设计 (11)3.1 程序流程图 (11)3.2 程序设计 (11)4 调试及性能分析 (15)4.1 系统调试 (15)4.1.1 软件调试 (15)4.1.2 硬件调试 (15)4.2 性能分析 (15)4.3 实物效果图 (16)5 设计总结 (17)心得体会 (18)参考文献 (19)附录 (20)附录1 原件清单 (20)附录2硬件原理图 (20)1 绪论LED点阵显示屏是集微电子技术、计算机技术、信息处理技术于一体的大型显示屏系统。

用51单片机实现在88 LED点阵上显示汉字“中”

用51单片机实现在88 LED点阵上显示汉字“中”

用51单片机实现在8*8 LED点阵上显示汉字“中”1.实验任务用汇编语言利用51单片机在8*8 LED点阵上显示单个汉字“中”2.硬件电路连线图把“单片机系统”区域中的P0端口与P2端口分别用8芯排芯连接到“8*8LED点阵模块”的端口上,如下图所示。

3.8*8 LED点阵工作原理8*8 LED点阵结构如下图所示8*8 LED点阵共由64个发光二极管组成,且每个发光二极管是放置在行线和列线的交叉点上,要使某一个二极管发光,只需该二极管对应的列输入‘0’,其他列输入‘1’,该二极管对应的行输入‘1’,其他行输入‘0’。

本次采用逐列扫描的方式,即P2口输出列码决定哪一列能亮,P0口输出行码决定列上哪些LED亮,能亮的列从左向右扫描完8列即显示出一帧完整的图像,因为单片机扫描速度很快,人的视觉有暂停现象,所以看见的就是一个字了。

4.汇编程序ORG 0000HLJMP L0ORG 0050HL0: MOV P0,#00HMOV P2,#7FHMOV P0,#0HMOV P0,#00HMOV P2,#0BFHMOV P0,#10HMOV P0,#00HMOV P2,#0DFHMOV P0,#7CHMOV P0,#00HMOV P2,#0EFHMOV P0,#54HMOV P0,#00HMOV P2,#0F7HMOV P0,#7CHMOV P0,#00HMOV P2,#0FBHMOV P0,#10HMOV P0,#00HMOV P2,#0FDHMOV P0,#10HMOV P0,#00HMOV P2,#0FEHMOV P0,#10HLJMP L0END5 . 执行结果。

8X8_LED点阵显示的设计

8X8_LED点阵显示的设计

摘要单片机是计算机技术、大规模集成电路技术和控制技术的综合产物。

经过30多年的发展历程,单片机应用已十分广泛和深入。

所以可以毫不夸张地说,任何设备和产品的自动化、数字化和智能化都离不开单片机。

现在,凡是电脑控制的设备和产品,必有单片机嵌入其中。

这一切表明,单片已成为人类生活中不可或缺的助手。

随着单片机应用的日益广泛,利用单片机控制汉字显示屏被广泛地应用与汽车报站器,广告屏等领域。

本文详细介绍了基于51单片机的LED显示屏控制系统的显示原理,对8*8点阵汉字进行显示,显示屏由1个8*8的LED点阵模块LED。

系统仿真利用PORTEUS 仿真软件和KEIL软件的联调对LED点阵显示屏系统进行调试,并用Protel 99进行PCB布线,制版。

关键词:LED点阵显示屏单片机PROTEUS仿真PCB布线及制版目录第1章系统概述设计任务及目的 (3)第2章系统硬件设计与分析电源电路 (4)复位电路 (4)主体电路 (5)硬件电路连线 (5)显示部分 (5)第3章单片机的配置及简介单片机介绍 (7)单片机系统设计 (9)单片机的发展趋势 (10)第4章系统软件设计数字的编码 (11)字母的编码 (12)程序流程图 (14)完整程序 (15)第5章有关软件的介绍PROTE电路设计及PCB图制作 (18)Keil C51 介绍及使用 (19)烧录器的简介及调试 (20)第6章结束语 (21)参考文献 (21)附图一原理图 (22)附图二PCB图 (23)第1章系统概述LED点阵显示系统中各模块的显示方式有静态和动态显示两种。

静态显示原理简单、控制方便,但硬件接线复杂,在实际应用中一般采用动态显示方式,动态显示采用扫描的方式工作,由峰值较大的窄脉冲驱动,从上到下逐次不断地对显示屏的各行进行选通,同时又向各列送出表示图形或文字信息的脉冲信号,反复循环以上操作,就可显示各种图形或文字信息。

本文将介绍一种采用单片机AT89S51进行控制的8*8LED点阵。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

单片机课程设计报告—8×8 LED点阵屏显示“大”字第一章设计内容及要求 (3)第二章总体设计 (3)2.1 系统框图.........................................................3、4 2.2 设计步骤 (4)第三章各部分电路设计 (4)3. 1 复位电路………………………………………………4 、5 3.2时钟电路……………………………………………5、 63.3显示电路.........................................................6、7 3. 4大字取模 (7)3.5 LED 引脚连接方式..........................................8、9 3.6总体电路 (9)第四章程序设计 (9)4.1软件流图......................................................9、10 4.2大字的模 (10)4.2主程序......................................................10、11 4.3 C51单片机开发工具:keil 4 Proteus使用方法...11、16 第五章仿真结果 (16)第六章总结与体会................................................17、18 第七章参考文献 (18)附录程序清单……………………………………………19、20基于C51单片机的8×8 LED点阵屏汉字显示一设计要求1、设计一个8*8点阵LED电子显示屏2、要求在目测条件下LED显示屏各点亮度均匀、充足,可静态显示一个大字。

二总体方案设计2.1系统框图根据设计要求与设计方案,硬件电路的设计框图如图1所示。

硬件电路结构由8个部分组成:时钟电路、复位电路、按键接口电路、电源电路、点阵显示阳极电路、点阵显示阴极电路和8*8点阵显示电路。

2.2设计步骤根据设计要求,初步确定设计方案如下: 1. 选择STC89C52单片机(晶振频率为f=12MHZ)作为整个系统的核心器件,对整个系统进行总体控制,发送并时时处理系统信息。

2.由于是8*8点阵屏设计,需要端口16个,可采用静态显示模式,用P0口控制行,P2口控制列。

3.通过软件编程,即可实现汉字“大”的显示。

4.点阵的点亮过程有程序控制,点阵采用单色显示。

三各部分电路设计3.1 复位电路单片机在启动运行时需要复位,使CPU以及其他功能部件处于一个确定的初始状态,并从这个状态开始工作,另外,在单片机工作过程中,如果出现死机时,也必须对单片机进行复位,使其重新开始工作。

本设计中采用按键复位电路3.2时钟电路STC89C52单片机内部的振荡电路是一个高增益反向放大器,引线X1和X2分别是放大器的输入端和输出端。

单片机内部虽然有振荡电路,但要形成时钟,外部还需附加电路。

STC89C52的时钟产生方式有两种:内部时钟电方式和外部时钟方式。

由于外部时钟方式用于多片单片机组成的系统中,所以此处选用内部时钟方式。

内部时钟方式:利用其内部的振荡电路在X1和X2引线上外接定时元件,内部振荡电路产生自激振荡。

最常用的是在 X1和X2之间接晶体振荡器与电路构成稳定的自激振荡器,如图4所示电路所示为单片机最常用的时钟振荡电路的接法,其中晶振可选用振荡频率为12MHz的石英晶体,电容器一般选择30PF左右3.3显示电路的设计本次设计中采用8*8点阵LED显示器,简称LED点阵板或LED矩阵板。

它是以发光二极管为像素,按照行与列的顺序排列起来,用集成工艺制成的显示器件。

有单色和双色之分,这种显示器有共阳极接法和共阴极接法两种,设计中用到的是共阳极的显示器。

图中画出了8*8点阵的二极管。

每一行发光二极管的阳极接在一起,有一个引出端r,每一列发光二极管的阴极接在一起,有一个引出端c。

当给发光二极管阳极引出端r1加高电平,阴极引出端c1加低电平时,左上角的二极管被点亮因此,对于行和列的电平进行扫描控制时,可以达到显示不同字符的目的。

下图为8*8点阵LED外观及引脚图,只要其对应的X、Y轴顺向偏压,即可使LED发亮。

例如如果想使左上角LED点亮,则Y0=1,X0=0即可。

应用时限流电阻可以放在X轴或Y轴关于ARK SZ411288K 8*8点阵ARK SZ411288K 8*8点阵引脚图ab点阵面对自己,有字的那一面朝ARK那一面。

然后按照图b那个坐标轴就可以看出引脚图是如何排列的。

1~8为负极,一~八为阳极。

3.4关于“大”字的取模选用8*8点阵得出”大”字的取模为0x44,0x24,0x14,0x0C,0x0F,0x14,0x24,0x44,3.5关于LED显示器当采用单片机进行控制时,连接点阵显示器的共阳极r端与单片机的P2口相连,而共阴极c端需经限流电阻与单片机的P0口相连。

在编程控制时,将8*8点阵LED显示分成行和列两部分,字符数据从P0口输出,扫描控制字从P2口输出,每一列由一个字节的数据组成,数据可一次送入,然后扫描一行,显示一个字需要扫描8次。

3.6整体电路图四程序设计4.1软件流图P0口外接点阵来驱动行点亮,P2口外接点阵进行列选通,来显示大字4.2 大字的模定义行unsigned char codetaba[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}//P0口输出定义列unsigned char codetaba[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}//P2口输出4.3主程序void main(void){TMOD=0X10; //设置定时器1为工作方式1TH1=(65536-50000)/256;TL1=(65536-50000)%256; //定时50000usEA=1; //开总中断ET1=1; //开定时器1中断TR1=1; //启动定时器1 4.4显示函数while(1){for(i=0;i<8;i++){P0=taba[i];P2=tabb[i];}}}4.5定时中断函数void ext1() interrupt 3{TH1=(65536-50000)/256;TL1=(65536-50000)%256;t++;}程序清单在最后的附录中4.3打开keil,先建立一个工程建议先新建一个文件夹用来存放,不然待会儿找不着。

输入工程名后点保存,出现单片机型号选择框,一般用stc的51单片机,由于上面没有stc的,选择atmel 的就可以,因为它们是兼容的。

选好后点击OK新建c程序点击file/new后点左上角的保存按钮,输入文件名,记住扩展名.c,接着点击target 1,右键source group 1,出现可以选择。

点击add files to group's source ,选择刚才的c文件,点击add,后close。

如果要烧录到单片机中,还得创建hex,在上面方框target 1的右边的第一个按钮,单击。

选择output,勾选creat hex file,编程完后编译,连接等步骤。

最好生成hex文件Proteus基本使用方法功能模块:元件选择端口模块测量仪器点击P可以添加元器件本次实验所用元器件搭建电路选中元器件然后放在电路图合适位置,连线。

本实验的vcc和地在端口原件,分别是power和ground 双击单片机然后将编译好的hex导入,点确定。

最后运行仿真即可。

五仿真结果六总结及体会1在这次课程设计的整个过程中,我们做了一次全面、较规范的设计练习,全面地温习了以前所学过的知识,用理论联系实际并结合单片机原理课程和解决实际问题,巩固、加深和扩展了有关单片机设计方面的知识。

尤其重要的是让我们养成了科学的习惯,在设计过程中一定要注意掌握设计进度,按预定计划完成阶段性的目标,在底图设计阶段,注意设计计算与结构设计画图交替进行,采用正确的设计方法。

在整个设计过程中注意对设计资料和计算数据的保存和积累,保持记录的完整性。

在课程设计的实践中进行了设计基本技能的训练,掌握了查阅和使用标准、规范、手册、图册、及相关技术资料的基本技能以及计算、数据处理等方面的能力。

2通过对通用51系列单片机机处理器、常用元器件的设计,掌握了一般单片机设计的程序和方法,让我们对整个单片机程序的设计,C51语言有了一个比较深的理解。

3还有就是增强了自身的动手能力。

在这次课程设计中,我主要负责的是程序设计和单片机部件焊接。

通过参考相关的程序设计,自己写出了主要的程序代码。

同时将元器件正确焊接到基板上。

这些都是将以前书本上讲的或是没有讲的,通过一次课程设计具体的实施,使自己的动手能力和独立设计能力真正得到锻炼,对于以后我们的发展与学习来说,都可以看作一笔不小的财富,前面还有很多需要我们去尝试。

同时不能忽略的是,这一次课程设计是以小组为单位的。

在这次课程设计中,我和自己的小组成员学会了密切分工配合。

而这样的合作能力和团队精神在今后的学习工作中是很重要的。

七参考文献[1]《单片机原理及应用》薛峰.朱晓骏编著北京:北京理工大学出版社,2011,9附录程序清单#include <reg52.h>#include <REGX51.H>unsigned char codetaba[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};//行选unsigned char codetabb[]={0x44,0x24,0x14,0x0F,0x14,0x24,0x44,0x04 };//列选unsigned char i;void main(void){TMOD=0X10; //设置定时器1为工作方式1 TH1=(65536-50000)/256;TL1=(65536-50000)%256; //定时50000usEA=1; //开总中断ET1=1; //开定时器1中断TR1=1; //启动定时器1while(1){//*****************显示函数****************//for(i=0;i<8;i++){P0=taba[i];P2=tabb[i];}}}//*****************定时中断函数****************//void ext1() interrupt 3{TH1=(65536-50000)/256;TL1=(65536-50000)%256;t++;}。

相关文档
最新文档