搜索
bottom↓
回复: 1

MSP430F149驱动ST7529 160160液晶

[复制链接]

出0入0汤圆

发表于 2015-9-25 06:36:17 | 显示全部楼层 |阅读模式
MSP430F149驱动ST7529 160160液晶





/*--------------------------------------------------------------------------   
File Name:HG16016005T.C;   
Description:This Resouce Is For Dot Matrix Liquid Crystal   
            Modules Controlled By Sitronix'S ST7529   
   
LCM Interface Dimenision:   
1       2       3       4       5       6       7       8       9       10   
----------------------------------------------------------------------------   
VSS     RS      R/W     E       /CS     /RST    VDD     D0      D1      D2   
   
11      12      13      14      15      16      17      18   
----------------------------------------------------------------------------   
D3      D4      D5      D6      D7      K       NC      A   
   
Author By:Dangzhen   
Date:2009-05-07   
--------------------------------------------------------------------------*/   
#include <msp430x14x.h>  

#define DataPort      P1OUT    //数据口 P1  

#define led1_on()  P4OUT|=BIT7   //P47 LED+ A   VDD3.3V
#define led1_off() P4OUT^=BIT7  

#define lcm_on P4OUT|=BIT5     //背光控制   P45  LED-  K
#define lcm_off P4OUT^=BIT5  

#define LCD_RS1 P4OUT|=BIT0    //RS 0:指令  1:数据   P40
#define LCD_RS0 P4OUT&=~BIT0                                          
   
#define LCD_RST1 P4OUT|=BIT4   //RESET   P44
#define LCD_RST0 P4OUT&=~BIT4  

#define LCD_WR1 P4OUT|=BIT1    //WR     P41
#define LCD_WR0 P4OUT&=~BIT1  

#define LCD_RD1 P4OUT|=BIT2   //RD  P42
#define LCD_RD0 P4OUT=~BIT2  

#define LCD_CS1 P4OUT|=BIT3    //CS    P43
#define LCD_CS0 P4OUT&=~BIT3  

#define      VOLCTRL     0x81    / *EC控制 2字节参数 D0~D5,D6~D8*/  
#define      VOLUP       0xD6    /* EC减一 */  
#define      VOLDOWN     0xD7    /* EC加一 */  

#define  uchar unsigned char      
#define  uint  unsigned int   
#define  TRUE   1  
#define  FALSE  0  
     
#define DELAYMS     200      

/************************************************************  
***************************函数定义*************************/  
const uchar  HTDISPLAY[];  
void delay();  
void delayms();  
void delay10ms(int count);  
void wr_cmd(uchar cmd);  
void wr_dat(uchar dat);  
void ST7529Ini(void);  
void HDT_DisplayOff();  
void HDT_DisplayOn();  
void InitSys();  
void disp_dots(uchar dat1,uchar dat2);  
void disp_bmpp( const uchar *myziku);  
void LcdSetAddr16_16(uchar x1, uchar y1,  const uchar *ziku);  
void dsiplay16_16(uchar x,uchar y);  
const uchar MYNUMBER[];  
void LcdSetAddr12_12(uchar x1, uchar y1,  const uchar *NUMBER);  
/*--------------------------------------------------------------------------------*/  

