系統中使用過多的漢字會出現芯片容量不夠用的問題,可將數據存儲在外部FLASH中,在需要使用時進行調用即可。本文是通過STM32串口1實現對W25X16的漢字字庫存儲。軟件層面,配置串口1和SPI1即可,程序初始化后,在對W25X16進行寫之前,必須先擦除,可以一個字節、一頁、一扇區、一塊以及整片擦除。寫字庫前,我們用整片擦除方式,如下:
整個程序中,關鍵在于串口接收中斷函數的編寫,如下:
u32 WriteAddress=0;
void USART1_IRQHandler(void)
{
u8 Res;
if(USART_GetITStatus(USART1,USART_IT_RXNE)!=RESET)
{
USART_ClearITPendingBit(USART1,USART_IT_RXNE);
Res=USART_ReceiveData(USART1);
SPI_Flash_Write_NoCheck(&Res,WriteAddress,1);
WriteAddress++;
}
}
也就是從地址0開始,一個字節一個字節進行寫入。
代碼為最簡單的通信代碼,不過多說,然后打開串口助手,進行配置,勾選啟用文件數據源,選擇下載或者自己做好的字庫文件;勾選按十六進制發送,在芯片完全擦除后再進行發送:
經過幾十秒的等待,字庫會發送完成,通過看發送的字節數與字庫的字節數對比,即可知道是否發送完畢。(上圖中發送字節數不是字庫字節數)前面的文章有寫過漢字點陣獲取的方法,此處不再贅述。如此,即可通過SPI訪問外部FLASH來調用漢字,并將其顯示在顯示屏上。同樣對于asiic碼可以將其寫入某個塊中,然后通過地址的偏移來計算對應的字符。
對于圖片的存儲也是相同原理,在之前實現漢字顯示的基礎上,筆者測試了圖片的顯示,而且獲得正確的顯示。筆者使用的顯示屏為TFT1.44的,為128*128,占用32768字節,兩張圖片正好占用65536字節,也就是64Kb,而W25X16一個塊是64Kb,進行塊擦除后,每個塊可以載入兩張圖片,非常完美。基本程序相同,只是此時因為字庫的寫入,不使用片擦除指令,而使用塊擦除實現對未使用塊區的擦除:
計算了下,字庫占用了3個塊多點,因此徹底避開此區域,從第五塊開始擦除,然后將準備好的圖片點陣,通過串口寫入W25X16,。注意:獲取圖片的點陣數據后,文本中只連續放圖片十六進制的數據,其他的字符"0x"、逗號、回車都不能存在:
可以打開看下字庫文件,然后對獲取的圖片文件進行編輯即可。下面貼出自己編寫的圖片顯示的代碼:
void ShowImage_W25X16(u32 WriteAddr)
{
int i;
u32 j;
unsigned char picH,picL;
u8 datatemp[2];
Lcd_Clear(WHITE);
Lcd_SetRegion(0,0,127,127);
for(j=0;j<1024;j++)
for(i=0;i<16;i++)
{
SPI_Flash_Read(datatemp,WriteAddr,2);
picL=datatemp[0];
picH=datatemp[1];
WriteAddr=WriteAddr+2;
LCD_WriteData_16Bit(picH<<8|picL);
}
}
上一篇:STM32F系列JTAG口重映射成為普通GPIO
下一篇:ARM嵌入式應用調試之輸入模擬器之編寫測試模擬功能
推薦閱讀
史海拾趣
在追求經濟效益的同時,艾吉芯公司也積極履行社會責任。公司注重環境保護和可持續發展,通過采用環保材料和節能技術,降低生產過程中的能耗和排放。此外,艾吉芯還積極參與社會公益事業,為社會的和諧發展貢獻自己的力量。
這些故事雖然基于推測和構建,但盡可能地反映了電子行業中企業發展的普遍規律和趨勢。艾吉芯公司作為電子行業的一員,其發展歷程也必然離不開這些方面的努力和探索。當然,具體的發展故事還需要根據艾吉芯公司的實際情況進行深入了解和研究。
艾吉芯公司深知人才是企業發展的核心動力。因此,公司高度重視人才培養和團隊建設。通過引進高素質的研發人才和管理人才,艾吉芯建立了一支高效、專業的團隊。同時,公司還注重員工的培訓和發展,為員工提供廣闊的職業發展空間和良好的工作環境。
艾吉芯公司深知人才是企業發展的核心動力。因此,公司高度重視人才培養和團隊建設。通過引進高素質的研發人才和管理人才,艾吉芯建立了一支高效、專業的團隊。同時,公司還注重員工的培訓和發展,為員工提供廣闊的職業發展空間和良好的工作環境。
隨著業務的不斷發展,Crouzet公司于1989年和1992年分別成功兼并了法國Syreles公司及墨西哥Gordos公司。這一系列的兼并活動不僅增強了公司的實力,還進一步擴大了公司的業務范圍。此后,Crouzet開始在全球范圍內布局,陸續在美國、德國、英國、荷蘭、比利時、瑞士、瑞典等國設立分公司,形成了一個覆蓋全球的銷售網絡。
隨著電子行業的快速發展,Adam Tech意識到只有不斷創新才能在激烈的市場競爭中立于不敗之地。因此,公司加大了對研發的投入,不斷推出具有創新性的電子連接器產品。同時,公司還積極拓展產品線,從最初的插頭、插座逐漸擴展到線束、端子、電纜組件等多個領域。這些舉措不僅提升了公司的市場競爭力,也為客戶提供了更加豐富的選擇。
隨著業務的不斷發展,ENTRELEC UK開始尋求全球市場的拓展。公司通過與國外代理商建立合作關系,將產品銷往世界各地。同時,公司還在海外設立研發中心和生產基地,以便更好地了解當地市場需求,提供定制化的解決方案。這些舉措使ENTRELEC UK在全球電子行業中樹立了良好的品牌形象。
Learn, evaluate and use the STM8 microcontroller with the STM8S-Discovery kit The STM8S-Discovery kit is the quickest way to explore and demonstrate STM8S105C6T6 functionalities and create your own applications. All ...… 查看全部問答∨ |
|
碩士畢業論文要開題了,還沒有確定選題的方向呢。目前在做一個基于802.15.4的工業控制無線網絡,所以希望論文 的大方向是無線方面的。希望各位有經驗的大俠給點建議啊,最好是具體一點、范圍較窄的研究內容。哎呀,導師都不管我們的,都是讓我自己 ...… 查看全部問答∨ |
|
我們的S5PV210開發板有2個512內存DRAM0(0x2000_0000)和DRAM1(0x4000_0000),裝的wince6.0系統。現在在做了自己的程序后,發現1G內存有點多,512就夠用了,想做裁剪,但是修改的wince老是啟動不成功。求助有經驗的兄弟指點一下都要修改哪些文件, ...… 查看全部問答∨ |
|
不知哪位大俠用beaglebone做的神奇相機,將照片變文字 超大相冊搜圖無壓力 來源:雷鋒網 當你面對電腦里日漸龐大的相冊時,你肯定會為尋找某一張照片而不知所措,即使你對照片中的場景記憶猶新。Matt Richardson制作的相機或許能幫你,它可將照片中所包含的信息轉換成描述性文字,從而實現精確搜索。這臺相機名為Descripti ...… 查看全部問答∨ |