當(dāng)前位置:首頁 > 公眾號精選 > 嵌入式微處理器
[導(dǎo)讀]1.介紹TouchGFX是一個圖形框架,它可以幫助用戶基于STM32創(chuàng)建出類似于當(dāng)前智能手機風(fēng)格的用戶界面,對于STM32的用戶,它是免費的!RT-Thread是一款完全由國內(nèi)團隊開發(fā)維護的嵌入式實時操作系統(tǒng)(RTOS),具有完全的自主知識產(chǎn)權(quán)。現(xiàn)在我們就把TouchGFX和RT...


1.介紹
TouchGFX是一個圖形框架,它可以幫助用戶基于STM32創(chuàng)建出類似于當(dāng)前智能手機風(fēng)格的用戶界面,對于STM32的用戶,它是免費的!
RT-Thread 是一款完全由國內(nèi)團隊開發(fā)維護的嵌入式實時操作系統(tǒng)(RTOS),具有完全的自主知識產(chǎn)權(quán)。
現(xiàn)在我們就把TouchGFX和RT-Thread融合起來,保姆級教程走起!
2.開發(fā)環(huán)境準(zhǔn)備
源碼:RT-Thread 4.0.2;工具:Env 1.2.0;軟件:Keil MDK 5.30;TouchGFX Designer 4.16.0;STM32CubeMX 6.2.0;開發(fā)板:正點原子阿波羅F429;正點原子800x480屏幕;開發(fā)系統(tǒng):Windows10;是不是覺得要準(zhǔn)備的軟件和工具有點多,不過只要開發(fā)過【RT-Thread】的話,除了【TouchGFX Designer 4.16.0】沒有,其他應(yīng)該都有的。
3.基礎(chǔ)工程創(chuàng)建
打開RTThread中開發(fā)板支持程序,我的路徑【E:\RTThread\rt-thread\bsp\stm32\stm32f429-atk-apollo】。
圖1
鼠標(biāo)右擊該路徑下的空白處,打開Env工具,輸入【scons --dist】生成獨立的RTThread工程,生成過程大概要幾分鐘。
圖2
最終會在該目錄下生成一個【dist】目錄,進入目錄之后就是獨立的工程文件了,將這個工程文件移到方便操作的目錄下,我這里移動到了【E:\RTThread】路徑下。
圖3圖4
4.開發(fā)板硬件配置
使用【STM32CubeMX】打開如圖5的工程,需要修改工程的外設(shè)使能和管腳,由于采用的是正點原子的工程,所以很多外設(shè)會被默認(rèn)打開,這里用不到的外設(shè)就將其關(guān)閉。
圖5
打開【STM32CubeMX】工程后,界面如下,綠色部分都是已經(jīng)被配置過的管腳,我們需要使用的外設(shè)有【LTDC】、【FMC】、【DMA2D】和【USART1】,同時還需要使用【CRC】組件和【TOUCHGFX】軟件包;
圖6
首先將其他外設(shè)全部關(guān)閉,其中【LTDC】、【DMA2D】、【CRC】和【TOUCHGFX】是沒有打開的,首先我們打開【DMA2D】,配置如下圖7所示:
圖7
再打開LTDC,這里需要配置參數(shù)和管腳等,下面幾個圖是配置完成后的內(nèi)容。
圖8圖9圖10圖11
接下來配置【FMC】,【FMC】連接的是【SDRAM】,需要配置參數(shù),管腳工程默認(rèn)配置好了,所以不需要重新配置,下圖是配置完成后的內(nèi)容。
圖12由于【TOUCHGFX】需要用到【CRC】,所以我們先打開CRC。圖13
現(xiàn)在開始添加【TOUCHGFX】軟件包,點擊【Software Packs】->【Select Components】。
圖14
在彈出的窗口中選擇【TOUCHGFX】我這里用的是4.16.0版本,第一次使用,需要先下載安裝,點擊右下角的【OK】關(guān)閉窗口。
圖15
這時候就會彈出一個軟件包選項,開啟后可以看到【TOUCHGFX】,需要配置一下參數(shù),這里采用雙緩存,并設(shè)置為地址模式,不過這些和【RT-Thread】提供的軟件包有沖突,最終不會采用這個配置,配置如下圖15所示。
圖16
最后點擊右上角的【GENERATE CODE】生成代碼即可。
圖17
其實上面的一些外設(shè)配置沒有意義,因為【RT-Thread】會自己配置一些參數(shù),不會使用【STM32CubeMX】配置的參數(shù),不過也不影響使用,看過之后還能學(xué)習(xí)一下如何配置。
5.導(dǎo)入TouchGFX軟件包
在工程目錄下打開【Env】,輸入【menuconfig】命令,打開【RT-Thread】的配置界面,進入【RT-Thread online packages → multimedia packages】打開【touchgfx】軟件包。
圖18
退出并保存,返回到【Env】指令界面輸入【pkgs --update】下載軟件包,下載完成之后,在項目的根目錄下會出現(xiàn)一個【packages】目錄,這里面有【touchgfx2rtt】的軟件包了。
圖19
這里需要修改配置文件,需要【RT-Thread】的配置腳本,修改項目根目錄下的【packages\touchgfx2rtt-latest\SConscript】文件,由于有一個頭文件路徑未添加,這里直接在腳本中將它添上【guiPath = [cwd '/port']】,修改結(jié)果如下圖20所示。
圖20
我們還需要添加外設(shè)配置,需要修改【RT-Thread】的【Kconfig】文件,修改項目根目錄下的【board\Kconfig】,需要添加上【LTDC】和【LCD】的配置項,修改結(jié)果如下圖21所示。
圖21
打開配置文件,配置【RT-Thread】的外設(shè),在【Env】命令行中輸入【menuconfig】打開配置,需要打開【SDRAM】外設(shè),配置路徑【Hardware Drivers Config → Onboard Peripheral Drivers】。
圖22
打開屏幕相關(guān)的外設(shè)【LTDC】和【LCD】,配置路徑【Hardware Drivers Config → On-chip Peripheral Drivers】。
圖23
最后保存退出,為了讓屏幕有顯示,先打開項目根目錄下的【packages\touchgfx2rtt-latest\TouchGFX\ApplicationTemplate.touchgfx.part】,點擊菜單欄中的【Edit->Import GUI】導(dǎo)入下圖24中的Demo。
圖24
添加完成之后的效果如下,然后點擊右上角的按鈕生成代碼。
圖25
關(guān)閉軟件,打開【Env】命令行,輸入【scons --target=mdk5】命令,輸出MDK工程。打開MDK工程,修改【drv_lcd】文件,將【25~37】和【104~107】行注釋掉,如下圖26所示。
圖26
將項目根目錄下的【board\CubeMX_Config\Src\main.c】文件中的【SystemClock_Config】函數(shù)中的內(nèi)容覆蓋項目工程【board.c】文件中的【SystemClock_Config】函數(shù),這一步主要是將【STM32CubeMX】配置的時鐘復(fù)制到項目中去,如下圖27所示。
圖27
最后編譯下載到開發(fā)板上,效果如圖28所示。
圖28
6.總結(jié)
這次移植整體來說不是很難,但是網(wǎng)上沒有相關(guān)的教程,所以打算做關(guān)于TouchGFX和RTThread一系列的教程,當(dāng)然這只是剛剛開始,后續(xù)還有觸摸、圖片字庫存儲等一系列操作,本人接觸RTThread和TouchGFX也有許久,有困難的童鞋,歡迎私信留言,承接外包~
---------------------作者:二哲科技此文章來自于21ic網(wǎng)站,著作權(quán)歸21ic所有,未經(jīng)允許禁止轉(zhuǎn)載。
嵌入式ARM

掃描二維碼,關(guān)注更多精彩內(nèi)容

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

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