const uchar  HTDISPLAY[]=   
{   
0x08,0x30,0x04,0x20,0x02,0x40,0x3F,0xFC,0x29,0x14,0x25,0x24,0x25,0x44,0x3F,0xFC,  
0x00,0x00,0x0F,0xF0,0x08,0x10,0x0F,0xF0,0x08,0x10,0x08,0x10,0x0F,0xF0,0x08,0x10,/*"曾",0*/  
0x10,0x00,0x11,0xFC,0x20,0x08,0x20,0x10,0x48,0x30,0xF0,0xC8,0x13,0x06,0x20,0x02,  
0x41,0xFC,0xF8,0x20,0x00,0x20,0x00,0x20,0x18,0x20,0xE3,0xFE,0x00,0x00,0x00,0x00,/*"经",1*/  
0x01,0x00,0x01,0x00,0x7F,0xFE,0x02,0x00,0x04,0x00,0x0F,0xF0,0x18,0x10,0x28,0x10,  
0x4F,0xF0,0x88,0x10,0x08,0x10,0x0F,0xF0,0x08,0x10,0x08,0x90,0x08,0x70,0x08,0x20,/*"有",2*/  
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x7F,0xFE,  
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"一",3*/  
0x09,0x30,0x0D,0xA0,0x09,0x20,0x12,0x10,0x12,0x08,0x24,0x0E,0x68,0x04,0xB7,0xF8,  
0x20,0x88,0x20,0x88,0x20,0x88,0x21,0x08,0x21,0x08,0x22,0x38,0x2C,0x10,0x00,0x00,/*"份",4*/  
0x01,0x00,0x01,0x04,0x7F,0xFE,0x02,0x00,0x0F,0xF0,0x08,0x10,0x0F,0xF0,0x08,0x10,  
0x0F,0xF0,0x08,0x10,0x0F,0xF0,0x08,0x10,0xFF,0xFE,0x04,0x40,0x18,0x30,0x60,0x0C,/*"真",5*/  
0x08,0x40,0x08,0x40,0x7E,0xF8,0x08,0x48,0x1E,0x48,0x68,0xCA,0x08,0xAA,0x2B,0x06,  
0x1F,0xF0,0x01,0x00,0x3F,0xF8,0x01,0x00,0x7F,0xFE,0x01,0x00,0x05,0x00,0x02,0x00,/*"挚",6*/  
0x10,0x80,0x10,0x80,0x20,0x80,0x7C,0xFC,0x45,0x04,0x45,0x04,0x46,0x04,0x7C,0x84,  
0x44,0x44,0x44,0x64,0x44,0x24,0x44,0x04,0x7C,0x04,0x44,0x28,0x40,0x10,0x00,0x00,/*"的",7*/  
0x00,0xF8,0x3F,0x90,0x12,0x10,0x09,0x20,0x3F,0xFE,0x22,0x02,0x42,0x00,0x3F,0xFC,  
0x04,0x00,0x07,0xF0,0x0C,0x20,0x0B,0x40,0x10,0xC0,0x63,0x30,0x8C,0x0E,0x30,0x04,/*"爱",8*/  
0x20,0x40,0x20,0x40,0x27,0xFC,0x30,0x40,0xAB,0xF8,0xA0,0x40,0xAF,0xFE,0x20,0x00,  
0x23,0xF8,0x22,0x08,0x23,0xF8,0x22,0x08,0x23,0xF8,0x22,0x08,0x22,0x28,0x22,0x10,/*"情",9*/  
0x10,0x40,0x08,0x60,0x08,0x40,0xFE,0xFE,0x20,0x84,0x20,0x84,0x3D,0x44,0x26,0x48,  
0x24,0x28,0x24,0x30,0x24,0x10,0x24,0x30,0x44,0x48,0x44,0x8E,0x95,0x04,0x08,0x00,/*"放",10*/  
0x02,0x00,0x02,0x00,0x7F,0xFE,0x04,0x00,0x04,0x00,0x08,0x40,0x18,0x40,0x17,0xFC,  
0x30,0x40,0x50,0x40,0x90,0x40,0x10,0x40,0x10,0x40,0x17,0xFE,0x10,0x00,0x00,0x00,/*"在",11*/  
0x06,0x40,0x38,0x50,0x08,0x48,0x08,0x48,0x08,0x40,0xFF,0xFE,0x08,0x40,0x08,0x48,  
0x0E,0x28,0x38,0x30,0xC8,0x20,0x08,0x50,0x09,0x92,0x08,0x0A,0x28,0x06,0x10,0x02,/*"我",12*/  
0x00,0x00,0x7F,0xFE,0x02,0x00,0x04,0x00,0x3F,0xFC,0x24,0x44,0x24,0x44,0x27,0xC4,  
0x24,0x44,0x24,0x44,0x27,0xC4,0x24,0x44,0x24,0x44,0x3F,0xFC,0x20,0x04,0x00,0x00,/*"面",13*/  
0x08,0x10,0x06,0x18,0x04,0x20,0xFF,0xFE,0x00,0x00,0x3E,0x08,0x22,0x48,0x3E,0x48,  
0x22,0x48,0x22,0x48,0x3E,0x48,0x22,0x48,0x22,0x48,0x2A,0x08,0x24,0x28,0x00,0x10,/*"前",14*/  
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,  
0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x00,0x30,0x00,0x10,0x00,0x20,0x00,0x00,0x00,/*",",15*/  
0x06,0x40,0x38,0x50,0x08,0x48,0x08,0x48,0x08,0x40,0xFF,0xFE,0x08,0x40,0x08,0x48,  
0x0E,0x28,0x38,0x30,0xC8,0x20,0x08,0x50,0x09,0x92,0x08,0x0A,0x28,0x06,0x10,0x02,/*"我",16*/  
0x20,0x00,0x11,0xF0,0x11,0x10,0x81,0x10,0x42,0x12,0x54,0x0E,0x10,0x00,0x17,0xF8,  
0x22,0x10,0x21,0x10,0xE0,0xA0,0x20,0x40,0x20,0xA0,0x21,0x18,0x26,0x0E,0x20,0x04,/*"没",17*/  
0x01,0x00,0x01,0x00,0x7F,0xFE,0x02,0x00,0x04,0x00,0x0F,0xF0,0x18,0x10,0x28,0x10,  
0x4F,0xF0,0x88,0x10,0x08,0x10,0x0F,0xF0,0x08,0x10,0x08,0x90,0x08,0x70,0x08,0x20,/*"有",18*/  
0x10,0x00,0x11,0xFC,0x10,0x08,0x10,0x10,0xFC,0x20,0x24,0x20,0x24,0x20,0x27,0xFE,  
0x44,0x20,0x64,0x20,0x18,0x20,0x08,0x20,0x14,0x20,0x26,0x20,0x44,0xA0,0x80,0x40,/*"好",19*/  
0x10,0x00,0x11,0xFC,0x10,0x08,0x10,0x10,0xFC,0x20,0x24,0x20,0x24,0x20,0x27,0xFE,  
0x44,0x20,0x64,0x20,0x18,0x20,0x08,0x20,0x14,0x20,0x26,0x20,0x44,0xA0,0x80,0x40,/*"好",20*/  
0x00,0x40,0xF8,0x40,0x20,0xA0,0x21,0x10,0x22,0x28,0x24,0x46,0xF8,0x80,0x23,0x10,  
0x20,0x24,0x20,0x44,0x39,0x88,0xC6,0x10,0x00,0x60,0x01,0x80,0x06,0x00,0x38,0x00,/*"珍",21*/  
0x21,0x10,0x21,0x10,0x21,0x10,0x37,0xFC,0xA9,0x10,0xA1,0x10,0xAF,0xFE,0x20,0x00,  
0x23,0xF8,0x22,0x08,0x22,0x08,0x23,0xF8,0x22,0x08,0x22,0x08,0x23,0xF8,0x00,0x00,/*"惜",22*/  
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,  
0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x00,0x00,0x10,0x00,0x00,0x00,/*"!",23*/  
0x10,0x00,0x10,0x00,0x18,0x00,0x10,0x7E,0xFE,0x42,0x22,0x42,0x22,0x42,0x22,0x42,  
0x22,0x42,0x24,0x42,0x14,0x42,0x08,0x42,0x14,0x7E,0x23,0x42,0x42,0x42,0x80,0x00,/*"如",24*/  
0x00,0x00,0x1F,0xF0,0x11,0x10,0x1F,0xF0,0x11,0x10,0x1F,0xF0,0x01,0x00,0x01,0x00,  
0xFF,0xFE,0x03,0x80,0x05,0x40,0x09,0x30,0x31,0x0E,0xC1,0x04,0x01,0x00,0x01,0x00,/*"果",25*/  
0x00,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0xF8,0x01,0x00,  
0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x04,0x7F,0xFE,0x00,0x00,/*"上",26*/  
0x00,0x00,0x3F,0xFC,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x7F,0xFE,0x01,0x00,  
0x01,0x00,0x02,0x80,0x02,0x40,0x04,0x20,0x08,0x18,0x10,0x0E,0x20,0x04,0x40,0x00,/*"天",27*/  
0x20,0x40,0x30,0x40,0x24,0x4C,0x42,0x70,0xFF,0x44,0x42,0x46,0x00,0x7C,0x7E,0x00,  
0x42,0x40,0x7E,0x4C,0x42,0x70,0x7E,0x40,0x42,0x44,0x42,0x46,0x4A,0x3C,0x44,0x00,/*"能",28*/  
0x7F,0xFC,0x01,0x00,0x01,0x00,0x1F,0xF0,0x11,0x10,0x11,0x10,0x1F,0xF0,0x11,0x10,  
0x11,0x10,0x11,0x10,0xFF,0xFE,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x50,0x10,0x20,/*"再",29*/  
0x10,0x40,0x10,0x40,0x20,0xA0,0x20,0x90,0x49,0x08,0xF2,0x0E,0x15,0xF4,0x20,0x00,  
0x40,0x00,0xF9,0xF8,0x01,0x08,0x01,0x08,0x19,0x08,0xE1,0x08,0x01,0xF8,0x00,0x00,/*"给",30*/  
0x06,0x40,0x38,0x50,0x08,0x48,0x08,0x48,0x08,0x40,0xFF,0xFE,0x08,0x40,0x08,0x48,  
0x0E,0x28,0x38,0x30,0xC8,0x20,0x08,0x50,0x09,0x92,0x08,0x0A,0x28,0x06,0x10,0x02,/*"我",31*/  
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x7F,0xFE,  
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"一",32*/  
0x01,0x00,0x41,0x00,0x25,0x00,0x25,0xFE,0x2A,0x44,0x0A,0x48,0x14,0x40,0x10,0x40,  
0x20,0xC0,0xE0,0xA0,0x41,0x20,0x42,0x10,0x44,0x08,0x18,0x0E,0x60,0x04,0x00,0x00,/*"次",33*/  
0x10,0x00,0x10,0xF8,0x10,0x88,0xFE,0x88,0x10,0x88,0x10,0x88,0x38,0x88,0x34,0x88,  
0x54,0x88,0x50,0x88,0x91,0x08,0x11,0x0A,0x12,0x0A,0x12,0x0A,0x14,0x06,0x10,0x00,/*"机",34*/  
0x01,0x00,0x01,0x00,0x02,0x80,0x04,0x40,0x08,0x20,0x10,0x18,0x6F,0xEE,0x80,0x04,  
0x00,0x00,0x3F,0xF8,0x02,0x00,0x04,0x20,0x08,0x10,0x11,0xF8,0x3F,0x18,0x10,0x10,/*"会",35*/  
0x10,0x80,0x10,0x80,0x20,0x80,0x7C,0xFC,0x45,0x04,0x45,0x04,0x46,0x04,0x7C,0x84,  
0x44,0x44,0x44,0x64,0x44,0x24,0x44,0x04,0x7C,0x04,0x44,0x28,0x40,0x10,0x00,0x00,/*"的",36*/  
0x40,0x00,0x20,0x1C,0x33,0xE0,0x20,0x20,0x00,0x20,0x07,0xFE,0xF0,0x20,0x10,0x20,  
0x10,0x20,0x11,0xFC,0x11,0x04,0x11,0x04,0x15,0x04,0x19,0xFC,0x11,0x04,0x00,0x00,/*"话",37*/  
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,  
0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x00,0x30,0x00,0x10,0x00,0x20,0x00,0x00,0x00,/*",",38*/  
0x06,0x40,0x38,0x50,0x08,0x48,0x08,0x48,0x08,0x40,0xFF,0xFE,0x08,0x40,0x08,0x48,  
0x0E,0x28,0x38,0x30,0xC8,0x20,0x08,0x50,0x09,0x92,0x08,0x0A,0x28,0x06,0x10,0x02,/*"我",39*/  
0x01,0x00,0x01,0x00,0x02,0x80,0x04,0x40,0x08,0x20,0x10,0x18,0x6F,0xEE,0x80,0x04,  
0x00,0x00,0x3F,0xF8,0x02,0x00,0x04,0x20,0x08,0x10,0x11,0xF8,0x3F,0x18,0x10,0x10,/*"会",40*/  
0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0xFF,0xFE,0x01,0x00,0x02,0x80,  
0x02,0x80,0x02,0x40,0x04,0x40,0x04,0x20,0x08,0x10,0x10,0x18,0x20,0x0E,0x40,0x04,/*"大",41*/  
0x01,0x00,0xFF,0xFE,0x01,0x00,0x01,0x00,0x7F,0xFC,0x00,0x00,0x3F,0xF8,0x21,0x08,  
0x21,0x08,0x3F,0xF8,0x20,0x08,0x20,0x00,0x40,0x00,0x40,0x00,0x80,0x00,0x00,0x00,/*"声",42*/  
0x00,0x10,0x00,0x10,0x7C,0x10,0x04,0x10,0x05,0xFE,0x44,0x10,0x24,0x10,0x19,0x10,  
0x08,0x90,0x14,0xD0,0x24,0x90,0x22,0x10,0x42,0x10,0x80,0x10,0x00,0x50,0x00,0x20,/*"对",43*/  
0x00,0x20,0x20,0xA0,0x20,0xA0,0x20,0xA4,0xFC,0xBE,0x27,0xE4,0x24,0xA4,0x44,0xA4,  
0x44,0xA4,0x48,0xB4,0x28,0xA8,0x10,0xA0,0x28,0x82,0x46,0x82,0x84,0x7E,0x00,0x00,/*"她",44*/  
0x42,0x08,0x21,0x88,0x31,0x10,0x23,0xF8,0x02,0x08,0xE2,0x08,0x22,0x08,0x23,0xF8,  
0x22,0xA8,0x20,0xA0,0x20,0xA0,0x29,0x20,0x31,0x22,0x22,0x22,0x04,0x1E,0x08,0x00,/*"说",45*/  
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,  
0x00,0x00,0x30,0x00,0x30,0x00,0x00,0x00,0x30,0x00,0x30,0x00,0x00,0x00,0x00,0x00,/*":",46*/  
0x06,0x40,0x38,0x50,0x08,0x48,0x08,0x48,0x08,0x40,0xFF,0xFE,0x08,0x40,0x08,0x48,  
0x0E,0x28,0x38,0x30,0xC8,0x20,0x08,0x50,0x09,0x92,0x08,0x0A,0x28,0x06,0x10,0x02,/*"我",47*/  
0x00,0xF8,0x3F,0x90,0x12,0x10,0x09,0x20,0x3F,0xFE,0x22,0x02,0x42,0x00,0x3F,0xFC,  
0x04,0x00,0x07,0xF0,0x0C,0x20,0x0B,0x40,0x10,0xC0,0x63,0x30,0x8C,0x0E,0x30,0x04,/*"爱",48*/  
0x09,0x00,0x09,0x80,0x11,0x04,0x13,0xFE,0x22,0x04,0x34,0x48,0x68,0x40,0xA2,0x50,  
0x23,0x48,0x22,0x48,0x24,0x44,0x24,0x46,0x28,0x44,0x21,0x40,0x20,0x80,0x00,0x00,/*"你",49*/  
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,  
0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x00,0x00,0x10,0x00,0x00,0x00,/*"!",50*/  
0x10,0x00,0x10,0x00,0x18,0x00,0x10,0x7E,0xFE,0x42,0x22,0x42,0x22,0x42,0x22,0x42,  
0x22,0x42,0x24,0x42,0x14,0x42,0x08,0x42,0x14,0x7E,0x23,0x42,0x42,0x42,0x80,0x00,/*"如",51*/  
0x00,0x00,0x1F,0xF0,0x11,0x10,0x1F,0xF0,0x11,0x10,0x1F,0xF0,0x01,0x00,0x01,0x00,  
0xFF,0xFE,0x03,0x80,0x05,0x40,0x09,0x30,0x31,0x0E,0xC1,0x04,0x01,0x00,0x01,0x00,/*"果",52*/  
0x04,0x40,0x04,0x40,0x04,0x40,0x7C,0x7E,0x04,0x40,0x04,0x40,0x04,0x40,0x7C,0x7C,  
0x04,0x40,0x04,0x40,0x04,0x40,0xFC,0x7E,0x04,0x40,0x04,0x40,0x04,0x40,0x04,0x40,/*"非",53*/  
0x00,0x00,0xFF,0xFE,0x04,0x40,0x3F,0xF8,0x24,0x48,0x24,0x48,0x3F,0xF8,0x24,0x08,  
0x04,0x00,0xFF,0xFE,0x08,0x10,0x0E,0x20,0x01,0xC0,0x06,0x30,0x18,0x0C,0x60,0x08,/*"要",54*/  
0x08,0x00,0x08,0x00,0x08,0x00,0x7F,0x7C,0x09,0x44,0x09,0x44,0x09,0x44,0x09,0x44,  
0x11,0x44,0x11,0x44,0x11,0x44,0x21,0x44,0x21,0x7C,0x45,0x44,0x82,0x40,0x00,0x00,/*"加",55*/  
0x00,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0xF8,0x01,0x00,  
0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x04,0x7F,0xFE,0x00,0x00,/*"上",56*/  
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x7F,0xFE,  
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"一",57*/  
0x01,0x00,0x01,0x00,0x02,0x80,0x02,0x40,0x04,0x20,0x09,0x18,0x11,0x0E,0x61,0x04,  
0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x00,0x00,/*"个",58*/  
0x22,0x00,0x22,0x7C,0x7F,0x44,0x22,0x44,0x3E,0x44,0x22,0x7C,0x3E,0x44,0x22,0x44,  
0x22,0x44,0xFF,0x7C,0x00,0x44,0x24,0x84,0x22,0x84,0x43,0x14,0x81,0x08,0x00,0x00,/*"期",59*/  
0x00,0x00,0xFB,0xF8,0x92,0x08,0x93,0xF8,0xA2,0x08,0xA2,0x08,0x93,0xF8,0x8A,0x80,  
0x8A,0x48,0xAA,0x50,0x92,0x20,0x82,0x20,0x82,0x10,0x82,0x8E,0x83,0x04,0x82,0x00,/*"限",60*/  
0x10,0x80,0x10,0x80,0x20,0x80,0x7C,0xFC,0x45,0x04,0x45,0x04,0x46,0x04,0x7C,0x84,  
0x44,0x44,0x44,0x64,0x44,0x24,0x44,0x04,0x7C,0x04,0x44,0x28,0x40,0x10,0x00,0x00,/*"的",61*/  
0x40,0x00,0x20,0x1C,0x33,0xE0,0x20,0x20,0x00,0x20,0x07,0xFE,0xF0,0x20,0x10,0x20,  
0x10,0x20,0x11,0xFC,0x11,0x04,0x11,0x04,0x15,0x04,0x19,0xFC,0x11,0x04,0x00,0x00,/*"话",62*/  
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,  
0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x00,0x30,0x00,0x10,0x00,0x20,0x00,0x00,0x00,/*",",63*/  
0x06,0x40,0x38,0x50,0x08,0x48,0x08,0x48,0x08,0x40,0xFF,0xFE,0x08,0x40,0x08,0x48,  
0x0E,0x28,0x38,0x30,0xC8,0x20,0x08,0x50,0x09,0x92,0x08,0x0A,0x28,0x06,0x10,0x02,/*"我",64*/  
0x08,0x20,0x06,0x40,0x01,0x80,0x0E,0x60,0x32,0x10,0xFF,0xFE,0x04,0x80,0x08,0x80,  
0x1F,0xF8,0x28,0x88,0x48,0x88,0x88,0x88,0x08,0x88,0x08,0xB8,0x00,0x90,0x00,0x80,/*"希",65*/  
0x10,0x00,0x08,0xFC,0xFE,0x84,0x20,0xFC,0x20,0x84,0x24,0xFC,0x28,0x84,0x31,0x1C,  
0x00,0x00,0x3F,0xFC,0x01,0x00,0x1F,0xF8,0x01,0x00,0x01,0x00,0x7F,0xFE,0x00,0x00,/*"望",66*/  
0x00,0x00,0x0F,0xF0,0x08,0x10,0x0F,0xF0,0x08,0x10,0x0F,0xF0,0x00,0x00,0xFF,0xFE,  
0x01,0x00,0x09,0x00,0x09,0xF8,0x09,0x00,0x15,0x00,0x23,0x00,0x40,0xFE,0x00,0x00,/*"是",67*/  
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x7F,0xFE,  
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"一",68*/  
0x00,0x00,0x7F,0xFE,0x02,0x00,0x02,0x00,0x02,0x10,0x03,0xF8,0x02,0x10,0x04,0x10,  
0x04,0x10,0x04,0x10,0x08,0x10,0x08,0x10,0x10,0x10,0x20,0xE0,0x40,0x40,0x00,0x00,/*"万",69*/  
0x08,0x00,0x0F,0xFC,0x10,0x80,0x10,0x80,0x20,0x80,0x4F,0xF8,0x88,0x80,0x08,0x80,  
0x08,0x80,0x08,0x80,0xFF,0xFE,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,/*"年",70*/  
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,  
0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x00,0x00,0x10,0x00,0x00,0x00,/*"!",71*/  

};   

