S70液晶屏硬體改動

2021-07-22 19:34:38 字數 3804 閱讀 6771

碼字好辛苦,希望對大家有用!

#include "common.h"

#include "font_8x16.h"

// 初始化lcd

void lcd_init(void)

// 描點

void lcd_draw_pixel(int row, int col, int color)

// 清屏

void lcd_clear_screen(int color)

// 劃橫線

void lcd_draw_hline(int row, int col1, int col2, int color)

// 劃豎線

void lcd_draw_vline(int col, int row1, int row2, int color)

// 劃十字

void lcd_draw_cross(int row, int col, int halflen, int color)

void lcd_test()

//在指定位置顯示乙個字元

//x,y:起始座標

//num:要顯示的字元:" "--->"~"

//size:字型大小 12/16

//mode:疊加方式(1)還是非疊加方式(0)

void lcd_showchar(int *x, int *y, u8 ch)

//超區域了

if((*x - x0) == 16)

// }

// }//超區域了

}}

}

}

//顯示字串

//x,y:起點座標

//width,height:區域大小

//size:字型大小

//*p:字串起始位址

void lcd_showstring(int x, int y, u8 *p)

{

int x0 = x;

int y0 = y;

while((*p <= '~')&&(*p >= ' '))//判斷是不是非法字元!

{

lcd_showchar(x, y, *p);

y += 8;

/********************lcd相關標頭檔案***********************************/

#define gpf0con (*(volatile unsigned long *)0xe0200120)

#define gpf1con (*(volatile unsigned long *)0xe0200140)

#define gpf2con (*(volatile unsigned long *)0xe0200160)

#define gpf3con (*(volatile unsigned long *)0xe0200180)

#define gpd0con (*(volatile unsigned long *)0xe02000a0)

#define gpd0dat (*(volatile unsigned long *)0xe02000a4)

#define clk_src1 (*(volatile unsigned long *)0xe0100204)

#define clk_div1 (*(volatile unsigned long *)0xe0100304)

#define display_control (*(volatile unsigned long *)0xe0107008)

#define vidcon0 (*(volatile unsigned long *)0xf8000000)

#define vidcon1 (*(volatile unsigned long *)0xf8000004)

#define vidtcon2 (*(volatile unsigned long *)0xf8000018)

#define wincon0 (*(volatile unsigned long *)0xf8000020)

#define wincon2 (*(volatile unsigned long *)0xf8000028)

#define shadowcon (*(volatile unsigned long *)0xf8000034)

#define vidosd0a (*(volatile unsigned long *)0xf8000040)

#define vidosd0b (*(volatile unsigned long *)0xf8000044)

#define vidosd0c (*(volatile unsigned long *)0xf8000048)

#define vidw00add0b0 (*(volatile unsigned long *)0xf80000a0)

#define vidw00add1b0 (*(volatile unsigned long *)0xf80000d0)

#define vidtcon0 (*(volatile unsigned long *)0xf8000010)

#define vidtcon1 (*(volatile unsigned long *)0xf8000014)

#define hspw (3-1)

#define hbpd (46-3-1)

#define hfpd (210-1)

#define vspw (3-1)

#define vbpd (23-3-1)

#define vfpd (22-1)

// fb位址

#define fb_addr (0x33000000)

#define row (480)

#define col (800)

#define hozval (col-1)

#define lineval (row-1)

void lcd_init(void);

void lcd_draw_pixel(int row, int col, int color);

void lcd_clear_screen(int color);

void lcd_draw_hline(int row, int col1, int col2, int color);

void lcd_draw_vline(int col, int row1, int row2, int color);

void lcd_draw_cross(int row, int col, int halflen, int color);

void lcd_test();

void lcd_showchar(int *x, int *y, u8 ch);

void lcd_showstring(int x, int y, u8 *p);

#define widtheight 800

#define height 480

#defi

液晶屏按鍵處理

在主函式內檢測是否按下 原口令 按鍵 if chx dat 152 chx dat 262 chy dat 98 chy dat 140 if receive length key input 10,receive 0 while pint 0 等待pint為高電平。即放開按鈕。按鍵處理 unsig...

解讀LED液晶屏

首先,大家熟悉的 lcd 是液晶顯示器 liquid crystal display 的英文縮寫。市場上不論台式電腦還是筆記本 電腦的顯示器都是 lcd 但是 lcd 的背光技術卻大有不同 目前市面上大部分lcd 是採用 ccfl 背光技術的lcd 而 led 屏採用的是 led 背光技術!led ...

TFT STN液晶屏區別

2.什麼是tft?tft thinfilmtransistor 是指薄膜電晶體,意即每個液晶畫素點都是由整合在畫素點後面的薄膜電晶體來驅動,從而可以做到高速度 高亮度 高對比度顯示螢幕資訊,是目前最好的lcd彩色顯示裝置之一 其效果接近crt顯示器,是現在膝上型電腦和台式電腦上的主流顯示裝置。tft...