基于单片机的TFT液晶显示设计
完整的单片机驱动TFT彩屏的程序设计

完整的单片机驱动TFT彩屏的程序设计单片机驱动TFT彩屏的程序设计一种完整的复杂的单片机驱动TFT彩屏的程序设计。
同步显示有星期;温度;时间;遥控指示;以及强大的定时功能…废话不多说,自已向下看吧…显示效果图:电路图:彩屏部分数据:(网上有资料,陶宝网上有买)以下是汇编程序:(本程序可直接复制使用,但请指明出处。
)本程序本人用时2. 5个月制作(当然是工作闲余的时候),本程序是本人为学习汇编而编写(为做到“入森而不迷”)。
其已经做过实物测试,除时间不是十分精确外,其它都没有问题(因为问题已经解决了~~)。
遥控码数请参照程序中的以下两个子程序:子程序1:遥控按键处理(码数这里面,很容易找的)子程序2:遥控外部中断处理程序(遥控器不同码数长度也不一样,这里要注意);制作:王永宾;QQ:794576441;Email:*******************;---------------------------------------复制以下------------------------ ---------------------------------;TFT彩屏程序(STC89C52);制作:王永宾;QQ:794576441;Email:*******************LCDRS EQU P2.0LCDRW EQU P2.1LCDRST EQU P2.4;------------------SU00 EQU 30H ;时间字符的地址2440(0-9)SU01 EQU 31HSU10 EQU 32HSU11 EQU 33HSU20 EQU 34HSU21 EQU 35HSU30 EQU 36HSU31 EQU 37HSU40 EQU 38HSU41 EQU 39HSU50 EQU 3AHSU60 EQU 3CHSU61 EQU 3DHSU70 EQU 3EHSU71 EQU 3FHSU80 EQU 40HSU81 EQU 41HSU90 EQU 42HSU91 EQU 43H;--------时间寄存器定义----------RR0 EQU 44HRR1 EQU 45HRR2 EQU 46HRR3 EQU 47HRR4 EQU 48HRR5 EQU 49HRR6 EQU 4AHRR7 EQU 4BHSUZR0 EQU 4DH ;星期?字符的地址(日-六)SUZR1 EQU 4EH SUZ10 EQU 4FHSUZ11 EQU 50HSUZ20 EQU 51HSUZ30 EQU 53HSUZ31 EQU 54HSUZ40 EQU 55HSUZ41 EQU 56HSUZ50 EQU 57HSUZ51 EQU 58HSUZ60 EQU 59HSUZ61 EQU 5AHWD2 EQU 5CHWD3 EQU 5DHWD4 EQU 5EH;-------星期?寄存器定义------------ RR8 EQU 4CH ;定时字符的地址1616(六-日)GUAN0 EQU 60H GUAN1 EQU 61HSL10 EQU 62HSL11 EQU 63HSL20 EQU 64HSL21 EQU 65HSL30 EQU 66HSL31 EQU 67HSL40 EQU 68HSL41 EQU 69HSL50 EQU 6AHSL51 EQU 6BHSL60 EQU 6CHSL61 EQU 6DHSL70 EQU 6EHSL71 EQU 6FH;--------定时寄存器定义---第一组-------RA EQU 70H ;组RAL0 EQU 71H ;时间RAL2 EQU 73HRAL3 EQU 74HRAR0 EQU 75HRAR1 EQU 76HRAR2 EQU 77HRAR3 EQU 78HRA1 EQU 79H ;星期?RA2 EQU 7AHRA3 EQU 7BHRA4 EQU 7CHRA5 EQU 7DHRA6 EQU 7EHRA7 EQU 7FH;TFT彩屏程序(STC89C52);制作:王永宾;QQ:794576441;Email:*******************;===================================;===============开始00\==========ORG 0000HLJMP MAIN0ORG 03HLJMP ITT00 ;外部中断ORG 0BHRETI ;计时中断如果溢出直接ORG 1BHLJMP TI1 ;走时中断;============主程序开始=================; ORG 20HMAIN0:LCALL KAIJI ;开机初始化LCALL CSH0QINGPINGHAI0:JB P3.7,$MOV 24H,#00H ;R4 MOV 25H,#03FH ;R4 MOV 26H,#00HMOV 27H,#03FHMOV R3,#00HMOV R4,#00HLCALL QINGPING QINGPINGHAI1:JNB P3.7,QINGPINGRED0 JNB P3.6,QINGPINGEND AJMP QINGPINGHAI1QINGPINGRED0:JB P3.7,$MOV 24H,#0E0H ;R4 MOV 25H,#0FFH ;R4 MOV 26H,#0E0H MOV 27H,#0FFHMOV R3,#00HMOV R4,#0E0HLCALL QINGPING QINGPINGRED1:JNB P3.7,QINGPINGLV0 JNB P3.6,QINGPINGEND AJMP QINGPINGRED1QINGPINGLV0:JB P3.7,$MOV R1,#00HMOV R2,#03HMOV R3,#10HMOV R4,#0B0HLCALL XML ;写命令LCALL XSJ ;写数据MOV R1,#00HMOV R2,#22HLCALL XML ;写命令MOV 24H,#0C3H ;底MOV 25H,#3FH ;字MOV 26H,#0C3H ;底MOV 27H,#3FH ;字MOV R3,#00HMOV R4,#0C3H ;底LCALL QINGPING QINGPINGLV1:JNB P3.7,QINGPINGHAI0JNB P3.6,QINGPINGENDAJMP QINGPINGLV1;========================= QINGPINGEND:MOV R1,#00HMOV R2,#22HLCALL XML ;写命令LCALL GUDING ;固定字符LCALL WINDU ;温度LCALL YAOKONG ;遥控LJMP XSUMAIN:LCALL DINGSHISHU ;定时数LCALL DINGSHIZU ;定时组LCALL XPX ;星期几LCALL SHIJIAN ;时间LCALL WENDUCHULILCALL WINDU ;温度LCALL TIR0SETB P2.5 ;-----完全相等---关闹CLR P2.6 ;-----完全相等---关闹MAIN1:CLR P2.7LCALL SHIJIAN ;时间LCALL JP0 ;键盘LCALL POWER ;遥控处理;----------------------MOV A,2CHCJNE A,RR3,MAIN2 ;RR3为分计LJMP MAIN3 ;定义十秒锺扫一次温度MAIN2:MOV 2CH,RR3LCALL WENDUCHULI ;温度处理LCALL WINDU ;温度MAIN3:MOV A,RR0 ;分有变动就扫描定时CJNE A,RR4,MAIN4 ;RR4为分LJMP MAIN1MAIN4:MOV RR0,RR4LCALL BIJIAO ;定时比较LJMP MAIN1;=============温度处理====================== WENDUCHULI:LCALL WENDUXS ;读写子程序MOV A,21HMOV R0,#20HXCHD A,@R0ANL A,#0FHMOV 21H,A ;21H小数处理MOV A,20HSWAP A ;20整数处理MOV 20H,AJB 07H,WENDUCHULI1;是负数转MOV WD4,26H ;清除负数标示LCALL WENDUCHULI0 ;写整数个位MOV WD2,ALCALL WENDUCHULI0 ;写整数十位MOV WD1,AMOV A,21H ;写小数位MOV B,#02DIV ABMOV B,AADD A,BADD A,#30HMOV WD3,A ;写小数位RETWENDUCHULI1:;负数处理.....MOV WD4,27H ;负数标示MOV A,20H ;20整数处理CPL A ;取反ANL A,#7FH ;清负数位INC A ;加一MOV 20H,A ;20整数处理MOV A,21H ;21H小数处理CPL A ;取反ANL A,#0FH ;清除高位INC A ;加一MOV 21H,A ;21H小数处理LCALL WENDUCHULI0 ;写整数个位MOV WD2,A LCALL WENDUCHULI0 ;写整数十位MOV WD1,A MOV A,21H ;写小数位MOV B,#02DIV ABMOV B,AADD A,BADD A,#30HMOV WD3,A ;写小数位RET;------------整数写子程序-------- WENDUCHULI0: MOV A,20H ;整数写子程序MOV B,#10DIV ABMOV 20H,AMOV A,BADD A,BADD A,#30H ;整数写子程序;======写数据========= WENDUXS: LCALL WENDURSTJB 70H,WENDUXS1 ;检复位成功了转RET WENDUXS1:MOV A,#0CCH ;跳过ROMLCALL WENDUXS_BMOV A,#44HLCALL WENDUXS_B ;RAM温度转换MOV R4,#50 D1: ;等待750uS转换完成MOV R5,#13DJNZ R5,$DJNZ R6,D1;======读数据==============LCALL WENDURSTJB 70H,WENDUDS1 ;检复位成功了转RET WENDUDS1:MOV A,#0CCH ;跳过ROMLCALL WENDUXS_BMOV A,#0BEH ;读RAMLCALL WENDUXS_BLCALL WENDUDX_B ;调读子程序RET;-----读数子程序-----------WENDUDX_B:MOV R0,#20HMOV R4,#02WENDUDX_B0:MOV R5,#08HWENDUDX_B1:CLR CSETB P3.3NOPNOPNOPCLR P3.3NOPNOPNOPNOPNOPNOPSETB P3.3MOV R6,#18DJNZ R6,$ ;13uSMOV C,P3.3MOV R6,#46DJNZ R6,$RRC ADJNZ R5,WENDUDX_B1 MOV @R0,AINC R0DJNZ R4,WENDUDX_B0 RET;====写数据子程序====== WENDUXS_B:MOV R5,#08HCLR CWENDUXS_B0:CLR P3.3MOV R6,#12RRC AMOV P3.3,CMOV R6,#49DJNZ R6,$SETB P3.3NOPNOPDJNZ R5,WENDUXS_B0SETB P3.3RET;===========18B20初始化子程序=============== WENDURST:SETB P3.3NOPNOPCLR P3.3MOV R5,#255WENDURST1: ;复位低电时间510uSNOPNOPDJNZ R5,WENDURST1;复位低电时间510uSSETB P3.3MOV R5,#60 ;等待检测存在脉冲15uSDJNZ R5,$ ;等待检测存在脉冲15uSJNB P3.3,WENDURSTOK ;有存在脉冲转CLR 70H ;无存在脉冲清除标号RETWENDURSTOK:MOV R5,#180 ;测存在脉冲240uSSETB 70H ;有存在脉冲打上标号SETB P3.3RET;============遥控按键处理========================== POWER:MOV A,5FHCJNE A,#0B7H,POWER1LCALL YAOKONG1MOV 5FH,#00HRETPOWER1:MOV A,5FHCJNE A,#0A7H,POWER2LCALL YAOKONG2MOV 5FH,#00HRETPOWER2:MOV A,5FHCJNE A,#97H,POWER3LCALL YAOKONG3MOV 5FH,#00HRETPOWER3:MOV A,5FHCJNE A,#0FH,POWER4LCALL YAOKONG4MOV 5FH,#00HRETPOWER4:MOV A,5FHCJNE A,#0C7H,POWER5 LCALL YAOKONG5 MOV 5FH,#00H RETPOWER5:MOV A,5FHCJNE A,#4FH,POWER6 LCALL YAOKONG6 MOV 5FH,#00HRETPOWER6:MOV A,5FHCJNE A,#0E7H,POWER7 LCALL YAOKONG7 MOV 5FH,#00H RETPOWER7:MOV A,5FHCJNE A,#27H,POWER8 LCALL YAOKONG8 MOV 5FH,#00HRETPOWER8:MOV A,5FHCJNE A,#0D7H,POWER9 LCALL YAOKONG9 MOV 5FH,#00H RETPOWER9:MOV A,5FHCJNE A,#47H,POWER0 LCALL YAOKONG0 MOV 5FH,#00H POWER0:RET;====================================== ;=========定时比较==================== BIJIAO: BJ0:MOV A,RR8CJNE A,#4DH,BJ1 ;今天星期一吗?MOV R1,#1EHMOV R0,#10H LCALL BJ00 RETBJ1:CJNE A,#4FH,BJ2 MOV R1,#18H MOV R0,#10H LCALL BJ00 RETBJ2:CJNE A,#51H,BJ3 MOV R1,#19H MOV R0,#10H LCALL BJ00 RETBJ3:CJNE A,#53H,BJ4 MOV R1,#1AH MOV R0,#10H LCALL BJ00 RETBJ4:CJNE A,#55H,BJ5 MOV R1,#1BH MOV R0,#10H LCALL BJ00 RET。
单片机学习项目 (19) 彩屏液晶TFT的原理与应用

