www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁(yè) > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]#ifndef __LCD_H_#define __LCD_H_#include "common.h"#include "debugserial.h"#include "delay.h"#include "sdram.h"#define White 0xFFFFFF#define Black 0x000000#define Blue 0xFF0000#define Red 0x0000FF#def

#ifndef __LCD_H_

#define __LCD_H_

#include "common.h"

#include "debugserial.h"

#include "delay.h"

#include "sdram.h"

#define White 0xFFFFFF

#define Black 0x000000

#define Blue 0xFF0000

#define Red 0x0000FF

#define Green 0x00FF00

#define Yellow 0x00FFFF

#define purple 0xff00ff

#define pixel_clock 9000000 //像素時(shí)鐘設(shè)置為9M

#define lcd_h_size 480 //根據(jù)數(shù)據(jù)手冊(cè)典型值設(shè)置

#define lcd_h_pulse 2

#define lcd_h_back_proch 43

#define lcd_h_front_porch 8

#define lcd_v_size 272

#define lcd_v_pulse 10

#define lcd_v_back_proch 12

#define lcd_v_front_porch 4

#define lcd_show_delay 10000

#define LCD_VRAM_BASE_ADDR ((unsigned long)SDRAM_BASE_ADDR + 0x00010000)//顯示基地址

#define LCD_CURSOR_BASE_ADDR ((unsigned long)0x20088800)

void lcd_init(u32 defaultColor);

void lcd_clear(u32 color);

void lcd_set_backlight(u8 enable);

void lcd_draw_point(u32 x,u32 y,u32 color);

u32 lcd_read_point(u32 x,u32 y);

void lcd_draw_line(u16 x1,u16 y1,u16 x2,u16 y2,u32 color);

void lcd_draw_rect(u16 x1,u16 y1,u16 x2,u16 y2,u32 color);

void lcd_draw_cicle(u16 x0,u16 y0,u8 r,u32 color);

void lcd_test(u32 color);

#endif

#include "lcd.h"

//lcd io初始化

static void lcd_in_init(void)

{

LPC_SC->PCONP|=(1<<15);//打開時(shí)鐘

/* R */

LPC_IOCON->P0_4=0x27; // LCD_VD_0

LPC_IOCON->P0_5=0x27; // LCD_VD_1

LPC_IOCON->P4_28=0x27; // LCD_VD_2

LPC_IOCON->P4_29=0x27; // LCD_VD_3

LPC_IOCON->P2_6=0x27; // LCD_VD_4

LPC_IOCON->P2_7=0x27; // LCD_VD_5

LPC_IOCON->P2_8=0x27; // LCD_VD_6

LPC_IOCON->P2_9=0x27; // LCD_VD_7

/* G */

LPC_IOCON->P0_6=0x27; // LCD_VD_8

LPC_IOCON->P0_7=0x27; // LCD_VD_9

LPC_IOCON->P1_20=0x27; // LCD_VD_10

LPC_IOCON->P1_21=0x27; // LCD_VD_11

LPC_IOCON->P1_22=0x27; // LCD_VD_12

LPC_IOCON->P1_23=0x27; // LCD_VD_13

LPC_IOCON->P1_24=0x27; // LCD_VD_14

LPC_IOCON->P1_25=0x27; // LCD_VD_15

/* B */

LPC_IOCON->P0_8=0x27; // LCD_VD_16

LPC_IOCON->P0_9=0x27; // LCD_VD_17

LPC_IOCON->P2_12=0x27; // LCD_VD_18

LPC_IOCON->P2_13=0x27; // LCD_VD_19

LPC_IOCON->P1_26=0x27; // LCD_VD_20

LPC_IOCON->P1_27=0x27; // LCD_VD_21

LPC_IOCON->P1_28=0x27; // LCD_VD_22

LPC_IOCON->P1_29=0x27; // LCD_VD_23

LPC_IOCON->P2_2=0x27; // LCD_DCLK

LPC_IOCON->P2_5=0x27; // LCD_LP -- HSYNC

LPC_IOCON->P2_3=0x27; // LCD_FP -- VSYNC

LPC_IOCON->P2_4=0x27; // LCD_ENAB_M -- LCDDEN

LPC_IOCON->P2_0=0x27; // LCD_PWR

}

void lcd_init(u32 defaultColor)

