单片机课程设计双汉字16×16LED点阵广告屏.doc
- 格式:doc
- 大小:138.00 KB
- 文档页数:13
单片机课程设计双汉字16×16LED点阵广告屏1目录第1节引言 (2)1.1 LED点阵显示屏概述 (2)1.2 LED显示屏控制技术状况 (3)1.2.1串行传输与并行传输技术 (3)1.2.2动态扫描与静态锁存技术 (3)1.2.3自动检测及远程控制技术 (3)1.3设计任务 (3)第2节总体方案论证与设计 (4)2.1 LED驱动模块 (4)2.2数据存储模块 (4)2.3总体硬件组成框图 (5)第3节系统硬件设计 (5)3.1 LED驱动模块的硬件设计 (5)3.1.1 74 LS154芯片介绍………………………………………………… (5)3.1.2 驱动电路的设计 (6)3.2数据存储电路的设计 (7)3.3 PC机通信模块的设计 (8)第4节系统的软件设计 (8)4.1下位机软件流程…………………………………………… (8)4.2上位机软件…………………………………………… (9)第5节系统调试与测试结果分析 (11)5.1使用的仪器仪表…………………………………………… (11)5.2系统调试…………………………………………… (11)5.2.1硬件调试………………………………………… (11)5.2.2软件调试 (11)5.2.3硬件软件联调 (12)5.3测试结果 (12)总结参考文献双汉字16×16 LED点阵广告屏第1节引言LED显示屏是利用发光二极管点阵模块或像素单元组成的平面式显示屏幕。
它具有发光效率高、使用寿命长、组态灵活、色彩丰富以及对室内外环境适应能力强等优点。
并广泛的应用于公交汽车,码头,商店,学校和银行等公共场合的信息发布和广告宣传。
LED显示屏经历了从单色,双色图文显示屏到现在的全彩色视频显示屏的发展过程,自20世纪八十年代开始,LED显示屏的应用领域已经遍布交通、电信、教育、证券、广告宣传等各方面。
1.1 LED点阵显示屏概述LED点阵显示屏的构成型式有多种,其中典型的有两种。
16×16点阵广告屏显示设计摘要LED点阵显示屏作为一种新兴的显示器件,是由多个独立的LED发光二极管封装而成. LED点阵显示屏可以显示数字或符号, 通常用来显示时间、速度、系统状态等。
文章给出了一种基于MCS-51单片机的16×16 点阵LED显示屏的设计方案。
包括系统具体的硬件设计方案,软件流程图和部分汇编语言程序等方面。
在负载范围内, 只需通过简单的级联就可以对显示屏进行扩展,是一种成本低廉的图文显示方案。
LED显示屏作为一种新型的显示器件,是由多个发光二极管按矩阵形式排列封装而成,通常用来显示时间、图文等信息。
本设计是基于ATS52单片机的16x16显示屏,其中包含了硬件、软件、调试等方案的设计。
此外、该设计只需简单的级联就能实现显示屏的拓展,但级联时要注意不要超过驱动负载范围。
关键词:MCS-51;LED;单片机目录1引言 (1)1.1 LED点阵显示屏概述概述简介 (2)1.2 16×16点阵LED原理及应用 (3)1.2.1 LED点阵的显示文字图形原理 (4)1.2.2 点阵的移动 (5)1.2.3芯片资料 (6)2 方案设计 (9)2.1系统硬件电路的设计 (11)2.1.1单片机系统及外围电路 (11)2.1.2列驱动电路 (11)2.2系统程序的设计 (12)2.2.1显示驱动程序 (12)2.2.2系统主程序 (13)2.3 系统调试 (13)2.3.1硬件调试 (14)2.3.2 软件调试 (14)2.3.3 硬件软件联调 (14)2.3.4调试及结果 (14)经验总结 (15)致谢 (16)参考文献 (17)引言当今社会在飞速发展无疑能源、健康、空间的利用,成了人们着重关注的对象。
而在这个信息传递极速的社会,LED的出现给人们带来了希望之光。
LED的特色之处一是节能(直接功耗,间接耗能),二是基本无电离辐射,三提高空间利用率。
而这些特色又恰好解决了上述的三种问题。
目录第1节引言 (2)1.1 LED点阵显示屏概述 (2)1.2 LED显示屏控制技术状况 (3)1.2.1串行传输与并行传输技术 (3)1.2.2动态扫描与静态锁存技术 (3)1.2.3自动检测及远程控制技术 (3)1.3设计任务 (3)第2节总体方案论证与设计 (4)2.1 LED驱动模块 (4)2.2数据存储模块 (4)2.3总体硬件组成框图 (5)第3节系统硬件设计 (5)3.1 LED驱动模块的硬件设计 (5)3.1.1 74 LS154芯片介绍 (5)3.1.2 驱动电路的设计 (6)3.2数据存储电路的设计 (7)3.3 PC机通信模块的设计 (8)第4节系统的软件设计 (8)4.1下位机软件流程 (8)4.2上位机软件 (9)第5节系统调试与测试结果分析 (11)5.1使用的仪器仪表 (11)5.2系统调试 (11)5.2.1硬件调试 (11)5.2.2软件调试 (11)5.2.3硬件软件联调 (12)5.3测试结果 (12)总结参考文献双汉字16×16 LED点阵广告屏第1节引言LED显示屏是利用发光二极管点阵模块或像素单元组成的平面式显示屏幕。
它具有发光效率高、使用寿命长、组态灵活、色彩丰富以及对室内外环境适应能力强等优点。
并广泛的应用于公交汽车,码头,商店,学校和银行等公共场合的信息发布和广告宣传。
LED显示屏经历了从单色,双色图文显示屏到现在的全彩色视频显示屏的发展过程,自20世纪八十年代开始,LED显示屏的应用领域已经遍布交通、电信、教育、证券、广告宣传等各方面。
1.1 LED点阵显示屏概述LED点阵显示屏的构成型式有多种,其中典型的有两种。
一种把所需展示的广告信息烧写固化到EPROM芯片内,能进行固定内容的多幅汉字显示,称为单显示型;另一种在机内设置了字库、程序库,具有程序编制能力,能进行内容可变的多幅汉字显示,称可编程序型。
目前,国内的LED点阵显示屏大部分是单显示型,其显示的内容相对较少,显示花样较单一。
单片机课程设计-- 16x16点阵LED电子显示屏的设计第一章系统总体方案设计LED驱动显示采用动态扫描方法, 动态扫描方式是逐行轮流点亮, 这样扫描驱动电路就可以实现多行的同名列共用一套列驱动器。
以16×16点阵为例, 把所有同一行的发光管的阳极连在一起, 把所有同一列的发光管的阴极连在一起(共阳的接法), 先送出对应第1行发光管亮灭的数据并锁存, 然后选通第1行使其燃亮一定的时间, 然后熄灭;再送出第2行的数据并锁存, 然后选通第2行使其燃亮相同的时间, 然后熄灭;…第16行之后, 又重新燃亮第1行, 反复轮回。
当这样轮回的速度足够快(每秒24次以上), 由于人眼的视觉暂留现象, 就能看到显示屏上稳定的图形。
该方法能驱动较多的LED, 控制方式较灵活, 而且节省单片机的资源。
显示数据传输采用串行传输的方法, 控制电路可以只用一根信号线, 将列数据一位一位传往列驱动器, 在硬件方面无疑是十分经济的。
但串行传输过程较长, 数据按顺序一位一位地输出给列驱动器, 只有当一行的各列数据都已传输到位之后, 这一行的各列才能并行地进行显示。
对于串行传输方式来说, 列数据准备时间可能相当长, 在行扫描周期确定的情况下, 留给行显示的时间就太少了, 以致影响到LED的亮度。
采用串行传输中列数据准备和列数据显示的时间矛盾, 可以采用重叠处理的方法。
即在显示本行各列数据的同时, 传送下一行的列数据。
为了达到重叠处理的目的, 列数据的显示就需要有锁存功能。
对于列数据准备来说, 它应能实现串入并出的移位功能。
这样, 本行已准备好的数据打入并行锁存器进行显示时, 串行移位寄存器就可以准备下一行的列数据, 而不会影响本行的显示。
系统框图如图一图一点阵显示器硬件系统框图第二章系统硬件电路的设计硬件电路大致上可以分为单片机系统及外围电路、列驱动电路和行驱动电路三部分。
一. 单片机系统及外围电路单片机采用89C51或更高频率的晶振, 以获得较高的刷新频率, 使得显示更稳定。
邮电与信息工程学院课程设计说明书课题名称:16×16点阵LED电子显示屏的设计学生学号:1002030205专业班级:计科02班学生姓名:龚建新学生成绩:指导教师:王会清课题工作时间:2013年5月6日至5月20日课程设计评审标准(指导教师用)附代码:***************************************; * *; * 单个16x16的点阵电子屏字符显示器 *; * ATA89C52 12MHz晶振 *; * 2013.5.19 *; ***************************************;显示字用查表法,不占用内存,字符用16x16共阳LED点阵,;效果:向上滚动显示5个字,再重复循环。
;R1:查表偏址寄存器,B:查表首址,R2:扫描地址(从00~0FH)。
;R3:滚动显示时控制移动速度,单字显示可控制静止显示的时间。
;*************;;中断入口程序;;*************;;ORG 0000HLJMP STARTORG 0003HRETIORG 000BHLJMP INTTOORG 0013HERTIORG 001BHERTIORG 0023HRETIORG 002BHRETI;;***********;;初始化程序;;***********;;;;***********;;主程序;;***********;;START: MOV 20H,#00H ;清零标志,00H为第16行开始扫描标志,01为1帧;扫描结束标志MOV A,#0FFH ;端口初始化MOV P1,AMOV P1,AMOV P3,AMOV P0,ACLR P1.6 ;串行寄存器输入打入输出控制位MOV TMOD,#01H ;使用T0做16位定时器,行扫描用。
MOV TH0,#0FCH ;1ms初值(12MHz)MOV TL0,#18HMOV SCON,#00H ;串口0方式传送显示字节MOV IE,#82H ;T0中断允许,总中断允许MOV SP,#70HMAIN: LCALL DISI ;显示准备,黑屏,1.5sMOV DPTR,#TABLCALL MOVDISP ;向上滚动显示一页(8个字)INC DPHLCALL MOVDISP ;向上滚动显示一页(8个字)INC DPHLACLL MOVDISP ;向上滚动显示一页(8个字)AJMP MAIN;;;***********************;;多字滚动显示程序;;***********************;;每次8个字,入口时定义好DPTR值;MOVDISP: MOV B,#00H ;向上移动显示,查表偏值暂存(从00开始)DISLOOP: MOV R3,#07H ;移动速度DISMOV: MOV R2,00H ;第0行开始MOV R1,BSETB TR0 ;开扫描(每次一帧)WAITMOV: JBC 01H,DISMOV1 ;标志为1扫描一帧结束(16ms为1帧,每行1ms) AJMP WAITMOVDISMOV1: DJNZ R3,DISMOV ;1帧重复显示(控制移动速度)INC B ;显示字的下一行(每行2字节)INC BMOV A,R1 ;R1为0,8个字显示完JZ MOVOUTAJMP DISLOOPMOVOUT: RET ;移动先是结束;;;****************;;单字显示程序;;****************;;显示表中某个字;;****************;DIS1: MOV R3,#5AH ;静止显示时间控制(16ms*#=1.6s)DIS11: MOV R2,#00H ;一帧扫描初始值(行地址从00~0FH)MOV DPTR,#TAB ;取表首址MOV R1,#00H ;查表偏址(显示第一个字)SETB TR0 ;开扫描(每次一帧)WAIT11: JBC 01H,DIS111 ;为1,扫描一帧结束AJMP WAIT11DIS111: DJNZ R3,DIS11RET;;;************;;扫描程序;;************;;1ms刷新一次,每行显示1sINTT0: PUSH ACCMOV TH0,#0FCH ;1ms初值重装MOV TL0,#18HJBC 00H,GOEND ;16行扫描标志为1,结束INC R1 ;取行右边字节偏址MOV A,R1MOVC A,@A+DPTR ;查表MOV SBUF,A ;串口0方式发送WAIT: JBC TI,GO ;等待发送完毕AJMP WAIT1GO: DEC R1 ;取行左边字节偏址MOV A,R1MOVC A,@A+DPTRMOV SBUF,AWAIT1: JBC T1,GO1AJMP WAIT1GO1: SETB P1.7 ;关行显示,准备刷新NOP ;串口寄存器数据稳定SETB P1.6 ;产生上升沿,行数据打入输出端NOPNOPCLR P1.6 ;恢复低电平MOV A,R2 ;修改显示行地址ORL A,#0F0H ;修改显示行地址MOV R2,A ;修改显示行地址MOV A,P1 ;修改显示行地址ORL A,#0FH ;修改显示行地址ANL A,R2 ;修改显示行地址MOV P1,A ;修改完成CLR P1.7 ;开行显示INC R2 ;下一行扫描地址值INC R1INC R1 ;下一行数据地址MOV A,R2ANL A,#0FHJNZ GO2SETB 00H ;R2为01H,现为末行扫描,置标志GO2: POP ACCRETIGOEND: CLR TR0 ;一帧扫描完毕,关扫描SETB 01H ;一帧扫描完毕,置结束标志POP ACCRETI ;退出;;;***************;;扫描文字表;;***************;;TAB:DB0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,00FFH,0FFH,0FFH ;黑屏DB0F9H,0BFH,0C7H,0AFH,0F7H,0B7H,0F7H,0B7H,0F7H,0BFH,000H,001H,0F7H,0BFH,0F7H, 0B7H ;我DB0F1H,0D7H,0C7H,0CFH,037H,0DFH,0F7H,0AFH,0F6H,06DH,0F7H,0F5H,0D7H,0F9H,0EFH, 0FDH ;DB0FFH,007H,0C0H,06FH,0EDH,0EFH,0F6H,0DFH,0C0H,001H,0DDH,0FDH,0BDH,0FFH,0C0H, 003H ;爱DB0FBH,0FFH,0F8H,00FH,0F3H,0DFH,0F4H,0BFH,0EFH,03FH,09CH,0CFH,073H,0F1H,0CFH, 0FBH ;DB0F7H,0DFH,0F9H,0CFH,0FBH,0BFH,0C0H,007H,0DEH,0F7H,0C0H,007H,0DEH,0F7H,0DEH, 0F7H ;单DB0C0H,007H,0DEH,0F7H,0FEH,0FFH,000H,001H,0FEH,0FFH,0FEH,0FFH,0FEH,0FFH,0FEH, 0FFHDB0FFH,0BFH,0EFH,0BFH,0EFH,0BFH,0EFH,0BBH,0E0H,001H,0EFH,0FFH,0EFH,0FFH,0EFH, 0FFH ;片DB0E0H,00FH,0EFH,0EFH,0EFH,0EFH,0EFH,0EFH,0DFH,0EFH,0DFH,0EFH,0BFH,0EFH,07FH, 0FFHDB0EFH,0FFH,0EFH,007H,0EFH,077H,001H,077H,0EFH,077H,0EFH,077H,0C7H,077H,0CBH, 077H ;机DB0ABH,077H,0AFH,077H,06EH,0F7H,0EEH,0F5H,0EDH,0F5H,0EDH,0F5H,0EBH,0F9H,0EFH, 0FFH ;DB0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH, 0FFH ;黑屏DB0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH, 0FFH ;END。
LED 点阵显示设计利用LED 点阵(16*16 个发光二极管)交替显示自己名字的每个汉字。
一、预备知识:目前, LED 电子显示屏广泛应用于各种公共场所, 如南通大学新校区图书馆底楼LED 大屏幕、新校区学生食堂各种显示菜价的LED 电子屏等, 在车站、码头、机场、商场、医院、宾馆、银行、证券市场等更是随处可见LED 电子显示屏的身影。
实验箱上由4 块8*8 LED 点阵模块组成1 个16*16 的LED 点阵, 每个LED 发光管其实就是1 个像素点, 而通常汉字显示时所需像素点就是16*16。
汉字显示需要“字模生成软件”生成显示的点阵数据, 通常“字模生成软件”支持使用指定字体、指定取点模式及字节排列模式, 支持字体加粗、斜体、删除线、下划线等设置等。
“字模生成软件”的具体使用见课程设计讲解视频。
二、设计目的1.了解、掌握LED 点阵显示的控制原理, 为后续的LCD 显示控制打下基础;2.熟悉、掌握串行输入并行输出移位寄存器的使用;3.掌握单片机串行接口扩展原理和编程方法。
三、设计内容1.设计LED 点阵模块显示控制电路的原理图;2.设计程序流程图;3、编程调试, 在LED 点阵模块上交替显示自己名字的每个汉字, 交替间隔时间控制在0.5~1 秒之间。
四、参考接线LED 点阵模块显示控制所用导线较多, 可参见LED 点阵模块原理说明及实验箱电路原理图。
五、设计步骤程序:ORG 0000HLJMP MAINMAIN:MOV SP,#6FHMOV B,#80HMOV R0,#0MOV R3,#100MAIN_LOOP:MOV DPTR,#LED_TABMOV R1,#8MOV R2,#8MAIN_LOOP_H:MOV A,BMOV P2,ARR AMOV B,ALCALL FASONGLCALL FASONGLCALL DELAYDJNZ R1,MAIN_LOOP_H MOV P2,#00HMAIN_LOOP_L:MOV A,BMOV P1,ARR AMOV B,ALCALL FASONGLCALL FASONGLCALL DELAYDJNZ R2,MAIN_LOOP_L MOV P1,#00HDJNZ R3,MAIN_LOOP MOV R3,#100MAIN_LOOP1:MOV R1,#8MOV R2,#8MOV DPTR,#LED_TAB1 MAIN_LOOP_H1:MOV A,BMOV P2,ARR AMOV B,ALCALL FASONGLCALL FASONGLCALL DELAYDJNZ R1,MAIN_LOOP_H1 MOV P2,#00HMAIN_LOOP_L1:MOV A,BMOV P1,ARR AMOV B,ALCALL FASONGLCALL FASONGLCALL DELAYDJNZ R2,MAIN_LOOP_L1DJNZ R3,MAIN_LOOP1MOV R3,#100MAIN_LOOP2:MOV R1,#8MOV R2,#8MOV DPTR,#LED_TAB2MAIN_LOOP_H2:MOV A,BMOV P2,ARR AMOV B,ALCALL FASONGLCALL FASONGLCALL DELAYDJNZ R1,MAIN_LOOP_H2 MOV P2,#00HMAIN_LOOP_L2:MOV A,BMOV P1,ARR AMOV B,ALCALL FASONGLCALL FASONGLCALL DELAYDJNZ R2,MAIN_LOOP_L2MOV P1,#00HDJNZ R3,MAIN_LOOP2 LJMP MAINFASONG:MOV A,@R0MOVC A,@A+DPTRCLR TIMOV SBUF,AJNB TI,$CLR TIINC DPTRRETDELAY:MOV R7,#4DL Y_LOOP:DJNZ R6,$DJNZ R7,DL Y_LOOP RETDELAY2:MOV R7,#250DL Y_LOOP2:MOV R6,#250DJNZ R6,$DJNZ R7,DL Y_LOOP2 RETLED_TAB:DB …….LED_TAB1:DB …….LED_TAB2: DB……..END原理图:。
16乘16点阵LED电子显示屏的设计概述本文将讨论16乘16点阵LED电子显示屏的设计。
这是一个可以显示图形和文字的电子屏幕,使用16列和16行LED灯来组成一个点阵,可以显示256个像素。
这样的屏幕可以广泛应用于科技展示、娱乐游戏和家庭电子设备等领域。
设计硬件LED灯基本的LED操作和驱动电路在这里不再赘述。
需要注意的是,对于16行LED 灯和16列LED灯,需要使用合适的电流控制电路并且保证它们可以受到足够的电流。
此外,将需要16个NPN晶体管来控制16列LED灯,和16个PNP晶体管来控制16行LED灯。
控制器在控制器的选择上推荐使用ATmega328p微控制器。
这个控制器也是Arduino Uno的基础。
软件代码结构代码文件应当按照以下结构进行组织:Libraries/SevSeg/SevSeg.hLedControl/LedControl.hLedControl.cppMAX7219.hMAX7219.cppSPI.hSPI.cpp16x16LEDMatrix/16x16LEDMatrix.inoREADME.md这里我们使用SevSeg和LedControl库。
打包由于ATmega328p微控制器的内存限制,将需要对代码进行压缩,以减小程序的尺寸,使它适合在所预算的存储设备中运行。
可以通过使用压缩工具完成这个任务。
推荐使用zip或tar。
结论在这篇文档中,我们讨论了16乘16点阵LED电子显示屏的设计。
我们详细介绍了硬件和软件方面的设计需求以及代码结构的组织。
通过对这些内容的了解,你可以开始创建你自己的16乘16点阵LED电子显示屏!。
单片机技术课程设计说明书设计课题:16×16点阵LED显示屏专业(系):电气工程系班级:检测电子班学生姓名:学号:指导老师:20**年4月24日目录1、绪论 (3)1.1 MCS-51系列单片机简介 (3)1.2 单片机的应用模式和应用领域 (4)1.3 主要工作任务 (5)2、硬件设计 (6)2.1系统硬件电路的设计 (6)3、软件设计 (9)3.1系统程序的设计 (9)3.2显示驱动程序 (10)3.3系统主程序设计 (11)3.4调试及性能分析 (11)3.5控制程序清单 (12)4、点阵字模软件的使用 (20)5、结论 (25)1绪论单片机(Single-Chip-Microcomputer)又称微控制器(Microcontroller),最基本的结构是将CPU和计算机外围功能单元,如存储器、I/O口、定时器/计数器、中断系统等集成在一个芯片上构成的。
虽然单片机只是一个芯片,但无论从成还是功能上来看,它都具有了微机系统的特征。
1.1MCS-51系列单片机简介1971年微处理器研制成功。
1974年,美国仙童(Fairchild)公司研制出世界上第一台单片机微型计算机F8。
该机由两块集成电路芯片构成,具有与众不同的指令系统,深受民用电器及仪器仪表领域的欢迎和重视。
从此单片机开始迅速发展,应用领域也不断扩大。
1976年Intel公司推出MCS-48系列8位单片微型计算机,它以体积小、功能全、价格低等优点,赢得了广泛的应用,为单片机的发展奠定了基础。
成为单片机发展过程中的一个重要阶段。
在MCS-48成功应用的推动下,许多半导体公司和计算机公司也竞相研制和开发自己的单片机系列。
到目前为止,世界各地厂商也相继研制出大约50个系列300多个品种的单片机产品,可以满足不同领域的需要。
代表产品有Intel公司的MCS-51单片机,Motorola公司的MC6081、MC6082系列机,Zilog公司的Z-8系列机,TI公司的TMS7000系列机等,此外Rockwell、NS、GI和日本的NEC、松下、日立等公司也先后生产了自己的单片机系列。
电子技术综合设计总结报告姓名:专业与班级:设计题目:16*16 LED汉字点阵系统设计起始时间: 2010 ~ 2011 学年第(1)学期第14 周~第 19 周指导教师:成绩:日期:一、系统的基本理论概述⏹1.1前言当今世界,电子技术迅猛发展,点阵式显示器件作为现代信息显示的重要媒体,在金融证券、体育、机场、交通、商业、广告宣传、邮电电信、指挥调度、国防军事等许多领域中得到了广泛应用。
因此点阵式显示器件的研制、生产也的到了迅速的发展,并逐步形成产业,成为光电子行业的新兴产业领域。
由于LED电子显示屏具有所显内容信息量大,外形美观大方,操作使用方便灵活.适用于火车,汽车站,码头,金融证券市场,文化中心,信息中心体育设施等公共场所。
该项目广泛涉及了计算机及电子技术中的电源技术、单片机技术、数据通讯技术、显示技术、存储技术、系统软件技术、接口及驱动等技术。
⏹1.2课题设计内容该电路系统是采用AT89C51单片机为控制器,控制点阵LED显示器进行显示,左移显示“百年矿大盛世华章”的内容。
⏹1.3设计目的1.使学生更深入地理解和掌握该课程中的有关基本概念,程序设计思想和方法。
2.培养学生勇于探索、严谨推理、实事求是、有错必改,用实践来检验理论,全方位考虑问题等科学技术人员应具有的素质。
3.提高学生对工作认真负责、一丝不苟,对同学团结友爱,协作攻关的基本素质。
4.培养学生从资料文献、科学实验中获得知识的能力。
5. 对学生掌握知识的深度、运用理论去处理问题的能力、实验能力、课程设计能力、书面及口头表达能力进行考核。
⏹1.4方案比较与选择:对于扫描LED点阵的方法有以下三种:(1)点扫描;(2)行扫描;(3)列扫描。
对于8*8的LED点阵而言:若使用第一种方式,其扫描频率必须大于16×64=1024Hz,周期小于1ms即可。
若使用第二和第三种方式,则频率必须大于16×8=128Hz,周期小于7.8ms即可符合视觉暂留要求。
单片机课程设计实验说明书题目:16×16 LED广告屏班级:组别:目录课题名称 (3)单片机组成部分 (3)硬件电路设计 (3)16×16点阵LED显示屏上滚屏显示原理 (3)16×16点阵LED显示屏上滚屏显示原理图 (4)附录 (5)一、课题名称:16×16 LED广告屏实验目的:1、学习单片机的使用方法和简单的编程原理2、通过单片机实现16×16LED广告屏显示简单的汉字和图形二、单片机组成部分三、硬件电路设计本电路是由AT89C51单片机为控制核心,低功耗;时钟源电路有很多种,比如阻容低速时钟源、普通晶体时钟源、带缓冲放大的晶体时钟源等等,考虑到电路稳定及材料选购等方面,决定采用普通晶体时钟源,其中晶体用12MHZ的石英晶振;复位电路结合实际应用功能的实现,采用上电复位;显示部分由16×16点阵LED显示屏显示;行驱动电路采用74LS154,列驱动电路采用74LS595。
四、 16×16点阵LED显示屏上滚屏显示原理在UCDOS中文宋体字库中,每一个字由16行16列的点阵组成显示。
如果要在16×16点阵屏以上滚屏的方式显示以字体,则需以以下方式进行显示。
在16×16点阵屏中,我们可以把点阵屏看成16行LED组成,且每行有16个LED灯。
在本例中单片机首先将第二行的显示信息给第一行,使第一行显示图像变成第二行所要显示的。
以“我”字为例,原第一行由左到右排列,为A灭,B灭,C灭,D灭,E灭,F亮,G亮,H灭,I灭,J亮,K灭,M灭,N灭,O灭,P灭。
即二进制1111100110111111转换为16进制为F9h,BFh。
原第二行由左到右排列,为A灭,B灭,C亮,D亮,E亮,F灭,G灭,H灭,I灭,J亮,K灭,L亮,M灭,N灭,O灭,P灭。
即二进制1100011110101111转换为16进制为C7h,Afh。
邢台职业技术学校Xingtai Polytechnic Institute 毕业设计(论文)题目16×16点阵LED电子显示屏的设计班级应电081姓名杨艳德指导教师唐俊英16×16点阵LED电子显示屏的设计目录摘要 (3)关键词 (3)前言 (4)1.背景介绍 (5)1.1 LED及LED显示屏 (5)1.2 MCS-51系列单片机简介 (6)1.2.1 MCS-51系列单片机及其特点 (6)1.2.2 单片机的发展历史简介 (6)3.功能要求 (7)4.方案实现 (7)4.1 系统硬件电路的设计 (8)4.1.1单片机系统及外围电路 (9)4.1.2列驱动电路 (9)4.2.系统程序的设计 (11)4.2.1显示驱动程序 (11)4.2.2系统主程序 (12)5性能分析 (19)5.1 性能分析 (19)总结 (20)摘要LED点阵显示屏作为一种新兴的显示器件,是由多个独立的LED发光二极管封装而成. LED点阵显示屏可以显示数字或符号, 通常用来显示时间、速度、系统状态等。
文章给出了一种基于MCS-51单片机的16×16 点阵LED显示屏的设计方案。
包括系统具体的硬件设计方案,软件流程图和部分汇编语言程序等方面。
在负载范围内, 只需通过简单的级联就可以对显示屏进行扩展,是一种成本低廉的图文显示方案。
关键词:MCS-51;LED;单片机前言LED显示屏显示画面色彩鲜艳,立体感强,静如油画,动如电影,广泛应用于车站、码头、机场、商场、医院、宾馆、银行、证券市场、建筑市场、拍卖行、工业企业管理和其它公共场所。
在实际应用中的显示屏由于成本和可靠性的因素常采用一种称为动态扫描的显示方法。
本文设计的是一个室内用16x16的点阵LED图文显示屏,图形或文字显示有静止、移入移出等显示方式。
LED显示屏分为数码显示屏、图文显示屏和视频显示屏,均由LED矩阵块组成。
LED数码显示屏的显示器件为7段码数码管,适于制作时钟屏、利率屏等,显示数字的电子显示屏。
51单片机驱动16×16LED点阵显示动画汉字汇编程序这里提供一个完整的AT89S51单片机驱动驱动led点阵显示具有动画效果的汉字的汇编程序列子.ORG0000HST:MOVA,#0FFH;初始化MOVP1,AMOVP2,AMOVP3,AMOVP0,ACLRA;正文显示CHINESE:MOVDPTR,#TAB1;查表指针指向TAB1LCALLHZ;结束动画SCREE: MOVDPTR,#TAB2;查表指针指向TAB2ACALLDDMOVDPTR,#TAB3;查表指针指向TAB3ACALLDDMOVDPTR,#TAB4;查表指针指向TAB4ACALLDDLJMPCHINESE;显示8幅画面子程序,SCREE专用,用字模软件字要倒置(表必须深256字节)DD:MOVB,#00HMOVR0,#08H;显示8幅画面AJMPCCCC0:MOVA,BADDA,#20H;指向下一幅画面MOVB,ACC:MOVR7,#08H;画面停留时间MOVR3,BMOV37H,R0LCALLENTERDIS00:LCALLDISPLAYDJNZR7,DIS00MOVR0,37HDJNZR0,CC0RET;汉字上移子程序,可显示8个汉字,(表必须深256字节)HZ:MOVR3,#00H;查表偏移量MOVR5,#81H;查表128次MOVBACK:MOVR4,#10H;使显示完一个汉字MOVBACK0:MOVR7,#02H;一桢画面显示时间MOVR0,#6DH;低8位R0指向显示缓存倒数第3个字节,以备与最后1个字节交换MOVR1,#6CH;高8位R1指向显示缓存倒数第4个字节,以备与倒数第2个字节交换MOVR2,#10H;内存后移的次数DJNZR5,MOVBACK1RET;显示完该表,返回MOVR0,AMOVA,R3;指向下一字节INCAMOVR3,AMOVA,R3;指向下一字节INCAMOVR3,AMOV30H,R3;保护数据MOV31H,R4MOV32H,R5DISMOV:LCALLDISPLAY;显示当前数据DJNZR7,DISMOVMOVR3,30HMOVR4,31HMOVR5,32HDJNZR4,MOVBACK0MOV30H,R3;保护数据MOV32H,R5MOVR7,#24H;显示当前数据延时DISMOV0:LCALLDISPLAYDJNZR7,DISMOV0MOVR3,30HMOVR5,32HLJMPMOVBACK;放进一幅显示数据到显示缓存子程序,要先设好指针DPTR和R3,影响R1,R2,R3ENTER:MOVR1,#50H;从50H单元起把表存入MOVR2,#20H;查表次数MOVA,R3MOVR3,A;将指针修改结果存入R3DJNZR2,CLLOOP_;没查完转CLLOOP_RETMOVR6,#7FH;赋扫描字初值,左移后初值为0FEHMOVR5,#00H;列扫描低8位控制MOVR0,#50H;行的高8(p1)位要显示的数据起始地址MOVR1,#10H;扫描次数CPLA;数据取反以适合显示MOVP0,A;送入行的低8(p0)位要显示的数据INCR0;R0指向下一个高8(p0)位要显示的数据LCALLNE某T;调用列扫描程序LCALLDELAY1MS;显示延时DJNZR1,DISLOOP;一桢显示完返回MOVP3,#0FFH;全灭RET ;列扫描子程序DISLOOP专用NE某T:JNCNE某T1;C=0转扫描高8(p3)位行MOVA,R6;修改扫描字RLAMOVR6,AINCR5CJNER5,#09H,NE某T0;R6=#0FEH时C=0AJMPNE某T1BACK:RETNE某T0:MOVP2,R6;扫描低8(p2)位行AJMPBACKNE某T1:MOVP2,#0FFHMOVP3,R6;扫描高8(p3)位行MOVA,R6;修改扫描字工作方式1;16位方式TR0=1;//启动定时器T0P1=0某3f;//P1端口初值,允许接收,缓存,显示IE=0某87;//允许定时器T0中断IT0=1;IT1=1;PT0=1;while(1){delay(1000);for(i=0;i<32;i++)//显示效果:卷帘出{dipram[i]=Bmp[5][i];huancun[i]=Cmp[5][i];if(i%2)delay(70);}dela y(100);for(i=0;i<6;i++)//显示效果:上滚屏{for(j=0;j<16;j+ +){for(k=0;k<15;k++){huancun[k某BLKN]=huancun[(k+1)某BLKN];huancun[k某BLKN+1]=huancun[(k+1)某BLKN+1];dipram[k某BLKN]=dipram[(k+1)某BLKN];dipram[k某BLKN+1]=dipram[(k+1)某BLKN+1];}huancun[30]=Bmp[i][j某BLKN];huancun[31]=Bmp[i][j某BLKN+1];dipram[30]=Bmp[i][j某BLKN];dipram[31]=Bmp[i][j某BLKN+1];delay(70);}}delay(1000);for(i=0;i<32;i++)//显示效果半屏卷帘{dipram[i]=Bmp[5][i];huancun[i]=Cmp[5][i];if(i%2)delay(70);}for( i=0;i<6;i++)//显示效果,左跑马{for(j=0;j<2;j++)for(k=1;k<9;k++){for(l=0;l<16;l++){huancun[l某BLKN]=huancun[l某BLKN]<<1|huancun[l某BLKN+1]>>7;huancun[l某BLKN+1]=huancun[l某BLKN+1]<<1|Cmp[i][l某BLKN+j]>>(8-k);dipram[l某BLKN]=dipram[l某BLKN]<<1|dipram[l某BLKN+1]>>7;dipram[l某BLKN+1]=dipram[l某BLKN+1]<<1|Bmp[i][l某BLKN+j]>>(8-k);}delay(70);}}delay(1000);for(i=0;i<32;i++)//显示效果:半屏卷帘{dipram[i]=Bmp[5][i];huancun[i]=Cmp[0][i];if(i%2)delay(70);}for( i=1;i<7;i++)//显示效果:向下滚屏{for(j=16;j>0;j--){for(k=15;k>0;k--){huancun[k某BLKN]=huancun[(k-1)某BLKN];huancun[k某BLKN+1]=huancun[(k-1)某BLKN+1];dipram[k某BLKN]=dipram[(k-1)某BLKN];dipram[k某BLKN+1]=dipram[(k-1)某BLKN+1];}huancun[0]=Bmp[i-1][(j-1)某BLKN];huancun[1]=Bmp[i-1][(j-1)某BLKN+1];dipram[0]=Bmp[i-1][(j-1)某BLKN];dipram[1]=Bmp[i-1][(j-1)某BLKN+1];delay(70);}}delay(1000);for(i=0;i<6;i++)//显示效果,右跑马{for(j=2;j>0;j--)for(k=1;k<9;k++){for(l=0;l<16;l++){/某for(m=0;m<32;m++)//显示效果:卷帘出{dipram[m]=Bmp[5][m];}某/huancun[l某BLKN+1]=huancun[l某BLKN+1]>>1|huancun[l某BLKN]<<7;huancun[l某BLKN]=huancun[l某BLKN]>>1|Bmp[i][l某BLKN+j-1]<KN+1]=dipram[l某BLKN+1]>>1|dipram[l某BLKN]<<7;dipram[l某BLKN]=dipram[l某BLKN]>>1|Bmp[i][l某BLKN+j-1]<+)//显示效果:卷帘入{huancun[i]=0某00;dipram[i]=0某00;if(i%2)delay(70);}}}//延时函数voiddelay(unignedintdt){regiterunignedcharbt;for(;dt;dt--)for(b t=0;bt<255;bt++);}//显示屏扫描(定时器T0中断)函数voidleddiplay(void)interrupt1uing1{regiterunignedchari,j=BLKN;TH 0=0某f8;//设定显示屏刷新率每秒62.5TL0=0某30;i=P1;//读取当前显示的行号i=++i&0某0f;//行号加一,屏蔽高四位do{j--;SBUF=huancun[i某BLKN+j];//送显示数据while(!TI);TI=0;}while(j);j=2;do{j--;SBUF=dipram[i某BLKN+j];//送显示数据while(!TI);TI=0;}while(j);//完成一行数据的发送G=1;//消隐(关闭显示)P1&=0某f0;//行号端口清零RRCLK=1;//显示数据打入输出锁存2022-5-712:10回复肥肠炒饭器P1|=i;//写入行号RRCLK=0;//所存显示数据G=0;//打开显示}3楼voide某ter0(void)interrupt0{//unignedchardatadipram[32];unignedcharcodeDmp[][32]={{0某40,0某00,0某20,0某00,0某FC,0某3F,0某04,0某20,0某04,0某20,0某E4,0某27,0某24,0某24,0某24,0某24, 0某24,0某24,0某24,0某24,0某E4,0某27,0某24,0某24,0某04,0某20,0某04,0某28,0某04,0某10,0某00,0某00},/某\向\ {0某40,0某00,0某40,0某10,0某FE,0某3F,0某40,0某10,0某40,0某08,0某40,0某04,0某FF,0某7F,0某80,0某01, 0某40,0某00,0某30,0某0C,0某2C,0某03,0某E3,0某00,0某20,0某20,0某20,0某20,0某C0,0某3F,0某00,0某00},/某\老\ {0某10,0某00,0某D0,0某7F,0某12,0某04,0某12,0某04,0某D2,0某7F,0某52,0某44,0某52,0某44,0某52,0某44, 0某52,0某44,0某4A,0某44,0某4A,0某54,0某48,0某24,0某04,0某04,0某02,0某04,0某01,0某04,0某00,0某04},/某\师\{0某50,0某00,0某90,0某00,0某88,0某3D,0某88,0某20,0某2C,0某20,0某24,0某20,0某26,0某20,0某25,0某20,0某24,0某20,0某24,0某20,0某24,0某20,0某24,0某20,0某24,0某20,0某24,0某28,0某24,0某10,0某00,0某00},/某\们\ {0某00,0某02,0某FE,0某06,0某08,0某02,0某28,0某02,0某44,0某7F,0某FE,0某11,0某50,0某12,0某10,0某12, 0某FE,0某12,0某10,0某0A,0某10,0某04,0某10,0某04,0某F0,0某0A,0某1E,0某11,0某80,0某60,0某40,0某20},/某\致\ {0某48,0某04,0某48,0某04,0某FF,0某05,0某48,0某04,0某04,0某7E,0某FC,0某22,0某82,0某23,0某81,0某12, 0某BC,0某14,0某A4,0某14,0某A4,0某08,0某BC,0某08,0某80,0某14,0某80,0某72,0某A0,0某21,0某40,0某00},/某\敬\};regiterunignedchari,j,k;delay(1000);for(i=0;i<32;i++)//显示效果:卷帘出{dipram[i]=Dmp[0][i];if(i%2)delay(70);}delay(100);for(i=1;i<6;i++)//显示效果:上滚屏{for(j=0;j<16;j++){for(k=0;k<15;k++){dipram[k某BLKN]=dipram[(k+1)某BLKN];dipram[k某BLKN+1]=dipram[(k+1)某BLKN+1];}dipram[30]=Dmp[i][j某BLKN];dipram[31]=Dmp[i][j某BLKN+1];delay(70);}}delay(1000);for(i=0;i<32;i++)//显示效果:卷帘入{dipram[i]=0某00;if(i%2)delay(70);}}voide某ter1(void)interrupt2{unignedcharcodeEmp[][32]={{0某40,0某00,0某40,0某10,0某FE,0某3F,0某40,0某10,0某40,0某08,0某40,0某04,0某FF,0某7F,0某80,0某01, 0某40,0某00,0某30,0某0C,0某2C,0某03,0某E3,0某00,0某20,0某20,0某20,0某20,0某C0,0某3F,0某00,0某00},/某\老\ {0某10,0某00,0某D0,0某7F,0某12,0某04,0某12,0某04,0某D2,0某7F,0某52,0某44,0某52,0某44,0某52,0某44, 0某52,0某44,0某4A,0某44,0某4A,0某54,0某48,0某24,0某04,0某04,0某02,0某04,0某01,0某04,0某00,0某04},/某\师\ {0某50,0某00,0某90,0某00,0某88,0某3D,0某88,0某20,0某2C,0某20,0某24,0某20,0某26,0某20,0某25,0某20, 0某24,0某20,0某24,0某20,0某24,0某20,0某24,0某20,0某24,0某20,0某24,0某28,0某24,0某10,0某00,0某00},/某\们\{0某40,0某00,0某80,0某00,0某FE,0某3F,0某00,0某00,0某08,0某08,0某10,0某04,0某20,0某02,0某FF,0某7F, 0某80,0某00,0某80,0某00,0某FE,0某1F,0某80,0某00,0某80,0某00,0某80,0某00,0某80,0某00,0某80,0某00},/某\辛\ {0某20,0某04,0某20,0某04,0某FE,0某7F,0某20,0某04,0某A0,0某04,0某80,0某00,0某FF,0某7F,0某80,0某00, 0某80,0某00,0某F8,0某0F,0某08,0某08,0某08,0某08,0某08,0某08,0某F8,0某0F,0某08,0某08,0某00,0某00},/某\苦\ {0某00,0某00,0某FE,0某3F,0某00,0某18,0某00,0某06,0某80,0某01,0某80,0某00,0某80,0某00,0某80,0某00, 0某80,0某00,0某80,0某00,0某80,0某00,0某80,0某00,0某80,0某00,0某80,0某00,0某A0,0某00,0某40,0某00},/某\了\};regiterunignedchari,j,k;delay(1000);for(i=0;i<32;i++)//显示效果:卷帘出{huancun[i]=Emp[0][i];if(i%2)delay(70);}delay(100);for(i=1;i<6;i++)//显示效果:上滚屏{for(j=0;j<16;j++){for(k=0;k<15;k++){huancun[k某BLKN]=huancun[(k+1)某BLKN];huancun[k某BLKN+1]=huancun[(k+1)某BLKN+1];}huancun[30]=Emp[i][j某BLKN];huancun[31]=Emp[i][j某BLKN+1];delay(70);}}delay(1000);for(i=0;i<32;i++)//显示效果:卷帘入{huancun[i]=0某00;if(i%2)delay(70);}}单片机16某16点阵显示你好程序2022年05月10日星期日16:49 //测试硬件:at8951+16某16点阵LED//16某16点阵LED显示中文程序//本程序逐个显示中文,从右至左流动显示//使用横向,流动只有字节间操作//--------------------------------#include#defineSELP3//行选线,P3低四位#defineUP8P0//点阵文字上8行IO#defineDOWN8P2//点阵文字下8行IOunignedcharcodeFontData[5][32]={/某--文字:你--某//某--宋体12;此字体下对应的点阵为:宽某高=16某16--某/0某09,0某00,0某09,0某80,0某11,0某04,0某13,0某FE,0某22,0某04,0某34,0某48,0某68,0某40,0某A2,0某50, 0某23,0某48,0某22,0某48,0某24,0某44,0某24,0某46,0某28,0某44,0某21,0某40,0某20,0某80,0某00,0某00/某--文字:好--某//某--宋体12;此字体下对应的点阵为:宽某高=16某16--某/0某10,0某00,0某11,0某FC,0某10,0某08,0某10,0某10,0某FC,0某20,0某24,0某20,0某24,0某20,0某27,0某FE, 0某44,0某20,0某64,0某20,0某18,0某20,0某08,0某20,0某14,0某20,0某26,0某20,0某44,0某A0,0某80,0某40};voidDelay_50u(unignedchart)//50u延时程序{unignedcharj;for(;t>0;t--)for(j=19;j>0;j--);}voidDiNFont(unignedchar某FontBufferStart,unignedcharN,unignedcharTime)//流动显示N个汉字{//参数三个:字符串字模首地址、字数、显示流动速度unignedcharFontNum,i,j,row;//循环变量,字数计数、16次流动、16列扫描for(FontNum=0;FontNumfor(i=0;i<16;i++)//字到字流动16次左移才能完成{for(j=0;jfor(row=0;row<16;row++)//显示16某16屏幕一次{SEL=row;//选通显示列UP8=某(FontBufferStart+FontNum某32+(i+row)某2+1);//获取显示数据循环显示关键算法DOWN8=某(FontBufferStart+FontNum某32+(i+row)某2);//以移动偏移为基础获取新数据Delay_50u(15);//适当延时UP8=0某00;//关闭显示DOWN8=0某00;//关闭显示防止花屏}}}}}voidmain(void){while(1){DiNFont(FontData[0],5,20);}求16某16点阵C程序悬赏分:200-解决时间:2022-11-918:17P1口接154做列扫描P0P2直接接点阵高分求一c程序谢谢~!问题补充:谢谢了·!还可以继续追分就没有人能帮帮我吗哪怕是给我点提示也好是单片机的C程序提问者:milegh-三级最佳答案/某某某某某某某某某某某某某某某点阵字模工具编程辅助效果示例某某某某某某某某某某某某某某某//某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某某该示例中的字模数组均由“点阵字模工具”生成,你可以用你自己需要的点阵信息来替换示例中的字模信息,注意字模大小要一致,否则显示会出问题。
目录1任务和要求 (1)2设计思想与原理 (1)2.1设计思想 (1)2.2 设计原理 (1)3 流程图 (3)4硬件电路图 (4)5仿真图 (5)6课程设计心得 (8)7参考文献 (8)8致谢 (8)9附录: (9)1任务和要求1.设计一个可供6-8组参赛队的智力竞赛抢答器,每组设置一个抢答按钮。
2.电路具有第一抢答信号的鉴别和锁存功能。
即保持该信号不变,同时使后输入的信号无效。
3.在发出“抢答开始”命令后计时,规定的抢答时间到后无人抢答,发出“抢答时间到”信号,并锁定输入电路,使各路抢答信号无法再输入。
4.设置计分电路,每组预置为100分或其他,答对一次加10分,答错减10分(此项可选)。
2设计思想与原理2.1设计思想我的设计思路是竞赛抢答器要有报警系统,要是在规定时间内还没有参赛者抢答或回答出问题时就会发出报警声,倒计时为设定为30S。
并且如果出现犯规抢答时也会发出报警并且显示该犯规选手的编号。
这个抢答器可同时供不大于8名选手或8个代表队参加比赛,各用一个抢答按钮,按钮的编号与选手的编号是相对应的,分别是S1、S2、S3、S4、S5、S6、S7、S8;给节目主持人设置二个控制按钮开关,用来控制系统的清零和抢答的开始;该八路抢答器具有程序存储、数据锁存和显示功能,抢答开始后,若有选手按动抢答按钮,编号立即锁存,并在数码管上显示出选手的编号,参赛选手在设定的时间内抢答有效,定时器停止工作,显示器上显示选手的编号和抢答时刻的时间,并保持到主持人将系统清零;如果定时抢答30S后,却没有选手抢答时,系统持续报警,直到定时抢答的时间为零,本次抢答无效,并封锁输入电路,禁止选手超时后抢答,时间显示器上显示FFF 犯规处理:如果主持人没按"开始"键,就有选手抢答,则显示选手编码,并持续报警。
如果已经有选手抢答了,别的选手则按键无效。
直到主持人重新复位按下开始键为止。
主持人可以根据不同的问答方式设定不同的抢答时间和回答时间。
单片微型计算机(single chip microcomputer)简称单片机,它是为各类专用控制器而设计的通用或专用微型计算机系统,高密度集成了普通计算机微处理器,一定容量的RAM和ROM以及输入/输出接口,定时器等电路于一块芯片上构成的。
单片机自20世纪70年代问世以来,以极其高的性价比受到人们的重视和关注,所以应用很广,发展很快。
单片机的优点是体积小、重量轻、抗干扰能力强,对环境要求不高,价格低廉,可靠性高,灵活性好,开发较为容易。
在现代工业控制和一些智能化仪器仪表中,越来越多的场所需要用点阵图形显示器显示汉字,汉字显示屏也广泛应用到汽车报站器,广告屏等。
所以研究LED显示有实用的意义。
LED点阵显示屏作为一种新兴的显示器件,是由多个独立的LED发光二极管封装而成. LED点阵显示屏可以显示数字或符号, 通常用来显示时间、速度、系统状态等。
本设计是4个16×16点阵LED电子显示屏的设计。
整机以美国ATMEL公司生产的40脚单片机AT89C51为核心,介绍了以它为控制系统的LED点阵电子显示屏的动态设计和开发过程。
通过该芯片控制一个行驱动器74LS154和八个列驱动器74HC595来驱动显示屏显示。
该电子显示屏可以显示各种文字或单色图像,全屏能显示4个汉字,采用16块8 x 8点阵LED显示模块来组成4个16x16点阵显示模式。
显示采用动态显示,使得图形或文字能够实现静止、移入移出等多种显示方式。
文中详细介绍了LED点阵显示的硬件设计思路、硬件电路各个部分的功能及原理、相应软件的程序设计,以及使用说明等。
关键词:AT89C51单片机 LED 16*16点阵显示动态显示目录第一章绪论 (1)1.1 设计课题背景知识 (1)1.2 问题提出 (3)1.3 LED显示屏的发展 (4)第二章功能要求及方案论证 (6)2.1 功能要求 (6)2.1 功能要求 (6)第三章系统电路的设计 (9)3.1 设计框图及介绍 (9)3.2 51系列单片机简介 (9)3.3 单片机最小应用系统电路设计 (13)3.4 LED点阵介绍 (14)3.5 LED显示方式 (14)3.6 点阵的移动 (17)3.7 点阵的颜色 (21)3.8 LED阵列驱动电路 (21)3.9 单片机延时子程序 (22)第四章系统程序的设计 (24)4.1 显示驱动程序 (24)4.2 系统主程序 (25)第五章调试及性能分析 (32)5.1 开发环境介绍 (32)5.2 理论性能分析 (32)5.3 系统调试 (33)第六章总结 (34)致谢 (35)附录 (36)一. 程序代码 (36)系统主程序 (37)二.主要芯片介绍 (42)三.点阵左移显示的流程图 (46)四.元件清单 (47)五.参考文献 (47)六.仿真电路图 (48)第一章绪论1.1 设计课题背景知识单片微型计算机(single chip microcomputer)简称单片机,它是为各类专用控制器而设计的通用或专用微型计算机系统,高密度集成了普通计算机微处理器,一定容量的RAM和ROM以及输入/输出接口,定时器等电路于一块芯片上构成的。
单片机原理及应用课程设计报告书题目:16×16点阵LED电子显示屏的设计姓名:马超学号:P091812933专业:电气工程及其自动化指导老师:马慧兰16*16点阵设计摘要单片机自20世纪70年代问世以来,以极其高的性价比受到人们的重视和关注,所以应用很广,发展很快。
单片机的优点是体积小、重量轻、抗干扰能力强,对环境要求不高,价格低廉,可靠性高,灵活性好,开发较为容易。
在现代工业控制和一些智能化仪器仪表中,越来越多的场所需要用点阵图形显示器显示汉字,汉字显示屏也广泛应用到汽车报站器,广告屏等。
所以研究LED显示有实用的意义。
LED显示屏分为图文显示屏和视频显示屏,均由LED矩阵块组成。
LED显示屏可以显示变化的数字、文字、图形图像;不仅可以用于室内环境还可以用于室外环境,具有投影仪、电视墙、液晶显示屏无法比拟的优点。
LED 之所以受到广泛重视而得到迅速发展,是与它本身所具有的优点分不开的。
这些优点概括起来是:亮度高、工作电压低、功耗小、小型化、寿命长、耐冲击和性能稳定。
LED的发展前景极为广阔,目前正朝着更高亮度、更高耐气候性、更高的发光密度、更高的发光均匀性,可靠性、全色化方向发展。
现代LED的发展很快,很多研究领域非常已经深刻,所以想利用自己学的单片机知识简单的研究一下用单片机驱动的LED显示汉字,以达到学以致用和实践相结合的目的,同时巩固加深自己的单片机知识。
用点阵方式构成图形或文字,是非常灵活的,可以根据需要任意组合和变化,只要设计好合适的数据文件,就可以得到满意的显示效果。
因而采用点阵式图文显示屏显示经常需要变化的信息,是非常有效的。
点阵大小可以有16×16、24×24、32×32、48×48等不同规格,也有单色、双色、和多色几种,最常用的是单色图文屏。
单色屏多使用红色或橘红色或橙色LED点阵单元。
双色图文屏和多色图文屏,在LED点阵的每一个“点”上布置有两个或多个不同颜色的LED发光器件。
目录摘要 (1)Abstract (2)1设计原理 (3)1.1 MCS-51单片机的结构及编程方法 (3)1.2 16*16点阵LED原理 (5)1.3 3-8译码器原理 (6)2.设计方案介绍 (7)2.1 设计总体思路 (7)2.2 与题目相关的具体设计 (7)2.3程序设计流程图 (8)3.源程序,原理图和仿真图 (9)3.1程序清单(见附录) (9)3.2电路图 (9)3.2.1电路原理图 (9)3.2.2电路图分析 (9)3.3仿真图 (10)4性能分析 (11)5.总结和心得 (12)6.参考文献 (13)附录:程序代码 (14)摘要LED点阵显示屏作为一种新兴的显示器件,是由多个独立的LED发光二极管封装而成. LED点阵显示屏可以显示数字或符号, 通常用来显示时间、速度、系统状态等。
文章给出了一种基于MCS-51单片机的16×16 点阵LED显示屏的设计方案。
包括系统具体的硬件设计方案,软件流程图和部分汇编语言程序等方面。
在负载范围内, 只需通过简单的级联就可以对显示屏进行扩展,是一种成本低廉的图文显示方案。
关键词:MCS-51;LED;单片机AbstractAs a popular display device component, LED dot-matrix display board consists of several independent LED (Light Emitting Diode). The LED dot-matrix display board can display the number or sign, and it is usually used to show time, speed, the state of system etc. This paper introduces a kind of simple 16x16 LED display screen design process based on MCS-51 single chip minicomputer . The detail hardware scheme, software flow and assemble language programmer design and so on is followed. The display part can be cascaded to meet the need. The practice proves the design is low-cost and effective.Key words: MCS-51;LED;MCU1设计原理1.1 MCS-51单片机的结构及编程方法MCS-51单片机的组成: CPU(进行运算、控制)、RAM(数据存储器)、ROM(程序存储器)、I/O口(串口、并口)、内部总线和中断系统等。
《单片机原理及应用》课程设计设计项目名称:单片机控制16×16阵列LED显示汉字姓名及学号:专业班级:成绩:指导教师:课程设计工作时间:材料目录一、课程设计任务书 (1)二、课程设计成绩评定 (2)三、课程设计摘要 (3)四、课程设计报告正文 (4)五、参考资料 (14)六、设计小结 (15)一、课程设计任务书:1、课程设计的任务基本要求:完成基于AT89C52单片机为核心的设计,要求应用仿真软件Proteus进行仿真。
任务要求:1)选题方向正确,具有科学性、创新性和可行性2)研究方案合理、技术路线、课题计划安排得当3)做好文献综述工作4)完成基于AT89C52单片机为核心设计工作2、进度安排:第一阶段:4月20日-4月30 日学习Protues软件阶段第二阶段:5月4日-5月10日资料查找,系统设计框架设计第三阶段:5月11日-5月20日系统设计,并完成仿真调试第四阶段:5月20日-5月30日在单片机学习板上进行系统运行,书写课程设计报告。
3、参考文献:[1]朱蓉,郑建华.基于MCS-51单片机定时精确控制的研究[J].现代电子技术,2005,(17):32—48.[2]张同怀,张庆玲.输出幅度可控制的信号发生器[J].科技技术与工程,2010,(13):92—98.[3]许文斌.单片机实现智能信号发生器[J].中国新技术新产品,2008,(17):45—51.[4]Vankka J.Spur reduction techniques in sine out-put direct digital synthesis[J].IEEE Proc. 2001,(15):74—90.[5] 张福贵,姚振东.基于DDS的高性能信号发生器的实现[J].成都信息工程学院学报,2006,(01):12—18.指导教师签字:教研室主任签字:年月日年月日二|、成绩评定1、指导教师成绩评定:题目指标文献综述10分工作态度20分实践能力20分分析问题能力20分质量20分创新10分得分2、指导教师评语:指导教师签字:年月日3、答辩意见及成绩:答辩小组成员签字:年月日总评成绩:(教师评分×75%+答辩成绩×25%)三、摘要本设计以单片机作为16×16点阵显示的主线,采用的单片机是AT89C51系列的芯片。
毕业设计姓名:专业:班级:电子信息工程系印制二○○九年十一月宝鸡职业技术学院毕业设计任务书姓名:专业:班级:设计课题:LED点阵广告屏设计电子信息工程系印制二○一一年九月毕业设计题目: LED点阵广告屏设计毕业设计目的:本课题是一个典型的单片机应用系统,设计内容包括硬件和软件两部分。
选择并完成该课题,可以使同学们从总体上进一步理解和掌握单片机应用技术,为工作后进行产品开发和维修打下应有的基础。
毕业设计任务:本课题要求完成以下功能:1、基于THKSCM-2型单片机综合开发实验实训装置上的硬件资源,自行设计软件并调试完成该课题。
要求滚动显示“系别、班级、姓名”等汉字信息。
2、依据THKSCM-2型单片机综合开发实验实训装置上的硬件资源,设计并画出系统硬件电路图。
3、自行设计程序,要求作详细注释,并调试通过。
4、要求学会从PC机上提取汉字字库的方法。
*5、查找实用LED点阵广告屏设计方案的相关资料。
毕业设计主要技术数据:1、单片机选用AT89C51,LED选用16×16点阵模块。
2、点阵扫描频率建议选为f≥100HZ。
毕业设计工作量要求:论文正文至少应包括方案论证、硬件电路图、源程序、结论及建议等部分。
字数不少于5000字。
毕业设计进度计划:第一周:下达设计任务,认真分析选题要完成的任务及其技术指标,然后向指导教师汇报自己的理解,指导教师指出学生理解中存在的问题。
教师应鼓励学生提出新的想法,对合理意见给予肯定,并重新修改功能和技术指标。
第二周:查阅、收集资料,根据修改后的功能和技术指标,选择并确定总体方案,写出方案论证报告。
及时和指导教师交流,征求指导教师意见并加以修改。
第三周:根据方案论证报告,设计硬件系统。
完成硬件电路设计,画出硬件电路图。
征求指导教师意见并加以修改。
第四周:根据方案论证报告,在硬件系统的基础上设计软件系统。
画出软件流程图,完成关键部分的软件设计。
征求指导教师意见并加以修改。
课程设计题目4个8x8点阵LED电子显示屏的设计学院物流学院专业物流工程班级物流ZY1001姓名宋金龙指导教师朱宏辉2013 年 6 月25 日摘要本设计是基于MCS-51的16x16点阵LED电子显示屏的设计,16x16的点阵共有256个发光二极管,我们采用动态扫描的显示方法,更节省锁存器也就节省了成本。
扫描驱动电路就可以实现多行(比如16行)的同名列共用一套驱动器。
具体就16x16的点阵来说,把所有同1行的发光管的阳极连在一起,把所有同1列的发光管的阴极连在一起(即我们采用共阳极的接法)。
采用扫描方式进行显示时,每一行和每一列都有一个行驱动器和列驱动器,各行的同名列和各列的同名行共用一个驱动器。
我们采用四个74LS273锁存器。
显示数据通常存储在单片机的存储器中,按8位一个字节的形式顺序排放。
编写点阵显示程序,利用proteus画出电路原理图并装入程序仿真调试,仿真成功后完成电路焊接并装入程序完成实物设计。
整个设计过程让我们学到许多实践知识!LED显示屏作为一种新型的显示器件,是由多个发光二极管按矩阵形式排列封装而成,通常用来显示时间、图文等信息,由点阵LED组成的汉字显示屏在工工程所应用非常广泛。
LED显示屏显示画面色彩鲜艳,立体感强,静如油画,动如电影,广泛应用于车站、码头、机场、商场、医院、宾馆、银行、证券市场、建筑市场、拍卖行、工业企业管理和其它公共场所。
在实际应用中的显示屏由于成本和可靠性的因素常采用一种称为动态扫描的显示方法。
本文设计的是一个室内用16x16的点阵LED图文显示屏,图形或文字显示有静止、移入移出等显示方式。
本设计是基于MCS-51单片机的16x16显示屏,其中包含了硬件、软件、调试等方案的设计。
此外、该设计只需简单的级联就能实现显示屏的扩展,但级联时要注意不要超过驱动负载范围。
关键字:LED,点阵式,显示屏,AT89C51武汉理工大学《单片机课程设计》报告目录摘要 (2)第一章:绪论 (1)1.1掌握单片机应用系统的一般过程和方法 (1)1.2:设计要求 (1)第二章:硬件电路的设计 (1)2.1设计思路 (1)2.2实验器材 (1)2.2.1 锁存器74LS273介绍 (2)2.3硬件电路设计框图 (2)2.4 16*16点阵LED显示器汉字显示的工作原理 (3)2.5 如何将4片8x8的LED拼接成一片16x16的LED显示屏(显示屏的扩展) (5)2.6 点阵LED显示器与单片机的接口 (6)第三章:系统软件设计 (8)第四章:系统程序设计 (9)ORG 0000H (10)总结: (24)参考文献: (26)附:元件清单及仿真图 (27)武汉理工大学《单片机课程设计》实验报告第一章:绪论1.1掌握单片机应用系统的一般过程和方法综合运用单片机原理与接口技术课程和其它有关先修课程的理论及方法,分析和解决单片机应用系统的设计、分析和实验开发等相关问题,进一步巩固和加深对所学知识的理解。
目录
第1节引言 (2)
1.1 LED点阵显示屏概述 (2)
1.2 LED显示屏控制技术状况 (3)
1.2.1串行传输与并行传输技术 (3)
1.2.2动态扫描与静态锁存技术 (3)
1.2.3自动检测及远程控制技术 (3)
1.3设计任务 (3)
第2节总体方案论证与设计 (4)
2.1 LED驱动模块 (4)
2.2数据存储模块 (4)
2.3总体硬件组成框图 (5)
第3节系统硬件设计 (5)
3.1 LED驱动模块的硬件设计 (5)
3.1.1 74 LS154芯片介绍 (5)
3.1.2 驱动电路的设计 (6)
3.2数据存储电路的设计 (7)
3.3 PC机通信模块的设计 (8)
第4节系统的软件设计 (8)
4.1下位机软件流程 (8)
4.2上位机软件 (9)
第5节系统调试与测试结果分析 (11)
5.1使用的仪器仪表 (11)
5.2系统调试 (11)
5.2.1硬件调试 (11)
5.2.2软件调试 (11)
5.2.3硬件软件联调 (12)
5.3测试结果 (12)
总结
参考文献
双汉字16×16 LED点阵广告屏
第1节引言
LED显示屏是利用发光二极管点阵模块或像素单元组成的平面式显示屏幕。
它具有发光效率高、使用寿命长、组态灵活、色彩丰富以及对室内外环境适应能力强等优点。
并广泛的应用于公交汽车,码头,商店,学校和银行等公共场合的信息发布和广告宣传。
LED显示屏经历了从单色,双色图文显示屏到现在的全彩色视频显示屏的发展过程,自20世纪八十年代开始,LED显示屏的应用领域已经遍布交通、电信、教育、证券、广告宣传等各方面。
1.1 LED点阵显示屏概述
LED点阵显示屏的构成型式有多种,其中典型的有两种。
一种把所需展示的广告信息烧写固化到EPROM芯片内,能进行固定内容的多幅汉字显示,称为单显示型;另一种在机内设置了字库、程序库,具有程序编制能力,能进行内容可变的多幅汉字显示,称可编程序型。
目前,国内的LED点阵显示屏大部分是单显示型,其显示的内容相对较少,显示花样较单一。
一般在产品出厂时,显示内容就已写入显示屏控制系统中的EPROM芯片内,当需要更换显示内容时就非常困难,这样使该类型的显示屏使用范围受到了限制。
国内的另一种LED显示屏——可编程序型LED显示屏,虽然增加了显示屏系统的编程能力,显示内容和显示花样都有所增加,但也存在着更换显示内容不便的缺点。
随着社会经济的迅速发展,如今的广告牌都存在着显示内容丰富、信息量大、信息更换速度快等特点。
因此传统的LED显示屏控制系统已经越来越不能满足现代广告宣传业的需要。
而利用PC机通信技术控制LED显示屏,则具有显示内容丰富,信息更换灵活等优点。
1.2 LED显示屏控制技术状况
显示屏的控制系统包括输入接口电路、信号控制、转换和数字化处理电路及输出接口电路等,涉及的具体技术很多,其关键技术包括串行传输与并行传输技术、动态扫描与静态锁存技术、自动检测及远程控制技术等。
1.2.1 串行传输与并行传输技术
LED显示屏的数据传输方式主要有串行和并行两种。
日前普遍采用串行控制技术,显示屏每个单元内部的不同驱动电路和各级联单元之间,每个时钟仅传送一位数据。
采用这种方式的驱动IC种类较多,不同显示单元之间的联线较少,可减少显示单元的数据传输驱动元件,从而提高整个系统的可靠性和性价比,具体工程实现也较为容易。
1.2.2 动态扫描与静态锁存技术
LED显示屏控制系统实现显示信息的刷新技术有动态扫描和静态锁存两种方式。
一般室内显示屏多采用动态扫描技术,即一行发光二极管共用一行驱动寄存器,根据共用一行驱动寄存器的发光二极管像素数目,分为1/4,1/16扫描等。
室外显示屏基本上采用静态锁存技术,即每一个发光一极管都对应有一个驱动寄存器,无需时分工作,从而保证了每一个发光一极管的亮度占空比为100%。
动态扫描法可以大大减少控制器的I/O口,因此应用较广。
1.2.3自动检测及远程控制技术
LED显示屏的构成复杂,特别是室外显示屏,供电、环境亮度、环境温度条件等都直接影响显示屏的正常运行。
在LED显示屏的控制系统中,因根据需要对温度、亮度、电源等进行自动检测控制,也可根据需要,远程实现对显示屏的亮度、色度调节、图像水平和垂直位置的调节以及工作方式的转换等。
1.3 本设计任务
现在市场上各类基于LED的显示屏较多,但大部分产品为单一模式的LED 显示屏,其在显示内容的更换及显示屏的重组等方面都存在不便之处。
但随着信息化社会的迅速发展,LED显示屏正在向显示内容丰富、信息更改方便等方面发展。
因此制作一款多功能的LED广告显示屏是非常有意义地。
本研究即以AT89C51单片机为核心,采用串行传输、动态扫描技术,制作一款拥有PC机通信功能的,模块化LED多功能显示屏。
第2 节总体方案论证与设计
本系统采用单片机AT89C51为LED显示屏的控制核心,系统主要包括LED 驱动模块、数据存储模块、PC机通信模块等。
下面对各模块的设计逐一进行论证比较。
2.1 LED驱动模块
方案一:采用静态锁存方式,将每一个LED发光管的一端接至单片机的一个I/O口,另一端通过电阻接电源。
这种方法可以直接驱动LED,原理简单,驱动能力强,LED的亮度也可以通过限流电阻调节,非常方便,但此种方法太浪费单片机的I/O口,只适合于较小的系统。
方案二:采用动态扫描方式,通过三极管驱动并联在一起的LED发光管的一端(共阴或共2端),LED发光管的另一脚接通用I/O口,控制其亮灭。
该方法能驱动较多的LED,控制方式较灵活,而且节省单片机的资源。
比较以上两种方案,系统设计中采用方案二。
2.2 数据存储模块
方案一:采用静态RAM存储显示屏的显示内容,静态数据存储器具有存储容量大,传输速度快等优点。
但其存储的数据掉电后会消失,因此不适合用于存储长时间不变的数据。
方案二:采用ROM芯片存储LED显示屏要显示的信息,采用ROM芯片可以长时间的存储信息,而且掉电数据不丢失,此种方式适合于存储不变的数据。
方案三:采用串行EEPROM(如24C256等)存储LED显示屏要显示的信息。
串行EEPROM技术是一种非易失性存储技术,它几乎具有所有类型存储器的优点:不挥发性、可更新性、高密度、低功耗和高性价比,非常适合应用于各类工业测控系统。
它克服了常用的2816、2817、2864等并行EEPROM器件价格高、体积大、可靠性低(这些器件如不采取措施,在上电、下电时常会丢失数据)等不足,在速度要求不是很高的情况下,该器件是最理想的选择。
比较以上三种方案,方案三有明显的优点,因此选者方案三。
2.3 总体硬件组成框图
图2-1 总体硬件组成框图
系统框图如图2-1所示,系统主要由三大模块组成即LED驱动模块、数据存储模块、PC机通信模块。
第3节系统硬件设计
为使该模块化LED显示屏控制系统具有更加方便和灵活性,我们对系统的硬件做了精心设计。
硬件电路包括LED驱动模块、数据存储模块、PC机通信模块等三大模块。
3.1 LED驱动模块的硬件设计
LED驱动模块是LED显示屏设计的关键部分,驱动电路设计的好坏直接关系到LED显示屏的亮度、稳定度等重要指标。
本次设计中LED的驱动是采用三极管和74LS154实现的。
3.1.1 74 LS154芯片介绍
图3-1-1 74LS154的真值表
3.1.2 驱动电路的设计
此系统中驱动电路是由74LS154和三极管组成的,原理图如图3-1-2所示。