基于ADC0832和LCD160128设计的数字电压表.doc
《基于ADC0832和LCD160128设计的数字电压表.doc》由会员分享,可在线阅读,更多相关《基于ADC0832和LCD160128设计的数字电压表.doc(31页珍藏版)》请在沃文网上搜索。
1、学习情境3-数字电压表的设计之 基于ADC0832和LCD160128设计的数字电压表 点名,复习1、 ADC0832的引脚及其功能,以及与单片机的硬件连接?2、 PCF8591的引脚及其功能,以及与单片机的硬件连接?引言:新课讲授3.4基于ADC0832和LCD160128设计的数字电压表3.41 LCD160128简介LCD160128是一种图形点阵液晶显示模组。它用T6963C作为控制器,KS0086作为驱动的160(列)X128(行)的全点阵液晶显示。具有与INTER8080时序相适配的MPU接口功能,并有专门的指令集,可完成文本显示和图形显示的功能设置。LCD160128液晶显示器的
2、工作电压为+5V士10%,能够显示显示10个(/行)X8共120个(16 X 16点阵)的中文字符,共有13条操作指令。1. 芯片引脚及其功能表1引脚功能2. 与主控制器的通信(1)读状态在数据读写操作之前必须进行状态检查。T6963C的状态可以从数据总线中读取。此时RD#和CE#引脚为低电平,WR#和C/D#引脚为高电平。状态字格式如下所示:MSB LSBSTA7D7STA6D6STA5D5STA4D4STA3D3STA2D2STA1D1STA0D0表 2 状态子STA0指令读写状态0:禁止; 1:使能;STA1数据读写状态0:禁止; 1:使能;STA2自动模式数据读状态0:禁止; 1:使能
3、;STA3自动模式数据写状态0:禁止; 1:使能;STA4保留STA5控制器操作状态0:禁止; 1:使能;STA6读屏/考屏错误标志0:无错误;1:错误;STA7闪烁状态检查0:关显示;1:正常显示注意1:必须同时检查STA0与STA1的状态,由于硬件中断可能引起数据错误操作。注意2:STA0与STA1用于大多数模式的状态检查。注意3:STA2与STA3用于自动模式数据读写使能,此模式下,STA0与STA1无效。状态检查流程:图 1 状态检查流程图注意4:如果使用MSB=0命令,则必须先读取状态操作。如果没有进行状态检查,则T6963C不能正常操作,就是延时后也不行。当硬件中断发生在地址计算周
4、期期间时(每一行的最后),如果MSB=0命令在此期间发送给T6963C,则T6963C进入等待状态。如果在下一个命令到来之前没有进行状态检查操作,则很有可能数据与命令都无法到达。a) 一个数据情况 b) 两个数据情况图 2 命令发送步骤(2)数据发送 在使用T6963C时,都是先发送数据,后发送命令。(3)命令发送步骤,见图2。当发送的数据多于两个时,最后一个数据有效。3. 命令定义 LCD160128液晶显示器能够显示显示10个(/行)X8共120个(16 X 16点阵)的中文字符,共有13条操作指令。我们主要学习其具体的用法。表3 T6963C控制命令码表命令编码数据1数据2功能二进制十六
5、进制寄存器设置0010 00010x21X地址Y地址设置光标位置0010 00100x22偏移地址数据00H设置CGRAM偏移地址0010 01000x24地址低8位地址高8位设置地址指针设置控制字0100 00000x40地址低8位地址高8位设置文本区起始地址0100 00010x41列数00H设置文本区宽度0100 00100x42地址低8位地址高8位设置图形区起始地址0100 00110x43列数00H设置图形区宽度模式设置1000 x0000x80-逻辑“或”模式1000 x0010x81-逻辑“异或”模式1000 x0100x82-逻辑“与”模式1000 x0110x83-文本特性模
6、式1000 0xxxBit3 =0时,内部CG ROM模式内部CG ROM模式1000 1xxxBit3 =1时,外部CG RAM模式外部CG RAM模式显示模式1001 00000x90-关闭显示1001 xx10Bit0为光标闪烁显示开关光标显示,闪烁关闭1001 xx11Bit1为光标显示开关光标显示,闪烁显示1001 01xxBit2为文本显示开关文本显示,图形关闭1001 10xxBit3为图形显示开关文本关闭,图形显示1001 11xx文本显示,图形显示光标形状选择1010 00000xA0-1行(光标占的行数)1010 00010xA1-2行1010 00100xA2-3行101
7、0 00110xA3-4行1010 01000xA4-5行1010 01010xA5-6行1010 01100xA6-7行1010 01110xA7-8行数据自动读/写命令1011 00000xB0-数据自动写设置1011 00010xB1-数据自动读设置1011 00100xB2-数据自动读/写结束数据读/写1100 00000xC0数据-数据写,地址加11100 00010xC1-数据读,地址加11100 00100xC2数据-数据写,地址减11100 00110xC3-数据读,地址减11100 01000xC4数据-数据写,地址不变1100 01010xC5-数据读,地址不变屏读命令11
8、10 00000xE0-屏读命令屏拷贝命令1110 10000xE8-屏拷贝命令位置位/清除1111 0xxx0xF0-Bit3 =0时,位清除;1111 1xxx-Bit3 =1时,位置位;1111 x000-Bit0(LSB)1111 x001-Bit11111 x010-Bit21111 x011-Bit31111 x100-Bit41111 x101-Bit51111 x110-Bit61111 x111-Bit7(MSB)4. 各指令功能详细分析 在T6963C指令中有的指令需要参数的补充,T6963C指令参数的输入是在指令代码写入之前。下面是T6963C指令写入的流程图。图3 T6
9、963C指令写入的流程图(1) 读状态字(read status)格式:T6963C的状态字由7位标志位组成,它们是:1、 当计算机写指令或一次读/写数据时,S0和S1要同时有效,即“准备好”状态。2、 当计算机使用自动读/写功能时,S2或S3将取代S0和S1作为标志位,此时计算机要判断他是否有效。3、 S6标志是考察T6936C屏读或屏拷贝执行情况的标志位。4、 S5和S7表示控制器内部运行状态,在T6936C的应用上不会使用它们。对T6936C的软件操作每一次之前都要进行判“忙”,只有有不“忙”状态下计算机对T6936C的操作才有效。(2) 地址指针设置(Register set)命令编码
10、HEX.功能表述数据1数据20010 000121H设置光标位置X地址Y地址0010 001022H设置CGRAM偏移地址偏移地址数据00H0010 010024H设置地址指针地址低8位地址高8位设置光标位置(21H)光标位置由X、Y地址来确定,光标的移动只能用该命令实现。从MPU读写数据是不会改变光标位置的。X、Y的值由下面指定:X地址: 00H4FH(低7位有效)(080列)Y地址: 00H1FH(低5位有效)(032行)a 单屏幕(X地址: 00H4FH)Y地址: 00H0FHb 双屏幕(X地址: 00H4FH)上屏幕 Y地址: 00H0FH下屏幕 Y地址: 10H1FH设置CGRAM偏
11、移地址(22H)偏移寄存器用来确定外部字符生成RAM(CG RAM)区域起始位置,T6963C使用如下16位地址总线:当T6963C配有外部字符生成器时,字符编码80HFFH分配给内部字符生成器。在外部字符生成模式下,字符编码00H7FH分配给外部字符生成器。?16位地址的高5位定义了外部显存CG RAM区域的起始地址,随后的8位表示字符的编码。在内部CG ROM模式下,字符编码00H7FH代表预定义内部CG ROM字符,而字符编码80HFFH代表用户自定义的外部CG RAM字符。在外部CG RAM模式下,所有256个00HFFH编码都可代表用户自定义字符。最低3位表示8行中的1行(8点)定义
12、了字符的形状。显示缓存地址与偏移寄存器的关系列表偏移地址数据CG RAM hex. 地址(Start to end)00000000007FFH 0000108000FFFH00010100017FFH11100E000E7FFH11101E800EFFFH11110F000F7FFH11111F800FFFFH(例1)偏移寄存器 02H字符编码 80H字符生成RAM起始地址 0001 0100 0000 0000 1 4 0 0 H(例2)显存数据与显示字符对应关系与通过字符生成RAM显示。设置地址指针(24H)设置地址指针命令用于指定读写外部RAM的起始地址。设置地址指针的流程图如下所示:
13、(3) 设置控制字命令设置文本区起始地址(40H)用于文本显示的显示缓存区起始地址由该命令确定,文本起始地址指得是最上端和最左端位置。显存地址与显示位置的对应关系TH:文本起始地址TA:文本区宽度(列数)CL:固定列数(硬件确定),可编程引脚确定。(例)文本起始地址 0000H文本区宽度(列) 0020H(32列)MD2 = H, MD3 = H 32列DUAL# = H, MDS = L , MD0 = L, MD1 = H 4行(4行32列)设置图形区起始地址(42H)用于图形显示的显示缓存区起始地址由该命令确定,图形起始地址指得是最上端和最左端位置。显存地址与显示位置的对应关系GH:图形
14、起始地址GA:图形区宽度(列数)CL:固定列数(硬件确定),可编程引脚确定。(例)图形起始地址 0000H图形区宽度(列) 0020H(32列)MD2 = H, MD3 = H 32列DUAL# = H, MDS = L , MD0 = H, MD1 = H 2行设置文本区宽度(41H)文本区宽度(列数)由硬件确定,该命令可以用于调整文本显示列数。(例)LCD大小 20列,4行;文本区起始地址 0000H文本区 0014H(20列)MD2 = H, MD3 = H 32列DUAL# = H, MDS = L , MD0 = L, MD1 = H 4行设置图形区宽度(43H)图形区宽度(列数)由
15、硬件确定,该命令可以用于调整图形显示列数。(例)LCD大小 20列,2行;文本区起始地址 0000H文本区 0014H(20列)MD2 = H, MD3 = H 32列DUAL# = H, MDS = L , MD0 = H, MD1 = H 2行如果设置图形区大小(硬件确定)与期望的LCD大小(软件确定)相等,则地址将自动调整使每一行的起始地址等于前一行的末尾地址+1。(4) 模式设置命令编码功能操作数1000 x000逻辑“或”模式-1000 x001逻辑“异或”模式-1000 x010逻辑“与”模式-1000 x011文本特征模式-1000 0xxx内部字符生成模式-1000 1xxx外
16、部字符生成模式-X表示无效位。该命令可以设置LCD显示模式。在下一个命令到来之前,LCD显示模式不会改变。文本与图形的逻辑或,逻辑异或,逻辑与模式将被显示。在内部字符发生模式下,字符编码00H7FH被分配给内部CG ROM,字符编码80HFFH被自动分配给外部CG RAM。在外部字符发生模式下,字符编码00HFFH被分配给外部CG RAM。(例)注意:特性功能只能应用于文本模式,因为特性字符数据被放置在图形RAM区域中。特性操作为反向显示、字符闪烁和抑制。特性数据被写入由控制字命令定义的图形区域中。在特性模式中,只有文本可以显示,图形显示将自动关闭。然而,为了使特性功能有效,必须用显示模式设置
17、命令使文本和图形显示都打开(1001 11xx)。文本区每个字符的特性数据被写入图形区的同一个地址中,特性功能被定义成如下形式:(5) 显示模式设置命令(9EH)X表示无效位。注意:在下面两种情况下必须同时打开“文本显示”和“图形显示”。a. 文本与图形相结合显示时b. 特性模式时(6) 光标形状选择命令(A0H)编码功能操作数 1010 0000(0xA0)光标占1行-1010 0001光标占1行-1010 0010光标占1行-1010 0011光标占1行-1010 0100光标占1行-1010 0101光标占1行-1010 0110光标占1行-1010 0111光标占1行-当光标显示打开时
18、,该命令用于选择光标的形状,范围从1行-8行。光标地址由光标地址设置命令(0x21)确定。(7) 数据自动读写命令 编码功能操作数1011 0000(0xB0)数据自动写-1011 0001(0xB1)数据自动读-1011 0010(0xB2)数据自动操作结束-该命令适合于从外部显存中发送全屏数据。设置自动模式后,就没有必要在每个发送数据间发送读写命令了。但是,数据自动读写命令必须在地址指针设置命令后发送。这样,地址指针就会在发送完一个数据后自动加1,指向下一个数据。在自动模式下,T6963C不接受任何其他的命令。自动结束命令(0xB2)必须在所有数据发送结束后传送,以结束自动模式。注意:自动
19、模式下的状态检查 应该在每发生一个数据期间对STA2、STA3进行检查,自动结束命令应该在检查STA3=1(STA2=1)后执行。参考下面的流程图。(8) 自动读模式(0xB1)(9) 自动写模式(0xB0)(10) 数据读写命令(C0H-C5H)该命令用于从MPU写数据到外部显存中,以及从外部显存中读数据到MPU。数据读写命令必须在设置地址指针命令后执行。使用该命令时,地址指针会自动的加1或减1。注意:该命令必须用于1字节数据的读写,参考下面的流程图。(11) 屏读命令(E0H) 该命令用于传送1字节显示数据到数据堆栈,该字节随后可以被MPU读取。LCD屏幕的文本与图形数据的逻辑结合可以被该
20、命令读取。屏读命令后要检查STA6状态位,如果由地址指针命令决定的地址不在图形区域,该命令就被忽略且STA6置位。参考下面的流程图。注意:屏读命令在硬件列数与软件列数相等时才有效。硬件列数由引脚MD2与MD3设置,软件列数由文本区与图形区宽度命令设置。(12) 屏拷贝命令(E8H)屏拷贝命令拷贝一个数据屏面行到图形区域,起始地址由地址指针命令设置。注意1:如果特性功能在使用时,该命令无效。注意2:双屏幕时,该命令无效。(因为T6963C无法分离上屏幕和下屏幕的数据。)参考下面的流程图。注意:屏读命令在硬件列数与软件列数相等时才有效。硬件列数由引脚MD2与MD3设置,软件列数由文本区与图形区宽度
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
20 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 ADC0832 LCD160128 设计 数字 电压表