{

u32*pDst=(u32*)LCD_VRAM_BASE_ADDR;//顯示數(shù)據(jù)基地址

u32 i=0;

//打開LCD時(shí)鐘

LPC_SC->PCONP|=1<<0;

lcd_in_init();//初始化IO

//初始化背光引腳

LPC_IOCON->P2_1=0x00;

LPC_IOCON->P2_1|=(2<<3);//控制背光

P2dir(1)=1;

P2high(1)=1;

LPC_LCD->CRSR_CTRL&=~(1<<0);//禁止光標(biāo)

LPC_LCD->CTRL=0;//禁止并清零LCD

LPC_LCD->CTRL&=~(7<<1);//清零面板設(shè)置

LPC_LCD->CTRL|=(5<<1);//設(shè)置面板tft 24bpp

LPC_LCD->CTRL|=(1<<5);//tft模式

LPC_LCD->CTRL&=~(1<<7);//單面板

LPC_LCD->CTRL&=~(1<<8);//RGB顏色

LPC_LCD->CTRL&=~(1<<9);//小端數(shù)據(jù)存儲(chǔ)

LPC_LCD->CTRL&=~(1<<10);//像素排序小端

LPC_LCD->CTRL&=~(1<<11);//信號(hào)先維持低電平

LPC_SC->LCD_CFG=ApbClock/pixel_clock;//設(shè)置像素時(shí)鐘 根據(jù)數(shù)據(jù)手冊(cè)來(lái)

LPC_LCD->POL|=(1<<26);//像素時(shí)鐘分頻旁路

LPC_LCD->POL&=~(1<<5);//模塊選擇cclk時(shí)鐘

LPC_LCD->POL|=(1<<11);//FB管腳低電平有效

LPC_LCD->POL|=(1<<12);//LP管腳低電平有效

LPC_LCD->POL&=~(1<<13);//像素信號(hào)于時(shí)鐘上升沿驅(qū)動(dòng)

LPC_LCD->POL&=~(1<<14);//高電平輸出使能

LPC_LCD->POL&=~(0x3FF<<16);//清除h_szie

LPC_LCD->POL|=(lcd_h_size-1)<<16;//設(shè)置h_size

//設(shè)置水平時(shí)序控制

LPC_LCD->TIMH=0;

LPC_LCD->TIMH|=(lcd_h_back_proch-1)<<24;//水平后延

LPC_LCD->TIMH|=(lcd_h_front_porch-1)<<16;//水平前沿

LPC_LCD->TIMH|=(lcd_h_pulse-1)<<8; //水平同步脈沖寬度

LPC_LCD->TIMH|=((lcd_h_size/16)-1)<<2;//每一行的像素點(diǎn)

//設(shè)置豎直時(shí)序控制

LPC_LCD->TIMV=0;

LPC_LCD->TIMV|=(lcd_v_back_proch)<<24;//豎直后延

LPC_LCD->TIMV|=(lcd_v_front_porch)<<16;//豎直前沿

LPC_LCD->TIMV|=(lcd_v_pulse-1)<<10;//豎直脈沖寬度

LPC_LCD->TIMV|=lcd_v_size-1; //像素

// 設(shè)置顯示緩沖區(qū)地址

LPC_LCD->UPBASE=LCD_VRAM_BASE_ADDR&(~(7<<0));

LPC_LCD->LPBASE=LCD_VRAM_BASE_ADDR&(~(7<<0));

for(i=0;(lcd_h_size*lcd_v_size)>i;i++)

{

*pDst++=defaultColor;//初始化顏色

}

i=lcd_show_delay;

while(i--);

LPC_LCD->CTRL|=(1<<0);//使能lcd

LPC_LCD->CTRL|=(1<<11);//使能lcd功率

}

void lcd_clear(u32 color)

{

u32*pDst=(u32*)LCD_VRAM_BASE_ADDR;//顯示數(shù)據(jù)基地址

u32 i=0;

for(i=0;(lcd_h_size*lcd_v_size)>i;i++)

{

*pDst++=color;//初始化顏色

}

}

void lcd_set_backlight(u8 enable)

{

if(enable)P2high(1)=1;

elseP2low(1)=1;

}

void lcd_draw_point(u32 x,u32 y,u32 color)