单片机学习项目项目19-彩屏液晶TFT的原理与应用一:参考电路电路原理图如下图6.3.3所示。
要求叙述电路组成。
二:程序设计程序主函数/********************************************************** * 程序主函数 ***********************************************************/ #include <reg52.h>#include <intrins.h>#include "LCD.h"char code reserve[3]_at_ 0x3b; //保留0x3b开始的3个字节void main(void){P2= 0xff;P0= 0xff;LCD_init(); //LCD初始化LCD_clear(6); //清屏LCDpic_play(7,61,8,74); //显示第1幅图片pic_play(68,122,8,74); //显示第2幅图片pic_play(7,61,82,148); //显示第3幅图片pic_play(68,122,82,148); //显示第4幅图片while(1) ;}/********************************************************** * TFT彩屏的头文件 ***********************************************************/#ifndef __LCD_H__ //头文件声明#define __LCD_H__#define TYPE_LCD_DATA 1#define TYPE_LCD_COMMAND 0#define uchar unsigned char#define uint unsigned int#define DATA P0//定义彩屏和单片机的管脚连接情况sbit LCD_RST = P2^7;// sbit LCD_RST = P2^0;sbit LCD_RD = P3^2; // sbit LCD_RD = P2^1;sbit LCD_WR = P3^3; // sbit LCD_WR = P2^2;sbit LCD_RS = P2^5; // sbit LCD_RS = P2^3;sbit LCD_CS = P2^6; // sbit LCD_CS = P2^4;//声明要调用的子函数extern uint colors[];extern void delay_ms(uint ms);extern void LCD_Write(uchar type, uintvalue);extern void LCD_SendData8(uchar value);extern void LCD_Wirte_Data16(uintvalue);extern void Reg_Write(uint reg,uint value);extern void LCD_SetRamAddr(uint xStart,uint xEnd, uint yStart, uint yEnd); extern void LCD_init(void);extern void pic_play(uint Start_X, uintEnd_X,uint Start_Y,uint End_Y); extern void LCD_clear(uchar n);#endif/*********************************************************** 彩屏驱动程序 ***********************************************************/#include <reg52.h>#include <intrins.h>#include "LCD.h"#include"hist2.h"#define NOP() _nop_() /* 定义空指令 *///定义设置彩屏颜色的数组unsigned int colors[]={0xf800,0x07e0,0x001f,0xffe0,0x0000,0x07ff,0xf81f,0xffff};//延时子函数void delay_ms(uint ms){unsigned char k;while (ms--){for (k = 0; k < 228; k++) ;}}//写命令与数据子函数void LCD_Write(uchar type, uint value){LCD_CS= 0;LCD_RS = type; //0: 命令 1:数据 LCD_WR = 0;DATA = (uchar)value;LCD_WR = 1;LCD_CS= 1;}//写8位数据子函数void LCD_Write_Data8(uchar value){LCD_CS= 0;LCD_RS = 1;LCD_WR = 0;DATA = value;LCD_WR = 1;LCD_CS = 1;}//写16位数据子函数void LCD_Wirte_Data16(uint value){LCD_CS= 0;LCD_RS = 1;LCD_WR = 0;DATA = (uchar)value;LCD_WR = 1;LCD_WR = 0;DATA = (uchar)(value>>8) ;LCD_WR = 1;LCD_CS= 1;}//写寄存器子函数void Reg_Write(uint reg,uint value){LCD_Write(TYPE_LCD_COMMAND,reg);LCD_Write(TYPE_LCD_DATA,value);}//设置显示窗口子函数void LCD_SetRamAddr(uint xStart, uint xEnd,uint yStart, uint yEnd) {uint VerPos,HorPos,StartAddr;HorPos = (uint)(xStart |(xEnd<<8));VerPos = (uint)(yStart |(yEnd<<8));StartAddr = (uint)(xStart |(yStart<<8));Reg_Write(0x09, xStart);Reg_Write(0x10,yStart);Reg_Write(0x11,xEnd);Reg_Write(0x12,yEnd);Reg_Write(0x18, xStart);Reg_Write(0x19, yStart);LCD_Write(TYPE_LCD_COMMAND,0x22); //0x22}//液晶屏初始化void LCD_init(void){uint num;Reg_Write(0x0001,0x0002); //模式选择1Reg_Write(0x0002,0x0012); //模式选择2Reg_Write(0x0003,0x0000); //模式选择3Reg_Write(0x0004,0x0010); //模式选择4LCD_SetRamAddr(0,127,0,159);for(num=20480;num>0;num--)LCD_Wirte_Data16(0xffff);Reg_Write(0x0005,0x0008);Reg_Write(0x0007,0x007f);Reg_Write(0x0008,0x0017);Reg_Write(0x0009,0x0000); //从X坐标开始,写SRAMReg_Write(0x0010,0x0000); //从Y坐标开始,写SRAMReg_Write(0x0011,0x0083); //写SRAM,X坐标结束Reg_Write(0x0012,0x009f); //写SRAM,Y坐标结束Reg_Write(0x0017,0x0000); //控制SRAMReg_Write(0x0018,0x0000); //SRAM中X的位置Reg_Write(0x0019,0x0000); //SRAM中Y的位置Reg_Write(0x0006,0x00c5);delay_ms(10);//延时}//图片显示子函数void pic_play(uint Start_X, uint End_X,uint Start_Y,uint End_Y){uint num,m;uint dx,dy;dx= (End_X+1)-Start_X; //计算写入数据的总数dy= (End_Y+1)-Start_Y;num = dx*dy<<1;LCD_CS = 0;LCD_SetRamAddr(Start_X,End_X-1,Start_Y,End_Y-1); LCD_RS = 1;for(m=0; m<6156; m++){LCD_Write_Data8(Image_pic[m]);}LCD_CS = 1;}// 清屏子函数void LCD_clear(uchar n){uint num;LCD_SetRamAddr(0,127, 0,159);for(num=20480;num>0;num--) //160*128=20480{LCD_Wirte_Data16(colors[n]);}}(2)图形库设计步骤用Image2Lcd软件提取图片如图6.3.5所示。
基于单片机的液晶显示教具设计