const uchar MYNUMBER[]=  
{  

0x00,0x00,0x70,0x88,0x88,0x88,0x88,0x88,0x88,0x70,0x00,0x00,/*"0",0*/  
0x00,0x00,0x20,0x60,0x20,0x20,0x20,0x20,0x20,0x70,0x00,0x00,/*"1",1*/  
0x00,0x00,0x70,0x88,0x88,0x10,0x20,0x40,0x80,0xF8,0x00,0x00,/*"2",2*/  
0x00,0x00,0x70,0x88,0x08,0x30,0x08,0x08,0x88,0x70,0x00,0x00,/*"3",3*/  
0x00,0x00,0x10,0x30,0x50,0x50,0x90,0x78,0x10,0x18,0x00,0x00,/*"4",4*/  
0x00,0x00,0xF8,0x80,0x80,0xF0,0x08,0x08,0x88,0x70,0x00,0x00,/*"5",5*/  
0x00,0x00,0x70,0x90,0x80,0xF0,0x88,0x88,0x88,0x70,0x00,0x00,/*"6",6*/  
0x00,0x00,0xF8,0x90,0x10,0x20,0x20,0x20,0x20,0x20,0x00,0x00,/*"7",7*/  
0x00,0x00,0x70,0x88,0x88,0x70,0x88,0x88,0x88,0x70,0x00,0x00,/*"8",8*/  
0x00,0x00,0x70,0x88,0x88,0x88,0x78,0x08,0x48,0x70,0x00,0x00,/*"9",9*/  
};  

