《毕业设计(论文)单片机控制的DIY数码相册显示.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)单片机控制的DIY数码相册显示.doc(38页珍藏版)》请在三一办公上搜索。
1、毕 业 设 计 论 文DIY单片机控制的数码相册XXX指导老师姓名: 专 业 名 称:电子信息工程技术 班 级 学 号: 论文提交日期:2010年12月1日论文答辩日期:2011年3月5日2010年11月28日摘要:本文讲述的是由STC11F32XE对整个系统进行控制的数码相册。只用了一片单片机外,没有用其它芯片。整个数码相册由STC11F32XE最小系统板和真彩TFT液晶显示屏构成,通过最小系统板控制真彩TFT液晶屏现实画面。TFT液晶为每个像素都设有一个半导体开关,每个像素都可以通过点脉冲直接控制,因而每个节点都相对独立,并可以连续控制,不仅提高了显示屏的反应速度,同时可以精确控制显示色阶
2、。关键词:TFT液晶屏、STC11F32XE单片机、Flash芯片、背光驱动Abstract:This article tells of the by STC11F32XEto control the whole system of digital photo albums. Only took a SCM outside, no other chips. The entire digital photo album by STC11F32XE minimal systems boards and TFT LCD display screen constitute, truecolor by
3、smallest system board controls truecolor TFT LCD screen reality picture. TFT LCD for each pixel is equipped with a semiconductor switches, each pixel can directly control pulse through the point so that each node is relatively independent, and can be continuous control, not only improve display spee
4、d of response, at the same time can precisely control showed levels.KeyWords:Digital Album LPC 2294; STC11F32XEmicrocomputer;目 录绪 论1第一章 系统总体结构与功能现象21.1 系统构成31.2 思路及现象3第二章 转接板介绍32.1 TFT显示液晶屏32.2 串行FLASH芯片5第三章 单片机介绍63.1 STC11F32XE单片机63.2 STC11F32XE 芯片引脚介绍8第四章 软件介绍94.2 图片取模软件104.3 串行FLASH芯片烧写软件114.4 ST
5、C芯片烧写软件12总 结13致 谢14参考文献15附录16附录A 转接板原理图16附录B STC11F32XE17附录C 程序18附录D 毕业设计实物图28绪论随着生活的提高,人们对于文化生活的品位有了更高的要求,银盐照片和传统相册再也不是保存美好记忆的唯一方式。数码相机、数码相册为人们提供了更方便的拍照方式、更长的保存期限以及色彩斑斓、便于浏览和携带的表现形式。(一)问题的提出 国内外研究现状 数码相册是通过计算机把传统照片利用数字的方式制作的新一代相册。不同于传统相册的是,数码相册具有保存长、占用空间小、利于检索、可以随心所欲的修改照片的特点。例如,我们可以把扫描后的传统照片或数码照片的图
6、像在图像软件中处理。视频软件中可以添加各式各样的像框,添加各种渲染效果。还可以把相同照片组合在一起或重叠在一起。替换主体背景或人物,添加背景或人物,添加背景音乐、文字和说明,达到声情并茂的效果。这都是传统相册无法比拟也无法实现的。无论是传统照片还是数码相片,同样都适合制作数码相册,工作、学习和生活中的方方面面也都可以制作成数码相册的题材。例如,婚纱摄影、旅游纪实、成长历程、毕业留念、往事回忆。大多数马相册在播放时都会有所略图选择画面的选择菜单,一张光盘可以存放不同专题的多个相册,以便分门别类地浏览。(二)日常照片的组织和使用传统冲印式的照片的媒介是单独的相纸,这种物理属性决定了它需要借助其他物
7、体来附着或容纳。当今社会科技正以前所未有的速度在发展,以前必须人力实现的事,现在都能通过电子产品来实现。以前相框只能单独显示一张图片,显得很单调,现在用电子数码相册,不仅可以实现多张图片的显示,甚至可以显示动态图片,更加生动。可以让我们更加直观的感受到图片所要表达的含义。现在我DIY一个数码相册实现多张图片同一屏幕的显示。我们做的这项目主要由TFT液晶屏、STC89C51单片机、转接板等构成。单片机与转接板用杜邦排线连接。该项目的过程是:实物通电以后,单片机运行程序,驱动转接板的FLASH读取预存图片的数据,最后显示到TFT屏上。该项目成本低、可靠性高,可很好的节省人力、财力、时间等。也可避免
8、不必要的浪费。第一章 系统总体结构与功能现象1.1 系统构成该系统分为两部分:第一部分是单片机最小系统,主要由STC11F32XE单片机、复位电路、晶振电路、锁相电路、下载接口、电源接口组成。第二部分是TFT转接板,主要由2.4寸TFT真彩液晶屏、串行FLASH芯片、背光驱动芯片、3.3V稳压芯构成。由于单片机不能直接对JPEG等格式的图片进行直接操作,需要通过软件将图片的数模预先提取出来,所以图像在TFT屏幕上显示先要经过图像取模软件,将图像进行取模,然后进行软件编程,下载到到单片机,通过TFT转接板将图像显示到真彩液晶屏上。其系统总体结构如图1所示。STC11F32XEFLASH存储芯片P
9、CTFT液晶屏图1系统结构总体框图单片机引脚TFT转接板引脚单片机引脚TFT转接板引脚P23LCD_CSP12DB 2P24LCD_RSP13DB 3P25LCD_WRP14-DB 4P26LCD_RDP15DB 5P27LCD_RSTP16DB 6P10DB 0P17DB 7P11DB 1表1单片机与TFT转接板连线表1.2 思路及现象总体思路:将所需显示图像经过图像取模软件进行取模,将所得图像数据通过下发软件下载到转接板上的Flash芯片里,然后将程序送进芯片中,通过硬件连接(TFT转接板与最小系统的硬件连接),图像将会在TFT屏幕上显示。步骤及现象:1、用杜邦排线按程序中所定义完成硬件连
10、接,将TFT转接板与最小系统板连接好;2、 将下载器与最小系统板连接好,将提取好的图像数据通过图片下发软件下到Flash芯片中; 3、然后将写好的程序送进最小系统板中;4、 接通电源(5V电源),按复位键,数秒后图像将会在液晶屏上显示。第二章:转接板介绍2.1 TFT液晶显示屏 所谓薄膜晶体管,是指液晶显示器上的每一液晶象素点都是由集成在其后的薄膜晶体管来驱动。从而可以做到高速度、高亮度、高对比度显示屏幕信息。TFT属于有源矩阵液晶显示器 。TFT-LCD液晶显示屏是薄膜晶体管型液晶显示屏,也就是“真彩”。LCD作为电子信息的主要显示器件,相对于其他类型的显示器件来说,有其自身的特点。彩色TF
11、T LCD 显示模块的基本参数如下表1:表1 基本参数转接板模块实际上就是将的TFT-LCD 显示器连接在PCB 电路板上,并加在PCB 电路板上加入背光限流电阻,将显示器不便于与开发板连接的软PCB 连接接口引出,并以DIP 的双排插针(板上保留有FPC20/1.0 间距的FPC 座)引出模块以便于连接。2.2 串行FLASH芯片AT45DB041是一个2.7-v的闪存串行接口。它有4,325,376位记忆。除主存储器,AT45DB041也包含两个264-bytes数据缓冲器的配件。缓冲器允许接收的数据,而一页主存储器被重新编程。与传统的Flash内存随机存取多重地址线和并行的界面,Data
12、Flash使用一个串行接口,连续的访问其数据。简单的串行接口便利硬件布局,提高系统的可靠性、降低噪音,切换减少包装尺寸和积极的大头针计数。该装置优化用于在很多商业和工业应用在高密度、低大头针计数,低电压,然后低功率是至关重要的。典型的应用DataFlash是数字语音存储、图像存储,和数据保存。根据指定的适当的操作码,数据可以阅读从主存储器或从两个数据中的任意一个数据缓冲。主要管脚表2:管脚名功能CS芯片选择SCK串行时钟SI串行输入SO串行输出WP写保护RESET重置RDY/BUSY准备/忙碌表2 管脚表第三章 单片机介绍为使本设计能够完成,本设计准备了三个方案,既方案一是STC89C51最小
13、系统核心板实现图片在显示屏上的显示;方案二是用MC98AC16最小系统实现;方案三是用MC9HC08MC98AC16最小系统实现。但由于TFT初始化程序中的时序函数需要很精确,而方案2和3的内部晶振皆不能够达到。下面将分别介绍这三种方案最小系统及其引脚的介绍。3.1 TFT液晶显示屏、单片机3.11 STC89C51RC单片机STC89Cxx,最高频率可达90MHz,片内4K以上FLASH程序存储器,8K左右的片内EEROM ,512B-1208B片内RAM,36个IO口。STC89C51单片机具有增强型12时钟/机器周期、6时钟机器/周期任意选择,工作电压为5.5V-3.4V(5V单片机)/
14、3.8V-2.0V(5V单片机);工作频率范围:0-40MHZ,相当于普通8051的0-80MHZ。实际频率可达48MHZ。用户应用程序空间为4K/8K/13K/16K/20K/32K/64K字节 ;片上集成1280字节/512字节RAM;有32/36个通用I/O口,P1/P2/P3/P4是准双向口;集ISP(在系统可编程)/IPA(在应用可编程),无需专用的编程器/仿真器,可通过串行口(P3.0/P3.1)直接下载用户程序,8K程序3秒就可以完成一片,具备EEPROM功能,共有3个16位定时器/计数器,其中定时器T0还可以当成2个8位定时器使用。部分外围电路图4所示:图6 单片机外围电路原理
15、图3.12 STC89C51RC芯片引脚介绍(1)I/O端口线输入输出引脚(引脚图见附录B)P0.0-P0.7(39-32):P0口是一个漏极开路型准双向I/O口。P1.0-P1.7(1-8):P1口是带内部上拉电阻的8位双向I/O口。在EPROM编程和程序验证时接收8位地址。P2.0-P2.7(21-28):P2口是一个带内部上拉电阻的8位双向I/O口。在访问外部存储器时送出高8位地址。P3.0-P3.7(10-17):P3口是一个带内部上拉电阻的8位双向I/O口。(2)控制线控制引脚ALE(30):地址锁存控制信号。用于控制P0口输出的低8位地址锁存起来,实现低位地址和数据的隔离。PSEN
16、(30):外部程序存储器。在读外部ROM时,低电平有效,以实现外部ROM单元的读操作。EA(31):访问程序存储控制信号。低电平时,对ROM的读操作限定在外部程序存储器;高电平时,对ROM的读操作是从内部程序存储器开始,并可延至外部程序存储器。RST/Vpp(9):复位信号。当输入的复位信号延续两个机器周期以上的高电平时即为有效,用以完成单片机的复位初始化操作。(3)外部晶体线XTAL1(19)和XTAL(18):外部晶体引线端。(4)主电源引脚VCC(40):+5V电源。VSS(20):地线GND。3.2 GP32单片机介绍512B片内RAM;32K片内Flash程序存储器,具有在线编程能力
17、和保密功能。其发生器模块,具有32KHz晶振PLL电路,可产生各种工作频率;8MHz内部总线频率。图73.3 GP32最小系统构成MC908GP32芯片(以40脚封装为例)最小系统的外围支撑电路包括电源与滤波电路、晶振电路和复位电路,其中各个部分的功能如下:电源供给与滤波 晶振电路 复位电3.4GP32单片机I/O口介绍及使用1I/O接口基本概念I/O接口,即输入输出接口,是微控制器同外界进行交互的重要通道。这些接口千变万化,种类繁多,有显而易见的人机交互接口,如操纵杆、键盘、显示器;也有无人介入的接口,如网络接口、机器设备接口。通用I/O: GPIO(General Purpose I/O)
18、,是I/O的最基本形式,它是一组输入或输出引脚,有时也称为并行I/O(parallel I/O)。 输入引脚有三种不同的连接方式:带上拉电阻的连接、带下拉电阻的连接和“悬空”连接。2MC68HC908GP32的并行I/O端口MC68HC908GP32单片机有5个普通I/O口,分别是A口、B口、C口、D口、E口。(1)A口的寄存器A口作为普通I/O口时,具有三个寄存器,它们是:A口数据方向寄存器(DDRA)、A口数据寄存器(PTA)、A口上拉电阻允许寄存器(PTAPUE)。A口数据方向寄存器(Data Direction Register A,DDRA)A口数据方向寄存器(DDRA)的地址是:$
19、0004,DDRA的第70位分别记为DDRA7DDRA0,这些位分别控制着A口引脚PTA7 PTA0是输入还是输出,若DDRAx=0,则引脚PTAx为输入,若DDRAx=1,则引脚PTAx为输出。复位时DDRA为$00。A口数据寄存器(Port A Data Register,PTA)A口数据寄存器(PTA)的地址是:$0000,PTA的第70位分别记为PTA7PTA0。若A口的某一引脚PTAx被定义成输出,程序使A口数据寄存器PTA的相应位PTAx0,则引脚PTAx输出“低电平”;程序使PTAx1,则引脚PTAx输出“高电平”。若A口的某一引脚PTAx被定义成输入,程序通过读取A口数据寄存器
20、PTA,获得输入情况,0表示输入为“低电平”,1表示输入为“高电平”。 A口上拉电阻允许寄存器(Port A Input Pullup Enable Register,PTAPUE) A口上拉电阻允许寄存器(PTAPUE)的地址是:$000D。PTAPUE的第70位分别记为PTAPUE7PTAPUE0。若A口的某一引脚PTAx 被定义成输入,则可通过置PTAPUE的相应位PTAPUEx为1来定义其内接上拉电阻,即引脚PTAx已经通过内部电阻与电源VDD相接,此时若引脚PTAx若通过开关接地,则开关闭合时为低电平。那么寄存器PTA的相应位PTAx=0,开关断开时为高电平,寄存器PTA的相应位PT
21、Ax=1,通过读取寄存器PTA获得开关状态。(2)B口 B口的寄存器B口作为普通I/O口时,具有二个寄存器,它们是:B口数据方向寄存器(DDRB)和B口数据寄存器(PTB)。B口数据方向寄存器(Data Direction Register B,DDRB) B口数据方向寄存器(DDRB)的地址是:$0005,DDRB的第70位分别记为DDRB7DDRB0,这些位分别控制着B口引脚PTB7PTB0是输入还是输出,若DDRBx=0,则引脚PTBx为输入,若DDRBx=1,则引脚PTBx为输出。复位时DDRB为$00。记忆要点:数据方向寄存器的一位:0定义输入1定义输出 B口数据寄存器(Port B
22、 Data Register,PTB)B口数据寄存器(PTB)的地址是:$0001,PTB的第70位分别记为PTB7PTB0。若B口的某一引脚PTBx被定义成输出,程序使B口数据寄存器PTB的相应位PTBx0,则引脚PTBx输出“低电平”,程序使PTBx1,则引脚PTBx输出“高电平”。若B口的某一引脚PTBx被定义成输入,程序通过读取B口数据寄存器PTB,获得输入情况,0表示输入为“低电平”,1表示输入为“高电平”。注意:B口被定义成输入时,没有内部上拉电阻 (3) C口、D口和E口 作为通用I/O口使用时,C口、D口的功能以及用法与A口类似,E口与B口类似第四章 软件介绍4.1 图像取模软
23、件及下发文件介绍由于单片机不能直接对JPEG等格式的图片进行直接操作,需要通过软件将图片的数模预先提取出来,由于彩屏是320*240的分辨率,这里我们先找一副320*240分辨率的图片,通过安装这个软件,就可以对图片进行取模了。先将要取模的图片打开,配置好宽度和高度,这里配置为240*320。将“高位在前”勾上,设置为“16位真彩色”,保存为“C语言数组”,参数的配置如下图所示:图10点击“保存”即可获得一个文本文档,打开文本文档,如下图:这里我们获得了一个长度为153608的数组gImage_12153608,这个就是我们刚才看到的那个图片的数组,其分辨率是240*320,并且每个像素点是1
24、6位真彩色(2字节),因此图片数据的数据长度就应该是240*320*2=152600,数据帧头还有8字节,所以总共为153608字节,若获取的不是153608字节的数据,请检查图片的分辨率,和取模软件的参数配置。最后将获得的文件,保存为TXT文本文档。这样就成功的将JPEG文件取模了。将获取的图片数据下载到FLASH,以达到更换显示图片的目的:上一步已经将要显示的图片的数模准备好了,然后将数模下载到FLASH中去。由于单片机只有串口资源,此设计是通过计算机的串口,将数据传输到单片机,单片机每接收完256字节的数据后,再保存到FLASH里面,因此,要保存153600字节的数据,需要分600次,才
25、能将一张图片的数据保存到FLASH里面。要实现以上动作,需要单片机下载这个程序flash测试程序,才能接收计算机串口下发的数据,并保存到FLASH中去。需要说明的是,这个程序是先显示图片,再进入串口数据接收状态,图片显示完了,才能响应命令。这时,计算机上还需要一个小软件,才能配合单片机下载数据,此软件有其使用说明在里面。需要说明的是,注意其配置要与单片机的设置一致:图11这里的文件编号:即为,在FLASH里存储图片的序号,一般为05,因为,8Mbit的FLASH只能储存6张图片。新图片的显示:上一步,已经将新图片下载到了FLASH,这里只需要复位单片机,即可显示刚才下载到FLASH里面的图片了
26、。4.2 汉字取模软件的介绍本设计如果需要显示汉字的话,则需要一个LCD取模软件,通过此软件将所需显示汉字取模后放进程序中,然后下载到芯片中。本演示程序用来演示带有0xfd为第二内码的汉字字符串的编译结果 #pragma src(cca.a51) / 用于生成汇编代码查看编译结果#include #include char cc=基于单片机控制的DIY数码相册;void main(void) unsigned char c1,i;unsigned int b1;c1=strlen(cc);for(i=0;ic1;i+)b1+=cci;putchar(12,2,指导老师:杨焕峥);while(1
27、);步骤:1、首先在此C语言程序中的相应位置输入所要取模的字,保存。2、然后在取模软件打开此文档,就会得到取模程序,再此保存。3、然后从中提取所需资料,放到程序中,下载到芯片中。注意:注解中请不要使用双引号,否则会引起 提取错误。下图为取模软件窗口截图:图124.3 STC芯片烧写软件首先要把编写完成的程序烧到STC89C51RC里,写软件的使用步骤:1、打开STC芯片烧写软件的窗口STC-ISP.exe选择单片机型号STC?;2、打开文件Open File选择通过编译生成的HEX文件;3、选择串行口,最高波特率等参数选择默认值;4、点击下载Download,再给MCU上电,程序的烧写工作完成
28、。图13 芯片烧写软件窗口总结快乐的时光流逝的通常比较快,转眼间我们即将离开我们的大学校园走向社会。大三的上半学期,我们在老师的组织下开始了我们这个专业的毕业设计。我们小组很荣幸的由杨涣真老师负责指导。我们小组的课题是:DIY单片机控制的数码相册此次毕业设计不仅仅是对我们成绩的一个评估,更是一个测试我们大学三年专业掌握程度的试题。我们都对此次专业设计投上了十二分的关注。该项目主要由TFT屏、STC89C51单片机、转接板等构成。其实现功能的过程是:首先给单片机连接电源,启动复位,单片机程序启动,通过串行FLASH芯片,在TFT屏幕上显示汉字及图片。该项目的第一步就是找资料构思,在老师的帮助下我
29、们小组成员分头从图书馆、网上找了许多的资料。通过资料查询和老师的指导我们开始构思本组的设计思路。大家一起用电子CAD制图画出一个电子焊接板图。经过筛选我们组用张欢欢的设计图。最后由杨涣真老师指导我们修改细节问题到实验室去制作电子焊接板!这是我们第一个自主设计的电子焊接板。焊接板制作完成我们开始网购元器件,然后我们开始焊接过程。由于自制的焊接板比较粗糙我们焊接的外观不是很美观,但是我们却很有成就感。不过做出来的实物存在许许多多的误差。杨老师给我们耐心的指导,帮助我们修改。最终通过了调试。下一步我们开始编写程序,程序的编写时运用51单片机程序。我们在网上查找了许多资料。并咨询了我校导师,最终编程成
30、功。此次过程中我们多次的失败,让小组成员很是灰心,多亏老师的支持和鼓励给予我们信心,让我们最终成功完成毕业设计。美好的大学生活在外面忙忙碌碌中就这么走过了,我们珍惜我们所拥有的每一天。同时累积知识,提高本身的综合素质,更好的去面对明天的生活,活出自己的精彩,做一个对家庭、对社会有用的人! 致谢 通过3个月的忙碌和学习,本次毕业论文设计已接近尾声,作为一名大专生的毕业设计,由于经验的匮乏,难免有许多的考虑不周全的地方,在这里衷心的感谢知道老师的督促指导,以及一起学习的同学们的支持,让我按时完成了这次毕业设计。 毕业论文暂告尾声,这也意味着我在大学学习生活即将结束。回首既往,自己医生最宝贵的时光能
31、于这样的校园之中,能在众多学富五车、才华横溢的老师们的熏陶下度过,实是荣幸之极。在这三年的时间里,我在学习上和思想上都受益匪浅。这除了自身的努力外,与各位老师和同学、朋友的关心、支持和鼓励是分不开的。 谢谢我周围的同窗朋友,他们给了我无数的关心和鼓励,也让我的大学生活充满了温暖和欢乐。如果没有他们的帮助,此次毕业论文的完成将变得困难。他们在我的设计中给了我许多宝贵的意见和建议。同时也感谢自己在遇到困难时候没有一蹶不振,取而代之的是找到了最好的方法来解决问题。最后,感谢生我养我的父母。谢谢他们给了我无私的爱,为我求学付出巨大的牺牲和努力。 感谢学校,学校为我们提供了优秀的老师,完备的实验器材。让
32、我在这三年中学到了很多。在学习中,学校注重软硬件结合,在学好书本知识的同时还要把知识运用到(实验)实际生活中,这样提高了我们的动手能力,更使我们巩固了一下所学到的知识。毕业设计就是学校给我们的考验,让我们把所学的知识系统的结合起来。感谢无锡商业职业技术学院。参考文献1 陈纯.计算机图像处理技术与算法.北京:清华大学出版社,2003,72 张益贞Visual C+实现MPEG/JPEG编解码技术. 北京:人民邮电出版社,2002,11 3 李在铭等.数字图像处理、压缩与识别技术.电了科技大学出版社.20054 雷思孝等.单片机原理及实用技术M.西安:西安电子科技大学出版社5 罗亚非等.凌阳16位
33、单片机应用基础M.北京:北京航空航天大学出版社, 2002 6 谭浩强著.c程序设计M.北京:清华大学出版社2006, 28(8): 76-787 李晶骄.内藏SPLC501控制器图形液晶显示模组使用手册Z.凌阳大学计划网站附录附录A 转接板原理图附录B STC89C51 STC89C51RC引脚图附录C 程序#include #include #define Uchar unsigned char#define Uint unsigned int#define Ulong unsigned long#define uchar unsigned char#define uint unsigne
34、d intvoid Init_CPU(void);void Rs232pre(Uchar i);bdata Uchar data45;sbit data45_h=data457;sbitdata45_l=data450;sbit CS45= P22;sbit SC45= P21; sbit SI45= P20;sbit SO45= P00;sbit LCD_CS= P23;sbit LCD_RS= P24;sbit LCD_WR= P25;sbit LCD_RD= P26;sbit LCD_RST= P27;#define DATA P1 /*电路接法 MCU TFT P23-LCD_CS P
35、24-LCD_RS P25-LCD_WR P26-LCD_RD P27-LCD_RST P10-DB 0 P11-DB 1 P12-DB 2 P13-DB 3 P14-DB 4 P15-DB 5 P16-DB 6 P17-DB 7*/Uint color=0xf8,0x00,0x07,0xe0,0x00,0x1f,0xff,0xe0,0x00,0x00,0xff,0xff,0x07,0xff,0xf8,0x1f;data Ucharconnectok4=0xaa,0xbb,0xcc,0xdd;data Ucharchiperaok4=0xaa,0xbb,0xcc,0xff;data Uchar
36、flashadd15=0xaa,0xbb,0xee,0x00,0xff;data Ucharflashadd25=0xaa,0xbb,0xee,0x01,0xfe;data UcharADDR3=0x00,0x00,0x00;data UcharADD23=0x00,0x00,0x00;Ucharreaddata1=0,readdata2=0,adjust0=0,Rstep,connect;Ucharfalg10ms=0,count10ms=0,RxBuffFlay,RxOutTimeCount,RxOutTimeStar;data UcharMSB4,LSB4,CHIPE,XORVALUE,
37、XORDATA;data UintSTARTPLACE6=0,600,1200,1800,2400,3000,WRITEPAGE=0,PACKGES=0,nums=0;data UcharPICTURES,saveready;data Ucharflashaddr1,flashaddr2,wantread;data UintREADPAGES;Uchar china_char32=0x04,0x40,0xFE,0x40,0x10,0x40,0x10,0x44,0x20,0xFE,0x45,0x08,0xFE,0x88,0x10,0x88,0x10,0x88,0x7C,0x90,0x10,0x5
38、0,0x10,0x20,0x1E,0x50,0xF0,0x88,0x41,0x0E,0x06,0x04, / 无 0x00,0x10,0x43,0xF8,0x30,0x00,0x10,0x00,0x00,0x08,0x07,0xFC,0xF1,0x20,0x11,0x20,0x11,0x20,0x11,0x24,0x12,0x24,0x12,0x1C,0x14,0x00,0x28,0x06,0x47,0xFC,0x00,0x00, /锡0x02,0x00,0x02,0x00,0x02,0x10,0x7F,0xF8,0x42,0x10,0x42,0x10,0x7F,0xF0,0x42,0x10,
39、0x42,0x10,0x7F,0xF0,0x42,0x10,0x02,0x00,0x02,0x04,0x02,0x04,0x01,0xFC,0x00,0x00, /商0x00,0x00,0x3F,0xF0,0x00,0x10,0x00,0x20,0x00,0x40,0x01,0x80,0x01,0x04,0xFF,0xFE,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x05,0x00,0x02,0x00, /院;Ucharsavebuffer256=0;void delay(uint t)t+=170;while(-
40、t);void delay_ms(Uint t)Uchar i,j;while(-t)j=8;while(-j)while(-i);void LCD_WRITE_CMD(Uchar indexH,Uchar indexL) /写命令到TFTLCD_CS = 0;LCD_RS = 0;LCD_RD = 1;DATA = indexH;LCD_WR = 0;LCD_WR = 1;DATA = indexL;LCD_WR = 0;LCD_WR = 1;LCD_CS = 1;LCD_RS = 1;void LCD_WRITE_DATA(Uchar DataH,Uchar DataL)/写数据到TFTL
41、CD_CS = 0;LCD_RS = 1;LCD_RD = 1;DATA = DataH;LCD_WR = 0;LCD_WR = 1;DATA = DataL;LCD_WR = 0;LCD_WR = 1;LCD_CS = 1;LCD_RS = 0;void LCD_Init(void) /TFT初始化函数 LCD_RST=1; delay(20); LCD_RST=0;delay(60); LCD_RST=1;delay(60); /-Display Control Setting-/LCD_WRITE_CMD(0x00,0x01); LCD_WRITE_DATA(0x01,0x00);/ 直
42、接控制Output DirectLCD_WRITE_CMD(0x00,0x02);LCD_WRITE_DATA(0x07,0x00); /行转换 Line InversionLCD_WRITE_CMD(0x00,0x03);LCD_WRITE_DATA(0x10,0x30);/ Entry Mode (65K, BGR)/0x10,0x30LCD_WRITE_CMD(0x00,0x08);LCD_WRITE_DATA(0x03,0x02);/ Porch SettingLCD_WRITE_CMD(0x00,0x09);LCD_WRITE_DATA(0x00,0x00);/ Scan CycleLCD_WRITE_CMD(0x00,0x0a);LCD_WRITE_DATA(0x00,0x04);/ FMARK off/-End Display Control setting-/- Power Control Registers Initial -/LCD_WRITE_CMD(0x00,0x10);LCD_WRITE_DATA(0x00,0x00);/Power Control1 07 90LCD_WRITE_CMD(0x00,0x11);LCD_WRITE_DATA(0x00,0x07);/