基于单片机的液晶显示教具设计摘要:近年来,随着社会的发展,人们的生活越来越便利,电子产品在人们的日常生活中起着越来越重要的作用。
例如字符显示器,可以为监控系统信息提供完整的方案,通过指令方便地修改,可以真正实现信息发布无纸化。
与此同时,社会对电类的人才需求越来越强烈,学校相应加开了电类及机电一体化类的课程,而此类专业学习过于抽象,常常是学生没有学习兴趣,理论与实践脱节。
文章正是结合学生的学习特点及教学内容,设计了基于单片机的液晶显示教具。
关键词:单片机;液晶;显示器对于机电一体化的高职学生来说,建立一体化产品通讯、电路、硬件软件一体化的概念、培养设备改造能力尤其重要。
本教具以“单片机原理与系统设计”为基础理论,重点强调系统的设计及改造。
使学生通过应用单片机及控制系统设计的基本理论与基本技能,掌握应用系统各主要环节的设计选用方法,初步了解电路控制系统,并具备设备技术改造和开发的能力,培养学生分析问题、解决问题的能力及创新意识,提高学生的动手能力。
LCD显示教具平板由显示模块、控制模块、键盘、电源、震荡复位电路构成,如图1所示。
单片机作为整个控制模块的核心,起着处理输入的程序及信号、输出显示内容的重要作用。
显示模块即为液晶显示屏,可以显示广告语。
振荡复位电路将直流电转变为一定频率的交流信号,作用是产生交流电信号,作为信号源。
程序主要在计算机上完成,然后下载到控制模块。
显示模块是整个电路板的终端,通过程序控制显示的内容和方式。
教具的设计分为CPU选用、液晶显示器选用、电源设计、CPU 与显示器接口设计及软件设计,如图1所示。
1 CPU的选用微处理器问世后不久,便出现了以一个大规模集成电路为主组成的微型计算机――单片微型计算机(Micro Computer Unit简称单片机),又称为嵌入式微控制器(Embedded Microcontroller)。
一般分为通用型、总线型和控制型。
单片机存在我们生活的各个领域,大到飞机、工业自动化过程的实时控制和数据处理,小到智能IC卡,录像机、摄像机的控制等等。
【免费下载】基于TFT LCD显示屏的MSP430单片机实验

