標(biāo)題:
STM32液晶屏接口和SD卡接口設(shè)計(jì)
[打印本頁(yè)]
作者:
51黑er
時(shí)間:
2015-12-19 15:52
標(biāo)題:
STM32液晶屏接口和SD卡接口設(shè)計(jì)
液晶屏接口
大多數(shù)情況下,學(xué)習(xí)STM32的人,都是會(huì)先學(xué)51的,學(xué)過(guò)51的話,就一定知道1602屏和12864屏了。如果你真的學(xué)會(huì)了使用51驅(qū)動(dòng)1602和12864的話,那你就應(yīng)該知道1602和12864屏任何單片機(jī)可以驅(qū)動(dòng),當(dāng)然,STM32也可以驅(qū)動(dòng)。不過(guò),既然學(xué)51的時(shí)候就學(xué)會(huì)了1602和12864,那么我們STM32開(kāi)發(fā)板就不使用這兩種屏了。
彩色TFT液晶屏以前是FPGA的女朋友,由于科技的發(fā)展,現(xiàn)在單片機(jī)也可以驅(qū)動(dòng)TFT了,不過(guò),最多只能顯示個(gè)圖片,顯示視頻就不行了。單片機(jī)驅(qū)動(dòng)TFT,還得益于ILI家族的控制器。例如,當(dāng)下流行的ILI9341,它可以讓單片機(jī)用16個(gè)IO口和若干控制引腳就可以驅(qū)動(dòng)彩色TFT,這就使得任何單片機(jī)可以驅(qū)動(dòng)彩色TFT,當(dāng)然,51單片機(jī)也可以,只是速度不夠快而已。
就目前來(lái)說(shuō),彩色TFT也沒(méi)有形成一個(gè)統(tǒng)一的標(biāo)準(zhǔn),各家的TFT接口都不一樣,為了方便,這里使用我曾經(jīng)開(kāi)發(fā)過(guò)的一款3.2寸的TFT屏:
先來(lái)介(xuan)紹(yao)一下這款牛逼的屏吧。這款屏使用ILI9341驅(qū)動(dòng),帶觸摸屏,帶背光打開(kāi)和關(guān)閉控制引腳。采用FPC排線連接,如果屏不小心摔碎了,只要把連接器叩開(kāi)即可更換,無(wú)需焊接。從上圖也可以看出來(lái),這款屏支持4種驅(qū)動(dòng)方式。這4種驅(qū)動(dòng)方式分別是:16位并口、8位并口、3線SPI和4線SPI串行接口。刷屏最快的就是16位并口,8位并口次之,SPI接口最慢。
既然要使用這款屏,那我們的STM32底板也就需要設(shè)計(jì)相同接口定義的插座,使得屏插上去就可以用。我們使用最快的驅(qū)動(dòng)方式:16位并口驅(qū)動(dòng)。如果是用51單片機(jī)的話,可以使用2組IO口做并口(例如:P1和P2加起來(lái)正好16個(gè)引腳)。使用STM32的話,使用1組IO口就可以,因?yàn)镾TM32的每組IO口都是16個(gè)引腳(例如:PB0~PB15)。不過(guò),我們這次要使用STM32的FSMC口。
當(dāng)人們聽(tīng)到一個(gè)從來(lái)沒(méi)有聽(tīng)過(guò)的專業(yè)名詞,就會(huì)產(chǎn)生恐懼感,不過(guò),你有沒(méi)有發(fā)現(xiàn),你現(xiàn)在也掌握了很多的專業(yè)名詞(不管是哪個(gè)行業(yè)的),你現(xiàn)在隨便揪出一個(gè)來(lái),是不是感覺(jué)弱爆了。所以,以后不要對(duì)任何專業(yè)名詞產(chǎn)生恐懼了。這里我們先簡(jiǎn)單了解一下,F(xiàn)SMC口本來(lái)是STM32為了擴(kuò)展內(nèi)存增設(shè)的接口,我們知道,單片機(jī)讀取內(nèi)存,要求的速度是非常高的,所以我們就有了印象,F(xiàn)SMC口的速度一定很高,至少要比直接控制IO口要快很多。關(guān)于FSMC口的詳細(xì)使用方法,當(dāng)然是在后面做好開(kāi)發(fā)板以后來(lái)講的。
從3腳到25腳,是TFT的控制引腳,26腳是背光亮滅控制引腳,從27到32腳是觸摸屏控制引腳,使用SPI2口,關(guān)于這個(gè),上一篇文章也提到過(guò)。(有些小伙伴會(huì)問(wèn),”為什么7腳和8腳沒(méi)有用?“答:因?yàn)槲覀兪褂玫氖?6位并口,這兩個(gè)引腳是SPI控制引腳,所以就不用了!蹦菫槭裁床话堰@兩個(gè)腳去掉,底下的引腳上移?“答:因?yàn)槲覀兪且勒掌恋囊_來(lái)畫的底板,把引腳上移后,屏插進(jìn)來(lái)能用嗎?)
SD卡接口
SD卡,有兩種驅(qū)動(dòng)方式,這個(gè)在SD卡協(xié)議里面有介紹。這兩種驅(qū)動(dòng)方式分別是:SDIO接口和SPI接口。一提到SPI接口,你就應(yīng)該想到,任何單片機(jī)都可以驅(qū)動(dòng)SD卡了,即使使用沒(méi)有硬件SPI接口的51單片機(jī),也可以用GPIO模擬SPI時(shí)序來(lái)驅(qū)動(dòng)SD卡。但是,SPI接口沒(méi)有SDIO的速度快,而且,STM32VET6自帶SDIO接口,所以我們就使用STM32的SDIO接口來(lái)驅(qū)動(dòng)SD卡吧:
雖然我們使用了SDIO接口連接SD卡,不過(guò),這樣連接后,既可以使用SDIO接口驅(qū)動(dòng)SD卡,又可以使用GPIO模擬SPI時(shí)序來(lái)驅(qū)動(dòng)SD卡,那我們就可以學(xué)習(xí)SD卡的兩種驅(qū)動(dòng)方式了。
到時(shí)候,我們就可以讀出SD卡里面的文件夾,讀出SD卡里面的圖片,讀出SD卡中的TXT文件等等。并且可以模仿電腦來(lái)顯示SD卡的存儲(chǔ)情況,如下圖所示:
(這是我曾經(jīng)做過(guò)的一個(gè)程序,圖中上半部分是我做的程序的效果,圖中下半部分是SD卡在電腦上看到的效果。如果你對(duì)這個(gè)程序感興趣的話,可以去我的網(wǎng)站(瑞生網(wǎng))搜索”SD卡“就可以找到這篇文章,帶源碼。)
今天就介紹到這里吧。如果你想看以前的文章或者要看后面的文章,請(qǐng)關(guān)注我的微信公眾號(hào):科技老頑童
作者:
gyg12321
時(shí)間:
2016-3-1 15:51
講解的很詳細(xì)呀。。。。。。。。。。。。。。。
作者:
shgdd520com
時(shí)間:
2016-5-30 14:36
512197113179498.jpg
(55.13 KB, 下載次數(shù): 80)
下載附件
2016-5-30 14:36 上傳
樓主,圖片上紅色框中的英文是否有錯(cuò)?
作者:
木棉花花
時(shí)間:
2018-1-25 21:03
看不見(jiàn)啊
作者:
ph_layout
時(shí)間:
2018-1-26 00:04
圖片不錯(cuò),最好用硬件接口驅(qū)動(dòng)
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1