1、1,可编程字符(图案)显示器设计 课程设计电子线路设计实验测试 华中科技大学 谢自美 主编,黄晓明 139 - 0711 4871 QQ:1074748619 h1_x2_,2,导学,第一节 可编程字符(图案)显示电路的基本组成,第二节 可编程字符(图案)显示电路的工作原理,第四节 设计中常见错误汇编,第三节 EPROM/EEPROM的擦除与写操作,可编程字符(图案)显示器设计目录,第五节 参考电路及参考PCB板,3,导 学,将要显示的内容,如:文字、图案等信 息代码用EPROM( ) 预存起来,再通过控制电路和点阵显示屏将其还原显示。这个过程就称为可编程字符(图案)显示。,我们要完成这个项目
2、的设计,必须首先 掌握EPROM( )、发光二极管矩阵显示屏及列选线、行选线等相关数字逻辑电路的工作原理,然后再着手设计。,4,1、根据个人专业发展及市场应用前景进行策划,做可行性分析; 2、掌握整个系统的内部结构及工作原理; 3、分别做出小系统(时钟脉冲源、ROM的编程、行选线产生电路、列选线产生电路、点阵屏电路及其它辅助电路)设计方案; 4、进行整体电路设计,用ProtelDXP出PCB板图; 5、制做PCB板、采购、焊接、编程(写入)及调试; 6、写出设计报告和使用说明。,返回,5,第一节 可编程字符(图案)显示电路的基本组成,一、可编程字符(图案)显示器的组成框图,6,二、 时钟脉冲源
3、的作用:,为地址计数器提供所需的计数脉冲。一般由专用 的矩形波发生器(可采用555定时器)来构成。,7,三、 地址计数器的作用:,分别为EPROM存贮器和行选线产生电路提供 地址线 (信息) 。一般由多个D触发器、计数器组合 成的时序逻辑电路来构成。,8,四、 EPROM存贮器的作用:,EPROM存贮器用于存放将要显示的字符或图 案,它是字符显示器的核心组成部件。EPROM愈 大,存贮的字符或图案信息也愈多。,9,五、 列选线产生电路的作用:,将EPROM存贮器存放的字符或图案信息,通 过列选线产生电路(组合逻辑电路)直接去驱动发光 二极管显示屏的列选线输入端。,10,六、 行选线产生电路的作
4、用:,将不断变化的地址计数器信息,通过行选线产 生电路(译码器)去依次逐行驱动(扫描)发光二极管显 示屏的行选线输入端。,11,七、发光二极管显示屏的作用:,收到列选线产生电路送来的字符或图案信息和行选 线送来的逐行扫描信息后,发光二极管显示屏可以逐行 显示EPROM存贮器中的内容。,返回,12,一、EPROM存贮器的工作原理:,1、 常用EPROM存贮器的型号及引脚图,第二节 可编程字符(图案)显示电路的工作原理,13,14,2、 常用EPROM存贮器各引脚的功能, 上述五种芯片主电源脚都为Vcc(+5V),都有公共地端(GND);, 它们的编程电源引脚都为Vpp (+25V) ;, 地址线
5、随着EPROM内部存贮单元的增加而递增。,15, 为片选通信号输入端,当为低平时该芯片被选中。, 为编程脉冲输入端,当为低电平时允许该芯片编程。, 为允许数据输出(读)信号输入端,当为低平 时允许该芯片的数据输出(读)。, 它们的数据线为D7D0,都是8根;,16,3、 EPROM存贮器存贮容量的扩展,用两片2K的EPROM(2716)扩展为4K的EPROM:,C=0时: C=1时:,17,4、 EEPROM存贮器,EEPROM又称为可电擦除的可编程只读存储器。 它可以很方便地用编程器随时对芯片进行修改。常见 的EEPROM的型号有:28C17(2K*8位)、28C64(8K*8 位)、28C
6、256(32K*8位)等。在本设计中常用28C17去 替代EPROM中的2716芯片。,I/O7I/O0 为数据端; A0 A10为地址端,可寻地址 范围达到2048(2K)个存储单元;为写控制端;为片选控制;为输出允许控制端。,18,5、 EEPROM存贮器存贮容量的扩展,用两片2K的EEPROM(28C17)扩展为4K的存贮器:,C=0时: C=1时:,19,二、发光二极管矩阵显示屏,1、基本发光二极管矩阵显示屏的结构 (88),列选线,行 选 线,所有 的列选线 接二极管 的负极, 所有的行 选线接二 极管的正 极。,20,2、基本发光二极管矩阵显示屏的工作原理,只要一 次给出 8 根
7、列选线的低 电平,同时 再给出某根 行选线的高 电平,该行 对应的二极 管就会导通 发光。,21,若要显示“王”字,列选线的编码依次为:00H / 00H / E7H / 81H / 81H / E7H / 00H / 00H,行选线配合 列选线从上向下 依次为1,也称 为扫描。由于人 眼的视觉暂留现 象,当行扫描全 部完成时,我们 看到的就是一个 “王”字。,0 0 0 0 0 0 0 0,0 0 0 0 0 0 0 0,0 0 0 0 0 0 0 0,0 0 0 0 0 0 0 0,1 1 1 0 0 1 1 1,1 1 1 0 0 1 1 1,1 0 0 0 0 0 0 1,1 0 0
8、0 0 0 0 1,22,推 论,列选线依次输入的是待显示的字 符(图案)信息编码。这些信息就存放 在EPROM或EEPROM里面。行选线依次输入的是扫描信息(换 句话讲:每根行选线都配合列选线轮 流输入高电平)。 注意:行选线的扫描频率不能太低。否则会有闪烁现象。,23,3、发光二极管矩阵显示屏的扩展(1616),将多片 基本的 8X8 矩阵显示屏 按行并行和 列并列方式 可以组合成 16 X 16 16 X 256 256 X 256 大显示屏。,24,4、常用88点阵显示屏 的引脚图及扩展 5、扩展为1616点阵屏引脚图,25,三、列选线和行选线产生电路(以16 X16显示屏为例),1、
9、 列选线产生电路,由前面的分析得知,列选线输入的信息来自 于EPROM。而一片EPROM只有8个数据端,而 16 X16 的显示屏的列选线是16根。因此必须调用 EPROM 内部的两个存贮单元才能控制 16X16 显 示屏的16根列选线。(每个单元存半个字),解决之道:利用D触发器分别提供EPROM 内部两个相邻存贮单元地址,然后再将这两个存 贮单元的内容(16位)挂到列选线上即可。见后图,26,以显示“王者风范”为例。其 EPROM的内容分配如下:,27,列选线编码 0000 H 0000 H FE7FH FE7FH FE7FH FE7FH FE7FH 8001 H 8001 H FE7FH
10、 FE7FH FE7FH FE7FH FE7FH 0000 H 0000 H,28,列选线编码 FFFFH FFFFH 0180 H 0180 H 0180 H 0180 H 0180 H 7FFEH 7FFEH 0180 H 0180 H 0180 H 0180 H 0180 H FFFFH FFFFH,29,(00000000000)=FFH, (00000000001)=FFH, (00000000010)=FFH, (00000000011)=FFH, (00000000100)=01H, (00000000101)=80H, (00000000110)=01H, (000000001
11、11)=80H, (00000001000)=01H, (00000001001)=80H, (00000001010)=01H, (00000001011)=80H, (00000001100)=01H, (00000001101)=80H, (00000001110)=7FH, (00000001111)=FEH, (00000010000)=7FH, (00000010001)=FEH, (00000010010)=01H, (00000010011)=80H, (00000010100)=01H, (00000010101)=80H, (00000010110)=01H, (00000
12、010111)=80H, (00000011000)=01H, (00000011001)=80H, (00000011010)=01H, (00000011011)=80H, (00000011100)=FFH, (00000011101)=FFH, (00000011110)=FFH, (00000011111)=FFH。,假若EPROM地址(A10A9A8A7A6A5A4A3A2A1A0)从00000000000开始,则“王”字在存贮单元中与地址的对应关系如下(占有32个存贮单元):,30,“王”在EPROM内存中所有的地址汇总:,31,列选线编码 FF7FH FF6FH F007H F
13、F5FH FF3FH 8000 H FEFFH FC07H F9F7H F5F7H EDF7H 9C07H FDF7H FDF7H FDF7H FC07H,32,列选线编码 0080 H 0090 H 0FF8H 00A0H 00C0H 7FFFH 0100 H 03F8H 0608H 0A08H 1208 H 63F8H 0208 H 0208 H 0208 H 03F8H,由于代码从EPROM出来时被与非门非了后送入列选线。因此还要对代码预取一次非。,33,(00000100000)=00H, (00000100001)=80H, (00000100010)=00H, (000001000
14、11)=90H, (00000100100)=0FH, (00000100101)=F8H, (00000100110)=00H, (00000100111)=A0H, (00000101000)=00H, (00000101001)=C0H, (00000101010)=7FH, (00000101011)=FFH, (00000101100)=01H, (00000101101)=00H, (00000101110)=03H, (00000101111)=F8H, (00000110000)=06H, (00000110001)=08H, (00000110010)=0AH, (00000
15、110011)=08H, (00000110100)=12H, (00000110101)=08H, (00000110110)=63H, (00000110111)=F8H, (00000111000)=02H, (00000111001)=08H, (00000111010)=02H, (00000111011)=08H, (00000111100)=02H, (00000111101)=08H, (00000111110)=03H, (00000111111)=F8H。,EPROM地址(A10A9A8A7A6A5A4A3A2A1A0)接着 从00000100000开始,则“者”字在存贮单
16、元中与地址 的对应关系如下(也占有32个存贮单元):,34,“者”在EPROM内存中所有的地址汇总:,35,列选线编码 E00FH EFEFH EBAFH EBAFH ED6FH ED6FH EEEFH EEEFH ED6FH DD77H DBB7H DBB7H D7D6H D7D6H BFFAH BFFDH,36,列选线编码 1FF0H 1010 H 1450 H 1450 H 1290 H 1290 H 1110 H 1110 H 1290 H 2288 H 2448 H 2448 H 2829 H 2829 H 4005 H 4002 H,由于代码从EPROM出来时被与非门非了 后送入列
17、选线。因此还要对代码预取一次非。,37,(00001000000)=1FH, (00001000001)=F0H, (00001000010)=10H, (00001000011)=10H, (00001000100)=14H, (00001000101)=50H, (00001000110)=14H, (00001000111)=50H, (00001001000)=12H, (00001001001)=90H, (00001001010)=12H, (00001001011)=90H, (00001001100)=11H, (00001001101)=10H, (00001001110)=
18、11H, (00001001111)=10H, (00001010000)=12H, (00001010001)=90H, (00001010010)=22H, (00001010011)=88H, (00001010100)=24H, (00001010101)=48H, (00001010110)=24H, (00001010111)=48H, (00001011000)=28H, (00001011001)=29H, (00001011010)=28H, (00001011011)=29H, (00001011100)=40H, (00001011101)=05H, (000010111
19、10)=40H, (00001011111)=02H。,EPROM地址(A10A9A8A7A6A5A4A3A2A1A0)接着 从00001000000开始,则“风”字在存贮单元中与地址 的对应关系如下(也占有32个存贮单元):,38,“风”在EPROM内存中所有的地址汇总:,39,列选线编码 F7EFH C003 H F7EFH BFFFH DE07 H EDFBH BDFBH DDFBH EDFBH FDFBH F5BBH EDE6H DDEEH 5EFDH BEFBH BF07 H,40,列选线编码 0910 H 3FFCH 0810 H 4000 H 21F8H 1204 H 4204
20、H 2204 H 1204 H 0204 H 0A44H 1219 H 2211 H A102H 4104 H 40F8H,由于代码从EPROM出来时被与非门非了 后送入列选线。因此还要对代码预取一次非。,41,(00001100000)=09H, (00001100001)=10H, (00001100010)=3FH, (00001100011)=FCH, (00001100100)=08H, (00001100101)=10H, (00001100110)=40H, (00001100111)=00H, (00001101000)=21H, (00001101001)=F8H, (000
21、01101010)=12H, (00001101011)=04H, (00001101100)=42H, (00001101101)=04H, (00001101110)=22H, (00001101111)=04H, (00001110000)=12H, (00001110001)=04H, (00001110010)=02H, (00001110011)=04H, (00001110100)=0AH, (00001110101)=44H, (00001110110)=12H, (00001110111)=19H, (00001111000)=22H, (00001111001)=11H,
22、(00001111010)=A1H, (00001111011)=02H, (00001111100)=41H, (00001111101)=04H, (00001111110)=40H, (00001111111)=F8H。,EPROM地址(A10A9A8A7A6A5A4A3A2A1A0)接着 从00001100000开始,则“范”字在存贮单元中与地址 的对应关系如下(也占有32个存贮单元):,42,“范”在EPROM内存中所有的地址汇总:,43,将“王者风范”在EPROM内存中所有的地址汇总:,可以算出2K的EPROM中,能存贮64个汉字。(2048/32=64)。,44,当 D 触发器的
23、 时,即地址为:00000000000。,18与非门开通,EPROM对应地址的代码FFH从数 据线送到了低8位列选线上;而916与非门关闭。,0 0 0 0 0 0 0 0,1 1 1 1 1 1 1 1,0 0 0 0 0 0 0 0 0 0 0,1 1 1 1 1 1 1 1,45,当 D 触发器的 时,即地址为:00000000001。,916与非门开通,EPROM对应下一个地址的代码 FFH从数据线送到高8位列选线上;而18与非门关闭。,0 0 0 0 0 0 0 0,1 1 1 1 1 1 1 1,1 0 0 0 0 0 0 0 0 0 0,1 1 1 1 1 1 1 1,46,当
24、D 触发器的 时,即地址为:00000000010。,18与非门又开通,EPROM对应第三个地址的代码 FFH从数据线送到低8位列选线上;而916与非门关闭。,1 1 1 1 1 1 1 1,1 1 1 1 1 1 1 1,0 1 0 0 0 0 0 0 0 0 0,1 1 1 1 1 1 1 1,47,当 D 触发器的 时,即地址为:00000000011。,916与非门开通,EPROM对应第四个地址的代码 FFH从数据线送到高8位列选线上;而18与非门关闭。,1 1 1 1 1 1 1 1,1 1 1 1 1 1 1 1,1 1 0 0 0 0 0 0 0 0 0,1 1 1 1 1 1
25、1 1,48,后面省略,直到地址递增到 00001111111 时的代码F8H在列线 上就完成“王者风范”字的显示。,0 0 0 0 0 1 1 1,1 1 1 1 1 0 0 0,1 1 1 1 1 1 1 0 0 0 0,1 1 1 1 1 1 1 1,49,由于是靠低平驱动点阵屏的列线,所以采用四与非 门芯片74LS00做列线的驱动器。,74LS00 内置 了四套与非门, 若要完成对16根 列选线的驱动, 需要四片。,50,2、 行选线产生电路,由前面的分析得知,行选线用于对16行发光 二极管逐行扫描(提供高电平)。因此行选线产 生电路不仅要能依次循环输出16个高电平给行选 线,而且还要
26、有较强的驱动能力 (否则高电平就 会下降,发光二极管的亮度不够)。,行选线产生电路由译码器和驱动电路两大部 分组成。由于行选线有16根,所以可采用四线16 线的译码器(如74LS154)。再用16个射随器作驱 动电路直接连在16根行选线上。,51, 集成4线16线译码器74LS154的引脚及功能表,二进制地址码输入端;,输入控制端。同为低电平时芯片有效,否则译码输出端全为高电平。,译码输出端;,52,53, 行选线产生电路的结构及工作原理,译码,显示,驱动,倒相,54,注 意,由于16 X 16点阵显示屏的列选线是分两个地址依次输入的代码,因此行选线的每一行的高电平须对应地加在这两个地址的时间
27、段。换句话说:行选线地址要比列选线地址的变化频率慢一倍。即:列选线变两次,行选线变一次。解决的方法是使行选线的地址码为A4A3A2A1,使列选线的地址码(每个汉字)为A4A3A2A1A0。,55,若A4A3A2A1为0000,则 74LS154输入的地址为A3A2A1A0为0000,译码输出只有 为0,再非一次后,就有一个高电平去驱动第一根行选线。,56,依此类推:若A4A3A2A1为1111,则74LS154输入的地址为A3A2A1A0为1111,译码输出只有 为0,再非一次后,就有一个高电平去驱动最后一根行选线。,57,在实用中若采用分立元件来完成反相驱动的功能 则电路太复杂,需要16个非
28、门和16套三极管组成的射 随器。因此常用集成反向驱动器 CC1413/ MC1416或 74LS04实现对16根行选线的反向驱动。,CC1413内置 了 7 套反向驱动 器。若要完成对 16根行选线的驱 动,至少需要三 片CC1413。,58,由于驱动的是最小规格的点阵屏,所以其消耗的功 率也很小。建议采用六非门芯片74LS04做反相驱动器。,74LS04 内置 了六套非门,若 要完成对16根行 选线的驱动,需 要三片。多出的 两个非门还可以 用于列线电路。,59,60,三、地址计数器和时钟脉冲源,1、地址计数器的功能, 地址计数器向行选线提供地址码,用 74LS93 ( 四 位计数器)做地址
29、计 数器向行选线提供 的地址码A4A3A2A1,61,62,地址计数器在向 EPROM 提供递增的 地址时是分高、低位 进行的。用一片74L S74(D触发器)和一片 74LS93(四位计数器) 组成低 5 位计数器, 提供低 5 位地址A4A3 A2A1A0,直接为列选 线提供“王者风范”这 四个字的代码。, 地址计数器向EPROM提供地址码,63,64,再用两片74LS93 (一个做4位计数器, 另一个做2位计数器) 提供高6位地址:A10A9A8A7A6A5,当高6位地址 A10A9A8A7A6A5每递 增一位,就将“王者 风范”这四个字切换 一个。其速度直接 影响换字的快慢。,65,7
30、4LS74 是双上 升沿 D 触发器,就是 说在使用过程中,如 果只用到了一个 D 触 发器就只需连接一边 的管脚。其中,清零 端和预制端接高电平 Vcc。,74LS74双D触发器芯片引脚及连接方法,66,67,68,异步二进制集成计数器74LS93使用方法,一、74LS93内部结构及逻辑符号,RD1、RD2为清零端,同时高电平有效。,69,二、功能,1、做二进制计数器用:CP0作同步脉冲,FF0构成一个模为2的计数器;,70,2、作八进制计数器用:CP1作同步脉冲,FF1、FF2、FF3构成一个模为 8 的计数器;,71,3、作十六进制计数器用: CP1端与Q0端在外部相连, FF0、 FF
31、1、FF2、FF3 构成一个模为16的计数器。,72,2、 脉冲源的功能,脉冲源为低5位地址(A4A3A2A1A0)的CP1 提供一路计数脉冲用于显示字符。该计数脉冲的频率为 f1。 f1越高,显示屏的字符越稳定。 由于人眼的视觉暂留时间大约为 20ms 左右,实践证明: 当f1=2000Hz左右时,在显示屏上看到的字符基本上就没有闪烁现象了。, 为CP1提供一路计数脉冲,73,为CP1和CP2提供计数脉冲的脉冲源一般用 555定时器与RC组成的多谐振荡器来实现。参考 电路如下:, 为CP2提供一路计数脉冲,脉冲源为高6位地址(A10A9A8A7A6A5)的 CP2 提供一路计数脉冲用于切换字
32、符。该计数 脉冲的频率为f2。f2越高,字符切换得越快,反 之则反。一般在f2低于1Hz时,其字符切换的连 续感较好。,74,输出的振荡频率 f 为:,返回,75,一、 EPROM的擦除操作,将紫外线灯管(EPROM 擦除器)直接照射EPROM的 圆窗口 1520 分钟,若芯片 内所有地址单元的内容均为 “FFH”时,则表示芯片内的 内容已擦除干净。也可采用 EEPROM 28C17 芯片,直接上编程器擦除。,第三节 EPROM的擦除与写操作,76,二、 EPROM的写操作, 将空的(未写入任何信息的)EPROM插入编程器并锁紧;,1、 联机,77, 在PC机上安装编程器的驱动程序(用提供的光
33、盘);, 在PC机关机后通过电缆线将编程器与PC机的标准口(串口)连接起来;,78, 将编程器的直流电源(9V)接入编程器,编程器红指示灯亮表示机器正常;, 开启PC机就可以进行编程工作。,79,2、 操作, 点击PC机桌面的编程器图标,进入编程程序;, 选择连接或脱机工作;,80, 进入编程界面,常用的被编程芯片的厂家型号及编程电压。,81, 选择芯片的厂家与型号,82, 创建新文件,83, 编辑文件(未编辑文件的内容全为FF FF FF),84,把这个空文件存盘(用十六进制数保存起来),它将自 动生成了编程器的编程文件(地址及编程文件)。然后用记 事本打开此文 件,如图所示:,85,在记事
34、本中用单元内容(16进制数)去替换下面的 FFFFFFFFFFF。最后保存。,86,重新装 载此文件(地 址、字库及 编程文件都 已备齐),然 后就可以烧 写芯片了。,87, 保存编辑文件再点击读写窗, 将此编辑的文件写入也 称烧写芯片,为了保证烧 写成功,切记使 用最慢烧写速度。 若采用EEPROM 芯片,对话框略 有不同。,88,3、 如何使用汉字点阵库,为了使EPROM录入的汉字美观、规范,我 们可以利用汉字的点阵库来提取编码。然后再写 入芯片中。注意:从汉字的点阵库提取的编码已 自动取了非(即在列线中谁亮谁为1),因此可以直 接用于编程。,汉字点阵库的使用方法,返回,89,第四节 设计
35、中常见错误的汇编,一、 将LED显示器中“行”与“列”发光二极管的极性搞反,正确的判断方法是: 1、用机械表测量,当LED发光时:黑表笔表示阳极,红表笔 表示阴极。 2、用数字表测量,当LED发光时:红表笔表示阳极,黑表笔 表示阴极。,90,二、 使用集成电路芯片时出错,1、所用芯片型号须与电路所示芯片型号完全一致TTL型与CMOS型在引脚及使用方法中是有所不同的(具体使用方法请参阅我编写的数电课件中第二章相关内容,该接地的接地,不能悬空的引脚则一定不要悬空); 2、不建议使用不通用的型号的集成电路芯片如果非用不可,则必须要找到该芯片的准确资料(引脚图、工作电压额定值,数据输入及输出端口,控制命令端及触发方式)。,91,三、 使用ProtelDXP绘制PCB板时出错,1、要认真核对原始电路图,搞清楚每个器件的管脚的功能及它们的连线是否正确; 2、要准确测量LED点阵屏引脚的分布宽度; 3、在PCB板的绘制中要看清芯片的供电电源是VCC还是VDD,须弄清芯片的供电电压大小、正负极性; 4、布线的时候须将电源线和地线比其它信号线要粗 2到 3 倍以上。,四、EPROM / EEPROM的编程出错,芯片的地址对不上,不能输出正确的文字。,返回,92,第五节 参考电路及参考PCB板,一、电路原理图 二、PCB板电路图,93,94,95,谢 谢,