B. TM1638.........................................................................................................................4 二、 实验程序 ...................................................................................................................................... 5
三、 感想与思考 ..................................................................................................................................8 附页(实验程序代码) ........................................................................................................................ 9
1、概述
本次课程设计是在 MSP430 单片机液晶屏字符显示功能的基础上,编程设计游戏。程 序的设计基于《F6638 实验指导手册》中,“TFT-LCD 实验--字符显示”的程序点亮 TFTLCD 屏幕,编写游戏程序,与 IO 控制结合,实现游戏的可视化和游戏操作。由于 Code Composer Studio v5.5.0 难以对该程序样例实现编译,采用的开发工具为 Code Composer Studio v6.0。
2、 应用模块................................................................................................................................2 A. LCD 模块 .......................................................................................................................2
基于单片机的液晶显示系统方案设计书

设计(论文)题目:单片机控制液晶显示系统设计(论文)主要内容和要求:1. 掌握89C52 单片机工作原理、软/硬件资源2.掌握中文液晶显示屏的结构及工作原理3.完成系统硬件设计4.完成系统软件设计摘要本文主要对AT89C52 控制的液晶显示系统进行了研究。
文章首先对单片机AT89C52 的结构、功能、特点进行了简要的介绍;然后介绍了液晶显示控制器KS0108 的结构功能,并对液晶模块LG128643 的结构、功能做了详细的说明;之后,着重分析了液晶显示系统的硬件实现方案,包括键盘的设计、液晶显示接口的设计。
文章的最后提出系统的软件设计方案,设计了各个功能模块的软件流程图。
关键词:单片机AT89C52 控制器KS0108 液晶模块LG128643ABSTRACTThis paper is main the LCD that control to the AT89C52 manifestation the system proceeded the research.The article preceded the introduction of the synopsis to the construction, function, characteristics of the single a machine AT89C52 first. Then introduced the LCD show the construction function of the controller KS0108, And did the expatiationto the construction, function of the LCD mold a LG128643。
After, emphasized to analyze the LCD show that the hardware of the system realizes project, The design, LCD manifestation that include the keyboard connects design. The article puts forward the software design project of the system finally, designed the software flow chart of the each function mold piece.Keywords: Single a machine AT89C52、controller KS0108、LCD mold a LG128643目录1.概论11.1 人类与显示技术11.2 液晶和液晶显示31.3LCD 发展史41.4 液晶显示器发展史72. 液晶显示系统原理92.1AT89C52单片机功能原理92.1.1A TMEL公司介绍92.1.2A T89系列单片机的特点102.1.389C52单片机结构112 . 2液晶显示器件原理202.2.1 液晶简介20 2.2.2液晶电光特性202.2.3液晶显示模块原理212.2.4LCD 的基本构造222.2.5LCD 的驱动方式242.2.6LCD 的显示原理252.2.7液晶控制器KS0108结构及功能262.2.8 液晶显示模块的结构特点293.单片机控制液晶显示模块电路设计333.1单片机控制板电路设计要求333.2单片机控制板原理框图及功能333.3单片机AT89C52对非编码键盘接口设计333.4单片机AT89C52 对液晶显示器的控制364.液晶显示系统软件设计434.1 液晶显示软件设计要求434.2 液晶显示软件主要内容434.3 液晶显示软件流程图435.硬件调试分析515.1 实验调试525.2 设计体会536.结束语546.1毕业设计总结556.2 进一步的工作展望56致谢57 参考文献581.概论液晶显示器件如春风早以吹入人们的各个领域。
基于单片机的TFT液晶显示系统设计