///////////////////LCD的写字测试程序///16×16//////////////////  
//横向点18位,最后两位填0////液晶驱动变态///////////  
void disp_bmpp( const uchar *myziku)   
{   
    uchar x,y;  
    uchar uc_CharCode,uc_BitCnt;   
     
    wr_cmd(0x30);//EXT=0      
     
    wr_cmd(0x75);   //Line address set      
    wr_dat(0x00);   //Start Line      
    wr_dat(0x0F); //End Line      
     
    wr_cmd(0x15);   //Column address set      
    wr_dat(0x00);   //Start Column      
    wr_dat(0x05);   //End Column      
     
    wr_cmd(0X5C);//Write data to DDRAM      

  for(x=0;x<16;x++)  
  {  
    for(y=0;y<2;y++)  
    {  
            uc_CharCode = *myziku++;   
                                                                                         
          for(uc_BitCnt=0;uc_BitCnt<8;uc_BitCnt++)   
              {   
               if((uc_CharCode&0x80) == 0)   
                  wr_dat(0x00);   
                   else   
                   wr_dat(0xFF);   
                 //仅仅点亮panel上面的一个点---需要一个byte      
                uc_CharCode =uc_CharCode <<1;   
               }  
           
    }  
    wr_dat(0x00);  
    wr_dat(0x00);  
  }  
  delayms(1);  
}  


