Thread 中讨论的其他器件:controlSUITE
工具/软件:Code Composer Studio
尊敬的所有人:
我正在尝试连接基于 ST7567的图形 LCD-tms320f28377s e2e.ti.com/.../TG12864H3_2D00_03A-EN_5F00_V1.1.pdf。 我将此 LCD 与带有 PRallel 连接的 TMS320相集成、它工作正常。 但是、当我尝试使用 SPI 接口(使用软件 SPI) 时、显示屏不显示任何内容。 我用 MOSI、SCLK、CS、RS (A0)在四线制模式下连接 LCD。 如数据表中所示(请参阅附件)。 我的代码如下所示。 按照 st7567控制器数据表中的说明、我在 D7上连接 MOSI、在 d6上连接 SCLK。 其他连接也正确。 我想在 LCD 的初始化过程中会出现问题
const unsigned char A12[95][6]=
{
{0x0、0x0、0x0、0x0、0x0、0x0}、 //
{0x0、0x0、0x4F、0x0、0x0、0x0}、 //!
{0x0、0x7、0x0、0x7、0x0、0x0}、 //"
{0x14、0x7F、0x14、0x7F、0x14、0x0}、 //
{0x24、0x2A、0x7F、0x2A、0x12、0x0}、 //$
{0x23、0x13、0x8、0x64、0x62、0x0}、 //%
{0x36、0x49、0x55、0x22、0x50、0x0}、 //&
{0x0、0x5、0x3、0x0、0x0、0x0}、 //
{0x0、0x1C、0x22、0x41、0x0、0x0}、 //(
{0x0、0x41、0x22、0x1C、0x0、0x0}、 //)
{0x14、0x8、0x3E、0x8、0x14、0x0}、 //*
{0x8、0x8、0x3E、0x8、0x8、0x0}、 //+
{0x0、0x50、0x30、0x0、0x0、0x0}、 //、
{0x8、0x8、0x8、0x8、0x8、0x0}、 //-
{0x0、0x60、0x60、0x0、0x0、0x0}、 //。
{0x20、0x10、0x8、0x4、0x2、0x0}、 ///
{0x3E、0x51、0x49、0x45、0x3E、0x0}、 //0
{0x0、0x42、0x7F、0x40、0x0、0x0}、 // 1.
{0x42、0x61、0x51、0x49、0x46、0x0}、 /2
{0x21、0x41、0x45、0x4B、0x31、0x0}、 // 3.
{0x18、0x14、0x12、0x7F、0x10、0x0}、 //4
{0x27、0x45、0x45、0x45、0x39、0x0}、 //5
{0x3C、0x4A、0x49、0x49、0x30、0x0}、 //6
{0x1、0x71、0x9、0x5、0x3、0x0}、 //7
{0x36、0x49、0x49、0x49、0x36、0x0}、 //8
{0x6、0x49、0x49、0x29、0x1E、0x0}、 //9
{0x0、0x36、0x36、0x0、0x0、0x0}、 //:
{0x0、0x56、0x36、0x0、0x0、0x0}、 //;
{0x8、0x14、0x22、0x41、0x0、0x0}、 //<
{0x14、0x14、0x14、0x14、0x14、0x0}、 //=
{0x0、0x41、0x22、0x14、0x8、0x0}、 //>
{0x2、0x1、0x51、0x9、0x6、0x0}、 //?
{0x32、0x49、0x79、0x41、0x3E、0x0}、 //@
{0x7E、0x11、0x11、0x11、0x7E、0x0}、 //A
{0x7F、0x49、0x49、0x49、0x36、0x0}、 //B
{0x3E、0x41、0x41、0x41、0x22、0x0}、 /C
{0x7F、0x41、0x41、0x22、0x1C、0x0}、 //D
{0x7F、0x49、0x49、0x49、0x41、0x0}、 //E
{0x7F、0x9、0x9、0x9、0x1、0x0}、 //F
{0x3E、0x41、0x49、0x49、0x7A、0x0}、 //G
{0x7F、0x8、0x8、0x8、0x7F、0x0}、 //H
{0x0、0x41、0x7F、0x41、0x0、0x0}、 //I
{0x20、0x40、0x41、0x3F、0x1、0x0}、 //J
{0x7F、0x8、0x14、0x22、0x41、0x0}、 //K
{0x7F、0x40、0x40、0x40、0x40、0x0}、 //L
{0x7F、0x2、0xC、0x2、0x7F、0x0}、 //M
{0x7F、0x4、0x8、0x10、0x7F、0x0}、 //N
{0x3E、0x41、0x41、0x41、0x3E、0x0}、 //操作
{0x7F、0x9、0x9、0x9、0x6、0x0}、 //P
{0x3E、0x41、0x51、0x21、0x5E、0x0}、 //Q
{0x7F、0x9、0x19、0x29、0x46、0x0}、 //R
{0x46、0x49、0x49、0x49、0x31、0x0}、 //S
{0x1、0x1、0x7F、0x1、0x1、0x0}、 //T
{0x3F、0x40、0x40、0x40、0x3F、0x0}、 //U
{0x1F、0x20、0x40、0x20、0x1F、0x0}、 //V
{0x3F、0x40、0x38、0x40、0x3F、0x0}、 //W
{0x63、0x14、0x8、0x14、0x63、0x0}、 //X
{0x7、0x8、0x70、0x8、0x7、0x0}、 //Y
{0x61、0x51、0x49、0x45、0x43、0x0}、 //Z
{0x0、0x7F、0x41、0x41、0x0、0x0}、 //
{0x15、0x16、0x7C、0x16、0x15、0x0}、 //
{0x0、0x41、0x41、0x7F、0x0、0x0}、 //
{0x4、0x2、0x1、0x2、0x4、0x0}、 //^
{0x40、0x40、0x40、0x40、0x40、0x0}、 //
{0x0、0x1、0x2、0x4、0x0、0x0}、 //
{0x20、0x54、0x54、0x54、0x78、0x0}、 //A
{0x7F、0x48、0x44、0x44、0x38、0x0}、 //b
{0x38、0x44、0x44、0x44、0x20、0x0}、 /c
{0x38、0x44、0x44、0x48、0x7F、0x0}、 //d
{0x38、0x54、0x54、0x54、0x18、0x0}、 //e
{0x8、0x7E、0x9、0x1、0x2、0x0}、 //f
{0xC、0x52、0x52、0x52、0x3E、0x0}、 //g
{0x7F、0x8、0x4、0x4、0x78、0x0}、 //h
{0x0、0x44、0x7D、0x40、0x0、0x0}、 //I
{0x20、0x40、0x44、0x3D、0x0、0x0}、 // j
{0x7F、0x10、0x28、0x44、0x0、0x0}、 //k
{0x0、0x41、0x7F、0x40、0x0、0x0}、 //l
{0x7C、0x4、0x18、0x4、0x78、0x0}、 //m
{0x7C、0x8、0x4、0x4、0x78、0x0}、 // n
{0x30、0x48、0x48、0x48、0x30、0x0}、 // o
{0x7C、0x14、0x14、0x14、0x8、0x0}、 //p
{0x8、0x14、0x14、0x18、0x7C、0x0}、 // q
{0x7C、0x8、0x4、0x4、0x8、0x0}、 //r
{0x48、0x54、0x54、0x54、0x20、0x0}、 /s
{0x4、0x3F、0x44、0x40、0x20、0x0}、 //t
{0x3C、0x40、0x40、0x20、0x7C、0x0}、 //u
{0x1C、0x20、0x40、0x20、0x1C、0x0}、 // v
{0x3C、0x40、0x30、0x40、0x3C、0x0}、 // w
{0x44、0x28、0x10、0x28、0x44、0x0}、 // x
{0xC、0x50、0x50、0x50、0x3C、0x0}、 //y
{0x44、0x64、0x54、0x4C、0x44、0x0}、 //z
{0x0、0x8、0x36、0x41、0x0、0x0}、 //{
{0x0、0x0、0x7F、0x0、0x0、0x0}、 //|
{0x0、0x41、0x36、0x8、0x0、0x0} //}
};
///----------------------------------
//由 LCD Assistant 生成的文件
// en.radzio.dxp.pl/.../
///----------------------------------
const unsigned char butter[128][8]=
{
0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、
0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、
0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、
0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、
0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、
0x00、0x00、0x00、0x01、0xE0、0x00、0x00、0x00、
0x00、0x00、0x00、0x02、0x10、0x00、0x00、0x00、
0x00、0x00、0x00、0x06、0x10、0x00、0x00、0x00、
0x00、0x00、0x00、0x04、0x10、0x00、0x00、0x00、
0x00、0x00、0x00、0x04、0x10、0x00、0x00、0x00、
0x00、0x00、0x00、0x08、0x10、0x00、0x00、0x00、
0x00、0x00、0x00、0x08、0x10、0x00、0x00、0x00、
0x00、0x00、0x00、0x09、0xF8、0x00、0x00、0x00、
0x00、0x00、0x00、0x0B、0xF8、0x00、0x00、0x00、
0x00、0x00、0x00、0x0A、0x24、0x00、0x00、0x00、
0x00、0x00、0x00、0x08、0x24、0x00、0x00、0x00、
0x00、0x00、0x00、0x04、0x24、0x00、0x00、0x00、
0x00、0x00、0x00、0x04、0x64、0x00、0x00、0x00、
0x00、0x00、0x00、0x08、0x44、0x00、0x00、0x00、
0x00、0x00、0x00、0x08、0x44、0x00、0x00、0x00、
0x00、0x00、0x00、0x00、0x88、0x00、0x00、0x00、0x00、
0x00、0x00、0x00、0x10、0x88、0x00、0x00、0x00、
0x00、0x00、0x00、0x11、0x18、0x00、0x00、0x00、
0x00、0x00、0x00、0x12、0x10、0x00、0x00、0x00、
0x00、0x00、0x00、0x02、0x20、0x00、0x00、0x00、
0x00、0x00、0x00、0x04、0x40、0x00、0x00、0x00、
0x00、0x00、0x00、0x0C、0x80、0x00、0x00、0x00、
0x00、0x00、0x01、0xFB、0x80、0x00、0x00、0x00、
0x00、0x00、0x03、0x36、0x00、0x00、0x00、0x00、
0x00、0x00、0x02、0x9C、0x00、0x1F、0xF8、0x00、
0x00、0x00、0x04、0x30、0x00、0xFF、0xFE、0x00、
0x00、0x00、0x04、0xD0、0x03、0xFF、0xC7、0x80、
0x00、0x00、0x05、0xE0、0x0F、0xF0、0xFD、0xC0、
0x00、0x00、0x07、0x30、0x3E、0x38、0x7F、0xE0、
0x00、0x00、0x07、0x10、0x7E、0x1C、0x3F、0xF0、
0x00、0x00、0x07、0x10、0xFF、0x8F、0xFD、0xf8、
0x00、0x00、0x07、0x21、0xFF、0x87、0x30、0x00、
0x00、0x00、0x0D、0xE7、0xC3、0xEF、0x60、0x00、
0x00、0x00、0x08、0x4F、0x03、0xDC、0xC0、0x00、
0x00、0x00、0x08、0x1C、0x03、0x38、0xC0、0x00、
0x00、0x00、0x08、0x78、0x06、0x21、0x80、0x00、
0x00、0x00、0x18、0x7F、0xFE、0x41、0x00、0x00、
0x00、0x00、0x18、0x7F、0xFE、0x83、0x00、0x00、
0x00、0x00、0x18、0x7F、0xFF、0xFE、0x00、0x00、
0x00、0x00、0x1F、0xFF、0xFF、0xFE、0x00、0x00、
0x00、0x00、0x27、0xB8、0xF1、0xFE、0x00、0x00、
0x00、0x00、0x20、0xF0、0x39、0xFC、0x00、0x00、
0x00、0x00、0x60、0xF8、0x9C、0xFE、0x00、0x00、
0x00、0x00、0x61、0xFF、0x3C、0x6f、0x00、0x00、
0x00、0x00、0x61、0x3E、0x7C、0x77、0x80、0x00、
0x00、0x00、0x61、0x00、0xFC、0x33、0xC0、0x00、
0x00、0x00、0xE3、0x41、0xFE、0x30、0xE0、0x00、
0x00、0x01、0x9E、0x3F、0xE7、0x18、0xF0、0x00、
0x00、0x01、0x9E、0x0F、0x81、0xD9、0xF8、0x00、
0x00、0x07、0x04、0x00、0x00、0x0D、0x18、0x00、
0x00、0x7F、0x0C、0x70、0x1F、0x8C、0x4C、0x00、
0x00、0x7E、0x0C、0x38、0x3F、0xF4、0x26、0x00、
0x00、0x7C、0x1D、0x0C、0x44、0xFE、0x96、0x00、
0x00、0x40、0x35、0xCE、0x04、0xBE、0x6B、0x00、
0x00、0x70、0x37、0xE7、0x06、0x4E、0x25、0x80、
0x00、0x3F、0xF3、0xF3、0x82、0x47、0x2C、0x80、
0x00、0x1F、0xF3、0x9B、0x82、0x21、0x3F、0xC0、
0x00、0x00、0xFB、0x8D、0xC1、0x20、0x7F、0xC0、
0x00、0x00、0xF9、0x85、0xFC、0x10、0xFF、0xE0、
0x00、0x01、0xF9、0xC0、0xFE、0x01、0xFF、0xE0、
0x00、0x01、0xF5、0xC2、0xF1、0x73、0xE0、0xF0、
0x00、0x01、0x75、0xC0、0x70、0x3F、0x80、0x70、
0x00、0x01、0x75、0xE0、0x70、0x1F、0x00、0x30、
0x00、0x03、0x7D、0xF0、0x70、0x1F、0x00、0x08、
0x00、0x03、0x7C、0xFD、0xE0、0x3E、0x00、0x00、
0x00、0x02、0x7C、0xFF、0xC0、0xFC、0x00、0x00、
0x00、0x06、0xFC、0xEF、0x83、0xF8、0x00、0x00、
0x00、0x07、0x78、0x4F、0xFF、0xF0、0x00、0x00、
0x00、0x07、0x78、0x47、0xFF、0xE0、0x00、0x00、
0x00、0x0E、0xFC、0x15、0xFF、0x80、0x00、0x00、
0x00、0x0E、0x3E、0x54、0x3E、0x00、0x00、0x00、
0x00、0x0A、0x3F、0x94、0x00、0x00、0x00、0x00、
0x00、0x1E、0x33、0x16、0x00、0x00、0x00、0x00、
0x00、0x1F、0xA0、0x16、0x00、0x00、0x00、0x00、
0x00、0x38、0x64、0x1E、0x00、0x00、0x00、0x00、
0x00、0x37、0xE0、0x1E、0x00、0x00、0x00、
0x00、0x7F、0xEC、0x1E、0x00、0x00、0x00、0x00、
0x00、0x7F、0xFC、0x1E、0x00、0x00、0x00、0x00、
0x00、0xE0、0x7C、0x1E、0x00、0x00、0x00、0x00、
0x00、0xC0、0x7D、0x3C、0x00、0x00、0x00、0x00、
0x01、0x80、0x67、0xF4、0x00、0x00、0x00、0x00、
0x03、0x80、0xC6、0x44、0x00、0x00、0x00、0x00、
0x07、0x00、0xC3、0x0C、0x00、0x00、0x00、0x00、
0x0E、0x00、0xC1、0xAC、0x00、0x00、0x00、0x00、
0x1A、0x00、0x80、0x08、0x00、0x00、0x00、0x00、0x00、
0x1C、0x01、0x9C、0xD8、0x00、0x00、0x00、0x00、
0x34、0x01、0xF3、0x98、0x00、0x00、0x00、0x00、
0x3C、0x03、0xE7、0x30、0x00、0x00、0x00、0x00、
0x68、0x03、0xCE、0x70、0x00、0x00、0x00、0x00、
0x58、0x07、0x8F、0xE0、0x00、0x00、0x00、0x00、
0x70、0x07、0x0F、0xE0、0x00、0x00、0x00、0x00、
0x30、0x0F、0xFF、0xC0、0x00、0x00、0x00、0x00、
0x00、0x0F、0xFF、0x80、0x00、0x00、0x00、0x00、0x00、
0x00、0x1F、0xFF、0x00、0x00、0x00、0x00、0x00、0x00、
0x00、0x1F、0x9C、0x00、0x00、0x00、0x00、0x00、0x00、
0x00、0x3C、0x00、0x00、0x00、0x00、0x00、0x00、0x00、
0x00、0x38、0x00、0x00、0x00、0x00、0x00、0x00、
0x00、0x70、0x00、0x00、0x00、0x00、0x00、0x00、
0x00、0xF0、0x00、0x00、0x00、0x00、0x00、0x00、0x00、
0x00、0xF0、0x00、0x00、0x00、0x00、0x00、0x00、0x00、
0x01、0xE0、0x00、0x00、0x00、0x00、0x00、0x00、0x00、
0x03、0xA0、0x00、0x00、0x00、0x00、0x00、0x00、0x00、
0x03、0x60、0x00、0x00、0x00、0x00、0x00、0x00、
0x03、0xE0、0x00、0x00、0x00、0x00、0x00、0x00、0x00、
0x07、0x40、0x00、0x00、0x00、0x00、0x00、0x00、
0x07、0xC0、0x00、0x00、0x00、0x00、0x00、0x00、0x00、
0x05、0xC0、0x00、0x00、0x00、0x00、0x00、0x00、0x00、
0x04、0xC0、0x00、0x00、0x00、0x00、0x00、0x00、0x00、
0x07、0x80、0x00、0x00、0x00、0x00、0x00、0x00、
0x07、0x80、0x00、0x00、0x00、0x00、0x00、0x00、
0x07、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、
0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、
0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、
0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、
0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、
0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、
0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、
0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、
0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、
0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、
0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、
0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、
0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、
};
void LCD_DATA_OUT (无符号字符数据)
{
SpiaRegs.SPITXBUF=(DATA<8);//发送数据
美国(500);
返回;
}
void lcd_write_cmd (unsigned char cmd)
{
LCD_RS_L 美国(50);
LCD_CS_L 美国(50);
//lcd_rw_L 美国(50);
SOFT_SPI_DATA (cmd); US (50);
//lcd_data_out (cmd); us (500);
//lcd_rw_H; 美国(50);
LCD_CS_H; 美国(50);
//LCD_Rs_H 美国(500);
返回;
}
void lcd_write_data (无符号字符数据)
{
LCD_RS_H 美国(50);
LCD_CS_L 美国(50);
//lcd_rw_L 美国(50);
SOFT_SPI_DATA (DATA); US (50);
//lcd_data_out (data); us (500);
//lcd_rw_H; 美国(50);
LCD_CS_H; 美国(50);
//LCD_Rs_L; 美国(500);
返回;
}
void LCD_init (void)
{
// C86_H; us (50); //启用 SPI 模式
// LCD_RW_H 美国(200);
//LCD_EN; US (200);
LCD_RST_H; ms (20); //设置 RST
LCD_RST_L; ms (50);ms (50);ms (50)
LCD_RST_H; ms (20); //设置 RST
LCD_RS_L us (50);
//LCD_CS_L; US (50);
/*
LCD_WRITE_CMD (0xA0);// ADC 选择
LCD_WRITE_CMD (0xA2);//设置 BIAS=1/9
LCD_WRITE_CMD (0xCF);// COM 扫描方向(C63-C0)
LCD_WRITE_CMD (0x2C);//打开 CONTROL1 BOOST
LCD_WRITE_CMD (0x2E);// 110上的电源控制2稳压器
LCD_WRITE_CMD (0x2F);//电源控制3 后继
LCD_WRITE_CMD (0x26);//稳压器 RESISOR 选择 R2 R1 R0
LCD_WRITE_CMD (0x81);//设置基准电压模式//????
LCD_WRITE_CMD (0x17);//设置基准电压寄存器 C5 C4 C3 C2 C1 C0:010111 A=17H
LCD_WRITE_CMD (0xA4);//显示 关闭
//LCD_WRITE_CMD (0xA7);//正常显示
LCD_WRITE_CMD (0xA6);//正常显示
LCD_WRITE_CMD (0xB0);//第一页
LCD_WRITE_CMD (0x40);//初始起始行
LCD_WRITE_CMD (0x10);//设置列 ADDR (H)
LCD_WRITE_CMD (0x00);//设置列 ADDR (L)
LCD_WRITE_CMD (0xAF);//显示 打开
*
/* LCD_WRITE_CMD (0xA0); // ADC 选择
LCD_WRITE_CMD (0xA2); //设置 BIAS=1/9、请勿使用1/7
LCD_WRITE_CMD (0xCF); // COM 扫描方向(C63-C0)
LCD_WRITE_CMD (0x2C); //打开 CONTROL1 BOOST
LCD_WRITE_CMD (0x2E); // 110上的电源控制2稳压器
LCD_WRITE_CMD (0x2F); //电源控制3 后继
LCD_WRITE_CMD (0x25); //稳压器 RESISOR 选择 R2 R1 R025 // 25
LCD_WRITE_CMD (bbf); //设置基准电压模式//????用于 LCD、EV 电压的合同调整
LCD_WRITE_CMD (0x07); //设置基准电压模式//?????、用于 LCD、EV 电压的合同调整
LCD_WRITE_CMD (0x17); //设置基准电压寄存器 C5 C4 C3 C2 C1 C0:010111 A=17H
LCD_WRITE_CMD (0xA4); //显示 关闭
LCD_WRITE_CMD (0xA6); //正常显示
LCD_WRITE_CMD (0xB0); //第一页
LCD_WRITE_CMD (0x40); //初始起始行
LCD_WRITE_CMD (0x10); //设置列 ADDR (H)
LCD_WRITE_CMD (0x00); //设置列 ADDR (L)
LCD_WRITE_CMD (0xAF); //显示 打开
*
LCD_WRITE_CMD (0xE2); // ADC 选择
LCD_WRITE_CMD (0xA3); //设置 BIAS=1/9、请勿使用1/7
LCD_WRITE_CMD (0xAF); // COM 扫描方向(C63-C0)
LCD_WRITE_CMD (0xC8);
LCD_WRITE_CMD (0x22);
LCD_WRITE_CMD (0x2C); //打开 CONTROL1 BOOST
LCD_WRITE_CMD (0x2E); // 110上的电源控制2稳压器
LCD_WRITE_CMD (0x2F); //电源控制3 后继
LCD_WRITE_CMD (0x25); //稳压器 RESISOR 选择 R2 R1 R025 // 25
LCD_WRITE_CMD (bbf); //设置基准电压模式//????用于 LCD、EV 电压的合同调整
LCD_WRITE_CMD (0x07); //设置基准电压模式//?????、用于 LCD、EV 电压的合同调整
LCD_WRITE_CMD (0x17); //设置基准电压寄存器 C5 C4 C3 C2 C1 C0:010111 A=17H
LCD_WRITE_CMD (0xA4); //显示 关闭
LCD_WRITE_CMD (0xA6); //正常显示
LCD_WRITE_CMD (0xB0); //第一页
LCD_WRITE_CMD (0x40); //初始起始行
LCD_WRITE_CMD (0x10); //设置列 ADDR (H)
LCD_WRITE_CMD (0x00); //设置列 ADDR (L)
LCD_WRITE_CMD (0xAF); //显示 于*/
/*
LCD_WRITE_CMD (0xA2);//设置 BIAS=1/9
LCD_WRITE_CMD (0xCF);// COM 扫描方向(C63-C0)
LCD_WRITE_CMD (0x2C);//打开 CONTROL1 BOOST
LCD_WRITE_CMD (0x2E);// 110上的电源控制2稳压器
LCD_WRITE_CMD (0x2F);//电源控制3 后继
LCD_WRITE_CMD (0x25);//稳压器 RESISOR 选择 R2 R1 R0
LCD_WRITE_CMD (0x81);//设置基准电压模式//????
LCD_WRITE_CMD (0x17);//设置基准电压寄存器 C5 C4 C3 C2 C1 C0:010111 A=17H
LCD_WRITE_CMD (0xA4);//显示 关闭
//LCD_WRITE_CMD (0xA7);//正常显示
LCD_WRITE_CMD (0xA6);//正常显示
LCD_WRITE_CMD (0xB0);//第一页
LCD_WRITE_CMD (0x40);//初始起始行
LCD_WRITE_CMD (0x10);//设置列 ADDR (H)
LCD_WRITE_CMD (0x00);//设置列 ADDR (L)
LCD_WRITE_CMD (0xAF);//显示 打开
*
返回;
}
void LCD_on (void)
{
LCD_WRITE_CMD (0xAE);
返回;
}
void LCD_off (void)
{
LCD_WRITE_CMD (0xAF);
返回;
}
void all_pixel_on1 (void)
{
LCD_WRITE_CMD (0xA5);
返回;
}
void all_pixel_off1 (void)
{
LCD_WRITE_CMD (0xA4);
返回;
}
void goto_Row1 (unsigned int y)
{
unsigned char 模式;
pattern = 0xB0 |(y 和0xBF);//将行地址放在数据端口集命令上
LCD_WRITE_CMD (图形);
返回;;
}
void goto_col1 (无符号 int x)
{
unsigned int 模式;
pattern=((0xF0&x)>>4)|0x10;
LCD_WRITE_CMD (图形); //设置高字节列命令
pattern=((0x0F&x))|0x00;
LCD_WRITE_CMD (图形); //设置低字节列命令;
返回;
}
void goto_xy1 (unsigned int x、unsigned int y)
{
goto_col1 (x);
美国(10);
goto_Row1 (y);
美国(10);
返回;
}
void glcd_write1 (无符号字符 b)
{
LCD_WRITE_DATA (b); //将数据放在数据端口上
美国(10);
}
void LCD_clear (void)(空)
{
unsigned char i = 0、j = 0;
LCD_SET_PAGE (PAGE1、0); //初始页、col
对于(I = 0;I < 8;I ++)
{
对于(j = 0;j < 128;j ++)
LCD_WRITE_DATA (0x00);
LCD_SET_PAGE (Page1 + I + 1、0); //递增页面
}
LCD_SET_PAGE (PAGE1、0); //初始页、col
}
void lcd_set_page (unsigned char page、unsigned char col)
{
unsigned char msb、lsb;
MSB = (((col & 0xF0)>> 4)| 0x10);
LSB = (Col & 0x0F);
LCD_WRITE_CMD (PAGE);
LCD_WRITE_CMD (MSB);
LCD_WRITE_CMD (lsb);
}
空 Display_Page1 (空)
{
//co/const unsigned char * msg1 ={" 嗨!!!! "};
const unsigned char * msg1 ={"123456789101112131411819"};
PAGE = Page1;
COL = COL1;
LCD_SET_PAGE (PAGE、COL); //初始页、col
while (* msg1!='\0')
{
lcd_print_font1 (* msg1);
msg1++;
}
}
空 Display_Page2 (空)
{
const unsigned char * msg2 ={" Shakti pump "};
PAGE = Page2;
COL = COL1;
LCD_SET_PAGE (PAGE、COL); //初始页、col
while (* msg2!='\0')
{
lcd_print_font1 (* msg2);
msg2++;
}
}
空 Display_Page3 (空)
{
const unsigned char * msg3 = {" PUMING life "};
PAGE = Page3;
COL = COL1;
LCD_SET_PAGE (PAGE、COL); //初始页、col
while (* msg3!='\0')
{
lcd_print_font1 (* msg3);
msg3++;
}
}
空 Display_Page4 (空)
{
const unsigned char * msg4 = {" Indore "};
page = page4;
COL = COL1;
LCD_SET_PAGE (PAGE、COL); //初始页、col
while (* msg4!='\0')
{
lcd_print_font1 (* msg4);
msg4++;
}
}
空 Display_Page5 (空)
{
const unsigned char * msg5 = {"};
page = page5;
COL = COL1;
LCD_SET_PAGE (PAGE、COL); //初始页、col
while (* msg5!='\0')
{
lcd_print_font1 (* msg5);
msg5++;
}
返回;
}
空 Display_Page6 (空)
{
const unsigned char * msg6 = {" all the best "};
page = page6;
COL = COL1;
LCD_SET_PAGE (PAGE、COL); //初始页、col
while (* msg6!='\0')
{
lcd_print_font1 (* msg6);
msg6++;
}
返回;
}
空 Display_Page7 (空)
{
const unsigned char * msg7 = {" 、谢谢 您"};
page = page7;
COL = COL1;
LCD_SET_PAGE (PAGE、COL); //初始页、col
while (* msg7!='\0')
{
lcd_print_font1 (* msg7);
msg7++;
}
返回;
}
空 Display_Page8 (空)
{
const unsigned char * msg8 = {" bye "};
page = page8;
COL = COL1;
LCD_SET_PAGE (PAGE、COL); //初始页、col
while (* msg8!='\0')
{
lcd_print_font1 (* msg8);
msg8++;
}
返回;
}
void lcd_print_font1 (无符号字符数据)
{
unsigned char i、j、index;
静态 unsigned char page_var = Page1;
静态无符号字符 COL_var = col1;
index = data - 32;
lcd_page_col_check_font1 ();
对于(I = 0;I < 6;I++)
LCD_WRITE_DATA (A12[索引][i]);
COL += 1;
返回;
}
void lcd_page_col_check_font1 (void)
{
如果(COL >= 22)
{
PAGE += 1;
if (page >= page8 + 1)
lcd_clear();
COL = COL1;
LCD_SET_PAGE (PAGE、COL); //初始页、col
}
返回;
}
void SetSPage (void)(空)
{
PAGE= PAGE1;
LCD_WRITE_CMD (PAGE); //设置页地址
LCD_WRITE_CMD (0x10); //设置 COLOMn addr MSB
LCD_WRITE_CMD (0x00); //设置 COLUMN addr LSB
}
void display_image (void)
{
DispImage (newlogo2);
返回;
}
void DispImage (无符号字符*AData)
{
int row、col、col1、row1=1024;
for (row=7;row>=0;row---)
{
row1=Row1-1;
col1 =行1;
for (col=127;col>=0;col---)
{
LCD_WRITE_DATA (AData[col1]);
col1=col1-8;
}
Page++;
LCD_WRITE_CMD (PAGE);
LCD_WRITE_CMD (0x10);
LCD_WRITE_CMD (0x00);
}
}
void display_output_pin (void)
{
/********* LCD 数据输出 /
GPIO_SetupPinMux (12、GPIO_MUX_CPU1、0);
GPIO_SetupPinOptions (12、GPIO_OUTPUT、GPIO_PushPull); //D0
GPIO_SetupPinMux (13、GPIO_MUX_CPU1、0);
GPIO_SetupPinOptions (13、GPIO_OUTPUT、GPIO_PushPull); //D1
GPIO_SetupPinMux (14、GPIO_MUX_CPU1、0);
GPIO_SetupPinOptions (14、GPIO_OUTPUT、GPIO_PushPull); //D2
GPIO_SetupPinMux (15、GPIO_MUX_CPU1、0);
GPIO_SetupPinOptions (15、GPIO_OUTPUT、GPIO_PushPull); //D3
GPIO_SetupPinMux (16、GPIO_MUX_CPU1、0);
GPIO_SetupPinOptions (16、GPIO_OUTPUT、GPIO_PushPull); //D4
GPIO_SetupPinMux (17、GPIO_MUX_CPU1、0);
GPIO_SetupPinOptions (17、GPIO_OUTPUT、GPIO_PushPull); //D5.
GPIO_SetupPinMux (20、GPIO_MUX_CPU1、0);
GPIO_SetupPinOptions (20、GPIO_OUTPUT、GPIO_PushPull); //D6.
GPIO_SetupPinMux (21、GPIO_MUX_CPU1、0);
GPIO_SetupPinOptions (21、GPIO_OUTPUT、GPIO_PushPull); //D7
/********* LCD 控制线路 /
GPIO_SetupPinMux (2、GPIO_MUX_CPU1、0);
GPIO_SetupPinOptions (2、GPIO_OUTPUT、GPIO_PushPull); /CS1
GPIO_SetupPinMux (3、GPIO_MUX_CPU1、0);
GPIO_SetupPinOptions (3、GPIO_OUTPUT、GPIO_PushPull); /CS2
GPIO_SetupPinMux (10、GPIO_MUX_CPU1、0);
GPIO_SetupPinOptions (10、GPIO_OUTPUT、GPIO_PushPull); //E
GPIO_SetupPinMux (11、GPIO_MUX_CPU1、0);
GPIO_SetupPinOptions (11、GPIO_OUTPUT、GPIO_PushPull); //DI
GPIO_SetupPinMux (18、GPIO_MUX_CPU1、0);
GPIO_SetupPinOptions (18、GPIO_OUTPUT、GPIO_PushPull); //rw
GPIO_SetupPinMux (19、GPIO_MUX_CPU1、0);
GPIO_SetupPinOptions (19、GPIO_OUTPUT、GPIO_PushPull); //复位
/ /
返回;
}
void SOFT_SPI_DATA (无符号字符数据)
{
unsigned char i、maskdata = 0x80;
美国(5);
for (i=0;i<8;i++)
{
SCL_l;
美国(20);
if (数据和 maskdata)
{
SDA_h;
}
其他
{
SDA_l;
}
maskdata >=1;
美国(20);
SCL_h;
美国(20);
}
美国(5);
返回;
}
void SOFT_SPI_init (void)
{
GPIO_SetupPinMux (58、GPIO_MUX_CPU1、0);
GPIO_SetupPinOptions (58、GPIO_OUTPUT、GPIO_PushPull); /CS1
GPIO_SetupPinMux (60、GPIO_MUX_CPU1、0);
GPIO_SetupPinOptions (60、GPIO_OUTPUT、GPIO_PushPull); /CS2
返回;
}