基于单片机的TFT液晶显 示系统设计
目录
1
研究背景
2
ห้องสมุดไป่ตู้
研究目的
4
3 系统的实现过程 4 研究结论和分析 7 8
选题意义及其背景
设置完成后的界面
研究结果
液晶彩屏实际显示效果图
研究结果分析
本研究主要介绍了设计TFT彩色液晶屏简单显示系 统的设计流程和内容。整个系统采用简单的显示电路结 构降低了设计复杂程度,也为TFT液晶彩屏的成本降低 方面的研究拓宽了思路,从而能够让更多的人享受到液 晶显示带来的视觉享受,同时具有良好的移植性和方便 调用。但现有的系统还是存在一些不足的,主要包括系 统的不稳定抗干扰能力差,不能显示大容量的图片,传 输的速率有限等。
系统的硬件设计
硬件设计主要有最 小系统,TFT液晶彩屏 显示电路,单片机输入 电源电路三个部分。
硬件原理设计构图
程序流程图
主程序流程图
显示子程序流程图
图片取模
本文使用Image2Lcd 2.9软件提取一幅 学校的校徽图像的图片数据。在软件的设 置界面首先要把图片取模的扫描格式设置 为水平扫描,输出灰度调整到16位真彩色。 输出数据类型为C语言数组,注意最后在要 把最大宽度和高度调整为62和62,就是将 来图片显示出来的大小。按提示把图像提 取出来的点阵文件保存在数gImage_wy[]中, 供显示子程序调用。
从而不利于推广和普及
研究目的
本研究是在AT89S51单片机控制的基础上,设计出一个用C51语言运 行的液晶显示系统可以显示彩色图像。而且能从中取得详细的显示控制
一种基于STM32的控制TFT-LCD显示的设计方法