/*******************************************************  
* 名称: LcdSetAddr  
* 功能: 设置数据地址指针(坐标值)。  
* 入口参数: x1            起始横坐标的值 (0-158)  
*           y1      起始纵坐标的值 (0-158)  
* 出口参数: 设置正确返回TRUE,参数超出范围返回FALSE  
*******************************************************/  
void LcdSetAddr16_16(uchar x1, uchar y1,  const uchar *ziku)  
{   
   uchar x,y;  
   uchar uc_CharCode,uc_BitCnt;  
   
   wr_cmd(0x30);    //EXT=0  

   wr_cmd(0x75);                           
   wr_dat(x1);  
   wr_dat(x1+15);  
     
   wr_cmd(0x15);                              
   wr_dat(y1);  
   wr_dat(y1+5);  
     
   wr_cmd(0X5C);                         //Write data to DDRAM  
   for(x=0;x<16;x++)  
   {  
    for(y=0;y<2;y++)  
      {  
          uc_CharCode =  *ziku++;   
                                                                                         
          for(uc_BitCnt=0;uc_BitCnt<8;uc_BitCnt++)   
              {   
               if((uc_CharCode&0x80) == 0)   
                  wr_dat(0x00);   
                   else   
                   wr_dat(0xFF);   
                 //仅仅点亮panel上面的一个点---需要一个byte      
                uc_CharCode =uc_CharCode <<1;   
               }  
           
       }  
    wr_dat(0x00);  
    wr_dat(0x00);  
   }  
    // if(((x1+15)<160) && ((y1+5)<53)) return(TRUE);  
   //  else  return(FALSE);  
}  