{

u32*pDst=(u32*)LCD_VRAM_BASE_ADDR;//顯示數(shù)據(jù)基地址

if(x

{

pDst=pDst+x+(y*lcd_h_size);

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

Sept. 8, 2025 ---- 根據(jù)TrendForce集邦咨詢最新調(diào)查,2025年第二季NVIDIA(英偉達(dá)) Blackwell平臺(tái)規(guī)模化出貨,以及北美CSP業(yè)者持續(xù)擴(kuò)大布局General Server(通用型...

關(guān)鍵字: SSD DDR4 服務(wù)器

Sept. 4, 2025 ---- Apple(蘋果)即將發(fā)布iPhone 17、iPhone 17 Air(暫名)、iPhone 17 Pro及Pro Max四款旗艦新機(jī),除了外觀辨識(shí)度升級(jí),處理器性能、散熱和拍攝功...

關(guān)鍵字: iPhone 16 A19處理器 折疊機(jī)

Sept. 3, 2025 ---- 根據(jù)TrendForce集邦咨詢最新發(fā)布的《2025近眼顯示市場(chǎng)趨勢(shì)與技術(shù)分析》報(bào)告,2025年隨著國(guó)際品牌陸續(xù)推出AR眼鏡原型,以及Meta預(yù)計(jì)在近期發(fā)布AR眼鏡Celeste,市...

關(guān)鍵字: AR眼鏡 OLED

Sept. 2, 2025 ---- TrendForce集邦咨詢表示,2025年第二季DRAM產(chǎn)業(yè)因一般型DRAM (Conventional DRAM)合約價(jià)上漲、出貨量顯著增長(zhǎng),加上HBM出貨規(guī)模擴(kuò)張,整體營(yíng)收為3...

關(guān)鍵字: DRAM 智能手機(jī) ASP

Sept. 1, 2025 ---- 根據(jù)TrendForce集邦咨詢最新調(diào)查,2025年第二季因中國(guó)市場(chǎng)消費(fèi)補(bǔ)貼引發(fā)的提前備貨效應(yīng),以及下半年智能手機(jī)、筆電/PC、Server新品所需帶動(dòng),整體晶圓代工產(chǎn)能利用率與出貨...

關(guān)鍵字: 晶圓代工 智能手機(jī) 筆電

Aug. 28, 2025 ---- 根據(jù)TrendForce集邦咨詢最新調(diào)查,2025年第二季NAND Flash產(chǎn)業(yè)雖面臨平均銷售價(jià)格(ASP)小幅下滑,所幸原廠減產(chǎn)策略緩解供需失衡,疊加中、美兩大市場(chǎng)政策推動(dòng),整體...

關(guān)鍵字: NAND Flash SSD AI

Aug. 26, 2025 ---- NVIDIA(英偉達(dá))近日推出的Jetson Thor被視為機(jī)器人的物理智慧核心,以Blackwell GPU、128 GB記憶體堆疊出2070 FP4 TFLOPS AI算力,是前...

關(guān)鍵字: 機(jī)器人 大型語(yǔ)言模型 AI算力

Aug. 21, 2025 ---- 根據(jù)TrendForce集邦咨詢最新液冷產(chǎn)業(yè)研究,隨著NVIDIA GB200 NVL72機(jī)柜式服務(wù)器于2025年放量出貨,云端業(yè)者加速升級(jí)AI數(shù)據(jù)中心架構(gòu),促使液冷技術(shù)從早期試點(diǎn)邁...

關(guān)鍵字: AI 數(shù)據(jù)中心 服務(wù)器

除了充電電路外,鋰電池的放電過(guò)程也需要保護(hù)。鋰電池的放電電壓不能低于3.0V,否則電池壽命會(huì)大幅縮短。為了實(shí)現(xiàn)這一保護(hù),工程師們?cè)O(shè)計(jì)了DW01芯片與8205 MOS管的電路組合。DW01芯片能夠監(jiān)控鋰電池的放電電壓和電流...

關(guān)鍵字: 鋰電池 電池

在PCB設(shè)計(jì)的宏偉藍(lán)圖中,布局與布線規(guī)則猶如精密樂(lè)章中的指揮棒,是鑄就電路板卓越性能、堅(jiān)不可摧的可靠性及經(jīng)濟(jì)高效的制造成本的靈魂所在。恰如一位巧手的園藝師,合理的布局藝術(shù)性地編排著每一寸空間,既削減了布線交織的繁復(fù)迷宮,...

關(guān)鍵字: PCB 電路板
關(guān)閉