一种基于STM32的控制TFT-LCD显示的设计方法摘要:TFT-LCD 即薄膜晶体管液晶显示器。
其英文全称为: Thin Film Transistor-Liquid CrystalDisplay。
TFT-LCD 与无源TN-LCD、 STN-LCD 的简单矩阵不同,它在液晶显示屏的每一个象素上都设置有一个薄膜晶体管(TFT),可有效地克服非选通时的串扰,使显示液晶屏的静态特性与扫描线数无关,因此大大提高了图像质量。
本文设计了一种基于STM32开发板的ILI9341芯片控制液晶屏的方法。
摘要:STM32,LCD, ILI9341,TFT一、开发硬件介绍本设计开发板使用的屏幕是3.2寸TFT液晶彩屏,分辨率为320x240,并使用ILI9341芯片控制液晶屏。
液晶屏的控制芯片内部结构非常复杂,最主要的是位于中间的GRAM(Graphics RAM),可以理解为显存。
GRAM 中每个存储单元都对应着液晶面板的一个像素点。
芯片内部有电路把 GRAM存储单元的数据转化成液晶面板的控制信号,使每个像素点呈现特定的亮度和颜色,这些点组合起来则成为显示界面。
所用液晶屏模块原理图如图所示:从模块接口电路可以看出,LCD采用16位的并方式与外部连接,之所以不采用8位的方式,是因为彩屏的数据量比较大,尤其在显示图片的时候,如果用8位数据线,就会比16位方式慢一倍以上,我们当然希望速度越快越好,所以我们选择16位的接口。
二、用STM32驱动LCDILI9341的 8080 通讯接口时序可以由 STM32 使用普通 I/O 接口进行模拟,但这样效率较低,它提供了一种特别的控制方法——使用FSMC接口。
根据STM32对寻址空间的地址映射,地址0x6000 0000 ~0x9FFF FFFF是映射到外部存储器的,而其中的0x60000000 ~0x6FFF FFFF 则是分配给 NOR FLASH、PSRAM这类可直接寻址的器件。
基于TFT_LCD显示屏的MSP430单片机实验

