STM32F103系列是沒有內(nèi)置LCD控制器接口的,如果要驅(qū)動(dòng)LCD,需要一顆LCD圖形驅(qū)動(dòng)IC。STM32和LCD驅(qū)動(dòng)IC的接口在STM32端是FSMC,F(xiàn)SMC接口提供各種存儲(chǔ)器驅(qū)動(dòng)信號(hào)也提供了驅(qū)動(dòng)LCD驅(qū)動(dòng)IC的各種信號(hào)。
一、FSMC簡介
FSMC概覽
如下圖可以看到FSMC支持的存儲(chǔ)器類型及提供的各種讀寫控制信號(hào)。
圖1
2.FSMC 框圖
圖2
3.FSMC 內(nèi)存地址空間分配
圖3
二、LCD 接口
1.8080和6800接口
這兩種接口類型是典型的LCD并行接口。接口信號(hào)分為:數(shù)據(jù)信號(hào)和控制信號(hào)。
數(shù)據(jù)信號(hào)支持8,9,16,18,24位等。
控制信號(hào)用來區(qū)分讀、寫及區(qū)分是向LCD尋址命令寄存器還是寫LCD RAM數(shù)據(jù)。
控制信號(hào)定義如下:
圖4
8080接口:
6800接口:
2.FSMC的LCD接口信號(hào)
圖5
通過圖5,可以看到FSMC提供了LCD驅(qū)動(dòng)所需的全部信號(hào)。
片選有專門的硬件信號(hào),也可以使用地址信號(hào)Ax,即空閑的地址信號(hào)任選一根使用。而LCD的RS信號(hào)也可以連接到一根地址線。
3.FSMC 和LCD 連接框圖
8080類型接口
6800類型接口
4.驅(qū)動(dòng)程序
以STM32F103VCT6為例,關(guān)于103VCT6的信息如下:
只能使用BANK1且Ax推薦使用16-23,STM32原理圖接口連線如下:
如上圖,RS接A16,CS接A17。
如圖3,BANK1的基地址是0x60000000,
關(guān)于LCD驅(qū)動(dòng)IC的訪問模式有4種:
所有對(duì)LCD圖形界面的操作都是基于這四個(gè)函數(shù),所以實(shí)現(xiàn)4個(gè)函數(shù)很重要。
#define LCD_COMM_ADD ((vu16 )0X60020000)
#define LCD_DATA_ADD *((vu16 *)0X60000000)
#define WriteCommand(cmd) {LCD_COMM_ADD = cmd;}
#define WriteData(data) {LCD_DATA_ADD = data;}
inline u8 ReadData(void)
{
return LCD_DATA_ADD;
}
inline u8 ReadCOMM(void)
{
return LCD_COMM_ADD;
}
以上代碼中RS和標(biāo)準(zhǔn)接口定義是反的,是因?yàn)長CD驅(qū)動(dòng)IC對(duì)RS的定義和標(biāo)準(zhǔn)就是反的。LCD驅(qū)動(dòng)IC的SPEC:
另一個(gè)問題,硬件使用A16連接RS,為什么代碼里體現(xiàn)是的0X60020000(A17)?為什么左移一位,原因在STM32中文手冊(cè)有說明:
-
控制器
+關(guān)注
關(guān)注
114文章
17503瀏覽量
188521 -
STM32
+關(guān)注
關(guān)注
2301文章
11075瀏覽量
369401 -
LCD屏
+關(guān)注
關(guān)注
0文章
131瀏覽量
16326 -
驅(qū)動(dòng)IC
+關(guān)注
關(guān)注
9文章
348瀏覽量
35176 -
STM32F103
+關(guān)注
關(guān)注
34文章
486瀏覽量
66637
發(fā)布評(píng)論請(qǐng)先 登錄
Linux中基于EP7312的LCD驅(qū)動(dòng)程序設(shè)計(jì)
Windows CE 5.0下LCD驅(qū)動(dòng)程序移植
USB接口驅(qū)動(dòng)程序開發(fā)

LCD1602驅(qū)動(dòng)程序
Windows CENET環(huán)境下的流接口驅(qū)動(dòng)程序開發(fā)
如何使用STM32的FSMC接口驅(qū)動(dòng)LCD屏
基于Linux下的LCD驅(qū)動(dòng)程序實(shí)現(xiàn)

Linux設(shè)備驅(qū)動(dòng)程序的平臺(tái)驅(qū)動(dòng)程序和字符驅(qū)動(dòng)程序介紹
DS1302的驅(qū)動(dòng)程序和LCD1602驅(qū)動(dòng)顯示程序免費(fèi)下載

STM32的ADC驅(qū)動(dòng)程序

LCD1602液晶實(shí)驗(yàn)驅(qū)動(dòng)程序
UM2570_STM32G4的HAL和LL驅(qū)動(dòng)程序介紹

評(píng)論