void LcdSetAddr12_12(uchar x1, uchar y1,  const uchar *ziku)  
{   
   uchar x;  
   uchar uc_CharCode,uc_BitCnt;  
   wr_cmd(0x30);    //EXT=0  

   wr_cmd(0x75);                           
   wr_dat(x1);  
   wr_dat(x1+11);  
     
   wr_cmd(0x15);                              
   wr_dat(y1);  
   wr_dat(y1+2);  
     
   wr_cmd(0X5C);                         //Write data to DDRAM  
   for(x=0;x<12;x++)  
   {  
     
          uc_CharCode = *ziku++;   
                                                                                         
          for(uc_BitCnt=0;uc_BitCnt<8;uc_BitCnt++)   
              {   
               if((uc_CharCode&0x80) == 0)   
                  wr_dat(0x00);   
                   else   
                   wr_dat(0xFF);   
                 //仅仅点亮panel上面的一个点---需要一个byte      
                uc_CharCode =uc_CharCode <<1;   
               }  
    wr_dat(0x00);  
   }  
    // if(((x1+15)<160) && ((y1+5)<53)) return(TRUE);  
   //  else  return(FALSE);  
}  

//Reset Delay         
void delay()   
{   
    uchar uc_dlay1,uc_dlay2;   
    for (uc_dlay1=0; uc_dlay1<250; uc_dlay1++);   
        for (uc_dlay2=0; uc_dlay2<20; uc_dlay2++);   
}   
     