太空大战小游戏——基于TFT_LCD显示屏的MSP430单片机实验SJTU ME 5120209353目录一、实验硬件 (1)1、概述 (1)2、应用模块 (2)A. LCD模块 (2)B. TM1638 (4)二、实验程序 (5)1、程序实现效果 (5)2、程序封装模块 (5)1、图形产生与移动 (5)2、我方战机的控制 (5)3、敌机与奖励的产生及移动 (6)4、击落敌机与获得奖励 (7)5、关卡升级 (7)6、施放大招: (7)三、感想与思考.................................................................................................. 错误!未定义书签。
附页(实验程序代码) (8)一、实验硬件1、概述本次课程设计是在MSP430单片机液晶屏字符显示功能的基础上,编程设计游戏。
程序的设计基于《F6638实验指导手册》中,“TFT-LCD 实验--字符显示”的程序点亮TFT-LCD 屏幕,编写游戏程序,与IO控制结合,实现游戏的可视化和游戏操作。
由于Code Composer Studio v5.5.0难以对该程序样例实现编译,采用的开发工具为Code Composer Studio v6.0。
MSP430系列单片机是由美国TI公司生产的新一代16位单片机,因以其集成密度高、运算速度快、外设接口丰富等优势受到越来越多的产品开发人员的青睐,是当前使用最多的单片机之一。
在很多具体应用中,甚至只利用一片MSP430单片机,就可以完成一个系统的全部功能。
下面给出实验中使用的MSP430F66单片机的封装图和功能框图。
图1-MSP430F6638封装图图2-MSP430F6638功能框图2、应用模块A. LCD模块本次编写的程序所用的主要模块为LCD模块,在功能框图中显示为 LCD_B。
硬件电路设计如下所示。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
本科生毕业论文基于单片机的TFT液晶显示设计学号:2010642028姓名:王彩月年级:10 级系别:物理化学系专业:电子信息科学与技术指导教师:杨景昱完成日期: 2014年4月20 日承诺书本人承诺所呈交的毕业论文(设计)是我在指导教师指导下进行研究工作所取得的研究成果。
据查证,除了文中特别加以标注的地方外,论文中不包含他人已经发表或撰写过的研究设计成果。
若本论文(设计)及资料与以上承诺内容不符,本人愿意承担一切责任。
毕业论文(设计)作者签名:日期:年月日摘要 (I)Abstract (II)前言 (1)第1章课题背景 (2)1.1 国内现状 (2)1.2 国外现状 (2)1.3 本文研究内容 (3)第2章硬件设计 (4)2.1 系统分析 (4)2.1.1 利用单片机控制TFT显示屏原理图 (4)2.1.2 可行性及需求分析 (6)2.2 本章小结 (6)第3章软件系统工作原理 (7)3.1 总体设计 (7)3.2 软件实现功能 (8)3.2.1 中英文显示程序设计 (8)3.2.2 图片显示程序设计 (8)第4章软件测试 (10)4.1 调试环境 (10)4.2 本章小结 (11)结论 (12)参考文献 (13)致谢 (14)附录 (15)本文提出的TFT液晶显示屏控制系统以单片机(STC12LE5A60S2)为核心,由控制部分、显示部分(320*240TFT)组成。
该系统大部分功能通过硬件来实现,电路简单明了,系统稳定性很高。
这套彩屏控制系统可以方便地实现图片显示,中英文显示的功能,并通过与单片机连接可以实现对屏幕的清屏初始化操作,还可以连接相应的外围电路,使其发挥更大的作用。
本文首先描述系统硬件工作原理,并附以系统结构框图加以说明,着重介绍了本系统所应用的各硬件模块的功能和它的工作过程;其次,详细阐述了程序的各个模块及其实现过程。
本系统的主要设计思想是以硬件为基础,软件和硬件相结合,最终实现各个模块的功能。
关键词:单片机;STC12LE5A60S2;320*240TFT;TFT液晶显示屏控制AbstractIn this paper, TFT LCD display control system with single chip microcomputer (STC12LE5A60S2) as the core, by control parts, display (320 * 240 TFT). Most of the system function by hardware, circuit is simple and clear, the system stability is very high.Picture shows the color screen control system can be easily, in both Chinese and English display function, and through the connected to the microcontroller can realize to the screen screen clearing initialization, also can connect the corresponding peripheral circuit, make it play a bigger role.This paper describes the working principle of the system hardware, each accompanied by a diagram of the system structure, introduced this system by the application of the hardware module function and its working process; Second, expounds the procedures of each module in detail and its implementation process. The main design idea of this system is based on the hardware, software and hardware combination, finally realizes the function of each module.Keywords: SCM; STC12LE5A60S2; 320*240TFT; TFT-LCD前言液晶显示器(TFT-LCD)大多是用一个可编程接口驱动,控制方便,体积小,功耗低,可以实现良好的人机界面[1],在智能设备尤其是便携式工具中被广泛使用,在许多行业中TFT-LCD已成为当代最重要的高新技术产业,信息显示屏必备模式。
现在,人类社会已进入信息时代,人们从视觉接收信息有80%,任何获取信息的方式,最终都需要通过信息显示,实现人机交流,在各种显示技术中,因为液晶显示器具有低工作电压,低功耗等优点,使其成为发展最快[2],被最广泛使用的,TFT液晶显示不只能替换某些其他显示设备,也大大扩展了显示设备的应用范围,现在世界上最节能的显示产品之一就是液晶产品,显示器使用便携几乎是最好的选择,电脑、手机、CPS、笔记本计算机、PDA、电子词典、数码相机、便携式智能仪器仪表的应用随着产业发展和经济生活水平的提高,对液晶显示器的要求将会各种各样[3]。
因此,液晶显示装置的开发,设计,应用,具有十分重要的意义。
现在,世界上的生产液晶厂商主要有三星,华映,夏普,富士通,日立,中国大陆液晶显示器及相关产业近几年取得了很大的进步,我国已经成为全球发展最迅速的国家,有着比较惊人的市场潜力。
介绍了系统硬件工作原理,并利用系统结构框图说明各硬件模块的功能和工作流程,比较系统的叙述了程序的主要模块和他的实现过程。
第1章课题背景目前TFT液晶显示屏在笔记本电脑、智能手机、电视、LCD显示器和其他设备等领域大范围使用,发展速度很快,受到了大家的关注。
从液晶显示技术未来的发展走势来看,其本身具有高亮度、解析度高、视角宽、成本低以及功耗低等优势[4]。
液晶显示器件正在快速推进其平板化的发展这是信息产业的重要组成部分。
现在的社会已经步入信息革命的时代,LCD显示器件和LCD显示技术在发展中有非常重要的位置,电话、电视、笔记本电脑等设备和各种仪器设备上的液晶显示屏给大家平常生活、工作提供了很多的信息。
没有显示器件信息技术不会像现在这样快速的发展。
通信、显示及信息处理被认为是电子产业在20世纪计算机、微电子之后很大的发展项目。
科学技术的发展迅速导致显示技术也在发生重大革命,尤其是90年代以来,市场需求的急剧增长使显示技术有了更大突破,在电子产业的发展快速崛起。
1.1 国内现状自八十年代开始经历了几次比较大的投资后,中国大陆成为全球最大的TN-LCD产业基地及主要的STN-LCD产业基地。
后又大范围步入TFT-LCD产业,我国逐渐进入世界液晶强国之列。
随后液晶显示器出现及TFT-LCD液晶显示器技术也被研究出来,可是技术尚未成熟仍有缺陷,不适合普及应用[5]。
八十年代末到九十年代初,TFT LCD液晶工业开始发展迅速,中国内地的信息产业发展速度几乎也一直保持着增长的状态,已经成为中国在电子产品行业重要支柱,TFT-LCD平板显示是信息产业比较看重的产品。
但是近期各产业投资明显上升,其国内投资产业好像还有点问题。
可是这些并不能影响大陆TFT液晶显示产业迅速发展的态势,所以显示产业是前景非常广阔发展机会又多的行业[6]。
1.2 国外现状液晶最开始是由美国人发现和投入实验的,并且得到了美国军方的关注推动了技术的研发,其正式被使用在商业用途是在十九世纪中成功地将液晶用在仪器的显示面板上并得到信息。
十九世纪后期成功地开发出以LCD为显示面板的计算器、手表等好多商业用品,随后陆续加大LCD的生产使其成为全世界显示器产业重要器件,日本是全球第一个将LCD显示器商业化的,是液晶显示器件产业的先行国家并拥有完整液晶产业链,与此同时在发展之初推进显示器生产设备的发展与前进[7]。
LCD领域投资大参与的厂商也多,一开始大量的研发投资有好多有名的家电厂商都参加了,但研发的生产的成果不是很好从芯片到各种材料通用性很差,大幅度增加成本,不方便厂商配套使用,使液晶产品的整个成本特别高,导致好多企业几乎都退出了液晶产业。
后来在韩国台湾等厂商的努力下使液晶成本下降,使市场需求又开始大幅度增长,各企业又纷纷重新调整政策,液晶产业发展速度又迅速上升,所以说其发展前景广阔机会多。
1.3 本文研究内容本课题的设计内容主要是以硬件为基础的设计,最后让软件与硬件结合使模块功能实现。
介绍了单片机的工作原理和TFT屏幕的特征。
在理论上先了解单片机的各个引脚功能,在进行硬件电路的连接,充分利用其功能并以单片机为核心,实现单片机与显示电路与外围电路的连接,最终达到了对屏控制的功能。
第2章硬件设计2.1 系统分析本课题系统设计要用C语言编写程序所以我选择了STC12LE5A60S2单片机做课题设计,STC系列单片机都是基于51内核的微控制器,国内宏晶科技公司生产,芯片RAM 1280KB,ROM 60KB单周期指令,而且是低压3.3V工作。
在SD卡和TFT液晶接口电平3.3V,单片机内带硬件PWM、SPI,对我这个系统有很大的好处,所以选择这块单片机进行控制。
然后是选用SSD1289控制芯片,3.2寸触摸TFT模块集成触摸控制IC、SD 卡座、3V稳压、分辨率240*320,它还集成控制器功能,由最高可达172800个字节(240*320*18/8)图形,嵌入直流转换器和电压发生器提供所需的所有必要的电压,SSD1289可降至1.16v和提供不同的省电模式。
它适用于任何便携式电池驱动的应用程序要求运行周期长和紧凑的尺寸。
SSD1289TFT的运转是都在一个驱动程序,集成的RAM电源电路,驱动程序和门源驱动程序到单片机。
它可以驱动一个262k彩色a-TFT面板RGB 240*240的分辨率。
它还集成控制器功能,由最高可达172800个字节(240*320*18/8)图形数据显示RAM(GDDRAM),以及对常见单片机通过8/9/16/18-bits 6800系列/8080系列兼容的并行接口或GDDRAM串行接口和存储数据。
辅助18-bits视频接口(VSYNC HSYNC DOTCLK,启用)集成到SSD1289显示动画形象。
SSD1289嵌入直流-直流转换器和电压发生器提供所需的所有必要的电压转用用最小的外部组件。