//Delay Times(s Level)         
void delayms()   
{   
    uint ui_dlay1,ui_dlay2;   
    ui_dlay2 = DELAYMS;   
    while (ui_dlay2-- >0)   
    {   
        for (ui_dlay1=0; ui_dlay1<500; ui_dlay1++);   
        for (ui_dlay1=0; ui_dlay1<500; ui_dlay1++);   
    }   
}   

void delay10ms(int count)   //===延迟===  
{  
unsigned int i,j,k;  
for (i=0; i<count; i++);  
  for(j=0; j<10; j++);  
    for(k=0; k<120; k++);  
}  

//Write Instruction Code         
void wr_cmd(uchar cmd)   
{   
    LCD_RS0;   
     
    LCD_WR1;   
     
    LCD_RD1;   
     
    LCD_CS0;   
     
    DataPort = cmd;   
     
    LCD_WR0;   
     
    LCD_WR1;   
     
    LCD_CS1;   
}   
     
//Write Display RAM Data      
void wr_dat(uchar dat)   
{   
     
    LCD_RS1;   
     
    LCD_WR1;   
     
    LCD_RD1;   
     
    LCD_CS0;   
     
    DataPort = dat;   
     
    LCD_WR0;   
     
    LCD_WR1;   
     
    LCD_CS1;   
     
}   

void InitSys()  
{  
   unsigned int iq0;                   //--- 使用XT2振荡器 ---  
   BCSCTL1&=~XT2OFF;                   //=== 打开XT2振荡器 ===  
   do  
   {  
   IFG1 &= ~OFIFG;                     //=== 清除振荡器失效标志 ===  
   for (iq0 = 0xFF; iq0 > 0; iq0--);   //=== 延时,等待XT2起振 ===  
  }  
  while ((IFG1 & OFIFG) != 0);         //=== 判断XT2是否起振 ===  
  BCSCTL2 =SELM_2+SELS;                //=== 选择MCLK、SMCLK为XT2 ===  
//--- 以下填充用户代码,对各种模块、中断、外围设备等进行初始化 ---  
  P1SEL  = 0x00;                      // 设置P1口为IO口  
  P1DIR  = 0xFF;                      // 设置P1口为output  
  P4DIR  = 0xFF;                      //===Set P4.0 to output direction===  
      
  //  _EINT();                            //=== 打开全局中断控制,若不需要打开,可以屏蔽本句 ===  
}  

/*******************************************************************************   
*   
*   函数名称    :   ST7529Ini(void)   
*   功能描述    :   初始化控制器   
*   函数说明    :   
*   调用函数    :   无   
*   全局变量    :   无   
*   输入参数    :   无   
*   返回值     :   无   
*   设计者     :   Joshua Chiang   
*   修改者     :   --   
*   版本号     :   1.0   
*   
*******************************************************************************/         
void ST7529Ini(void)   
{   
    wr_cmd(0X30);   //EXT=0      
    wr_cmd(0X94);   //SLEEP OUT      
    wr_cmd(0XD1);   //OSC ON      
     

    wr_cmd(0x20);   //POWER CONTROL SET      
    wr_dat(0X0B);   //BOOSTER ON      
     
    wr_cmd(0x81);   //ELECTRONIC CONTROL      
    wr_dat(0X30);   //DL    30  
    wr_dat(0X04);   //DH      
     
    wr_cmd(0xCA);   //DISPLAY CONTROL      
    wr_dat(0X04);   //CLD=0,NOT DIVIDE      
    wr_dat(0X27);   //1/160 DUTY 39      
    wr_dat(0X00);   //FR      
     
    wr_cmd(0xA7);   //Reverse display  ~A6?   
     
    wr_cmd(0xBB);   //COM SCAN DIRECTION      
    wr_dat(0X02);   //C79->C0,C80->C159      
     
    wr_cmd(0xBC);   //Data Scan Direction      
    wr_dat(0X01);   
    wr_dat(0X00);   //CLR=0      
    wr_dat(0X02);   //32 Gray-scale 3byte 3pixel mode      
     
    wr_cmd(0x75);   //Line address set      
    wr_dat(0x00);   //Start Line      
    wr_dat(0x9F);   //End Line      
     
    wr_cmd(0x15);   //Column address set      
    wr_dat(0x00);   //Start Column      
    wr_dat(0x35);   //End Column      
     
    wr_cmd(0x31);   //ext=1      
    wr_cmd(0x32);   //Analog circuit set      
    wr_dat(0X07);   //FR=12.7KHZ      
    wr_dat(0X02);   //Booster FR=6KHZ      
    wr_dat(0X03);   //1/11bias   01 调对比度  
     
    wr_cmd(0x34);   //Dithering off      
    wr_cmd(0x30);   //EXT=0      
    wr_cmd(0xAF);   //DISP ON      
        }   
     
//Write Data To DDRAM         
void disp_dots(uchar dat1,uchar dat2)   
{   
    uchar uc_RowCnt,uc_ColCnt;   
    wr_cmd(0x30);//EXT=0      
     
    wr_cmd(0x75);   //Line address set      
    wr_dat(0x00);   //Start Line      
    wr_dat(0x9F);   //End Line      
     
    wr_cmd(0x15);   //Column address set      
    wr_dat(0x00);   //Start Column      
    wr_dat(0x35);   //End Column      
     
    wr_cmd(0X5C);//Write data to DDRAM      
     
    for (uc_RowCnt=0;uc_RowCnt<80;uc_RowCnt++)   
    {   
        for (uc_ColCnt=0;uc_ColCnt<54;uc_ColCnt++)   
        {   
                wr_dat(dat1);   
                wr_dat(dat1);   
                wr_dat(dat1);   
        };   
     
        for (uc_ColCnt=0;uc_ColCnt<54;uc_ColCnt++)   
        {   
                wr_dat(dat2);   
                wr_dat(dat2);   
                wr_dat(dat2);   
        };   
    };   
     
    delayms();   
}  

void dsiplay16_16(uchar x,uchar y)  
{  
   const uchar *z;  
   z=HTDISPLAY;  
   for(;x<145;x+=16)  
   {  
     for(;y<50;y+=6)  
    {  
      LcdSetAddr16_16(x,  y, z);  
      z+=32;  
     }  
     y=0;  
   }  
}  
/*  
功能:设置液晶开关  
参数:无  
返回:无  
*/  
void HDT_DisplayOn()  
{  
    wr_cmd(0xaf);  
    //wr_cmd(0x94);  
    led1_on();  
    lcm_on;  
}  

void HDT_DisplayOff()  
{  
    wr_cmd(0xae);  
    //wr_cmd(0x95);  
    led1_off();  
    lcm_off;  
}  
   
void main()   
{      
    WDTCTL  = WDTPW + WDTHOLD;   //=== Stop watchdog timer ===  
    InitSys();                   //=== 初始化 ===  
    LCD_RST0;   
    delay();   
    delay();   
     
    LCD_RST1;   
    delay();   
    delay();   
     
    ST7529Ini();   
     disp_dots(0x00,0x00); //Clear Screen
    while (1)   
    {    //disp_dots(0x00,0x00); //Clear Screen
      // disp_dots(0xFF,0xFF); //All Dots Display      
     
        //disp_dots(0xFF,0x00); //Seperate Rows I      
           
       HDT_DisplayOff();  
        HDT_DisplayOn();  
        //disp_dots(0x00,0xFF); //Seperate Rows II      
     
       // disp_dots(0x00,0x00); //Clear Screen   
      dsiplay16_16(0,0);  
         
      //  LcdSetAddr12_12(0, 6,HTDISPLAY);
        
       // disp_bmpp(&HTDISPLAY[32]);  
         
       // LcdSetAddr16_16(16, 0, HTDISPLAY );  
        //LcdSetAddr12_12(0, 18,MYNUMBER);  
    }   
     
}  

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

阿莫论坛20周年了!感谢大家的支持与爱护!!

月入3000的是反美的。收入3万是亲美的。收入30万是移民美国的。收入300万是取得绿卡后回国,教唆那些3000来反美的!

出0入0汤圆

发表于 2015-9-25 09:24:09 | 显示全部楼层
底下怎么是乱码?
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-24 11:58

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表