久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
STM32F4更新W25Q16字庫源程序
[打印本頁]
作者:
Lynne0088
時間:
2018-4-30 12:41
標題:
STM32F4更新W25Q16字庫源程序
一開始我下載了讀取SD卡的程序,但液晶顯示屏幕上沒反應,于是我就下載了這個關于更新字庫的程序,就有反應了。
本實驗將實現如下功能:開機的時候先檢測W25Q16中是否已經存在字庫,如果存在,則按次序顯示漢字(三種字體都顯示)。如果沒有,則檢測SD卡和文件系統,并查找SYSTEM文件夾下的FONT文件夾,在該文件夾內查找UNIGBK.BIN、GBK12.FON、GBK16.FON (這幾個文件的由來,我們前面已經介紹了)。在檢測到這些文件之后,就開始更新字庫,更新完畢才開始顯示漢字。通過按按鍵KEY0,可以強制更新字庫。同樣我們也是用DS0來指示程序正在運行。
0.png
(46.55 KB, 下載次數: 32)
下載附件
2018-4-30 15:30 上傳
需要拷貝到SD卡根目錄文件
1,在系統(或字庫)更新的時候,必須用到SYSTEM文件夾,請將該文件夾下的SYSTEM文件夾拷貝到SD卡根目錄。
2,測試用文件--該文件夾是用來測試用的,里面包含一些文本/圖片/音樂/視頻等文件,這個文件不一定要拷貝。
3,默認我們已經將這兩個文件夾拷貝到了FLASH磁盤(磁盤名:ALIENTEK,即W25Q128)里面。
注意:
1,本例程支持12*12/16*16 大小的漢字顯示。
2,如果想更新字庫,必須自備SD卡一個。
單片機源程序如下:
#include "sys.h"
#include "delay.h"
#include "usart.h"
#include "led.h"
#include "lcd.h"
#include "key.h"
#include "sram.h"
#include "malloc.h"
#include "usmart.h"
#include "sdio_sdcard.h"
#include "malloc.h"
#include "w25qxx.h"
#include "ff.h"
#include "exfuns.h"
#include "fontupd.h"
#include "text.h"
//漢字顯示 實驗 -庫函數版本
//STM32F4工程模板-庫函數版本
int main(void)
{
u32 fontcnt;
u8 i,j;
u8 fontx[2];//gbk碼
u8 key,t;
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//設置系統中斷優先級分組2
delay_init(168); //初始化延時函數
uart_init(115200); //初始化串口波特率為115200
LED_Init(); //初始化LED
LCD_Init(); //LCD初始化
KEY_Init(); //按鍵初始化
W25QXX_Init(); //初始化W25Q128
usmart_dev.init(168); //初始化USMART
my_mem_init(SRAMIN); //初始化內部內存池
my_mem_init(SRAMCCM); //初始化CCM內存池
exfuns_init(); //為fatfs相關變量申請內存
f_mount(fs[0],"0:",1); //掛載SD卡
f_mount(fs[1],"1:",1); //掛載FLASH.
// W25QXX_Erase_Chip();//擦除
while(font_init()) //檢查字庫
{
UPD:
LCD_Clear(WHITE); //清屏
POINT_COLOR=RED; //設置字體為紅色
LCD_ShowString(30,50,200,16,16,"Mcudev STM32F4");
while(SD_Init()) //檢測SD卡
{
LCD_ShowString(30,70,200,16,16,"SD Card Failed!");
delay_ms(200);
LCD_Fill(30,70,200+30,70+16,WHITE);
delay_ms(200);
}
LCD_ShowString(30,70,200,16,16,"SD Card OK");
LCD_ShowString(30,90,200,16,16,"Font Updating...");
key=update_font(20,110,16,"0:");//更新字庫
while(key)//更新失敗
{
LCD_ShowString(30,110,200,16,16,"Font Update Failed!");
delay_ms(200);
LCD_Fill(20,110,200+20,110+16,WHITE);
delay_ms(200);
}
LCD_ShowString(30,110,200,16,16,"Font Update Success! ");
delay_ms(1500);
LCD_Clear(WHITE);//清屏
}
POINT_COLOR=RED;
Show_Str(30,50,200,16,"Mcudev_STM32F407開發板",16,0);
Show_Str(30,70,200,16,"GBK字庫測試程序",16,0);
//Show_Str(30,90,200,16,"嵌入式開發網mcudev",16,0);
Show_Str(30,110,200,16,"2018年4月22日",16,0);
Show_Str(30,130,200,16,"按KEY0,更新字庫",16,0);
POINT_COLOR=BLUE;
Show_Str(30,150,200,16,"內碼高字節:",16,0);
Show_Str(30,170,200,16,"內碼低字節:",16,0);
Show_Str(30,190,200,16,"漢字計數器:",16,0);
// Show_Str(30,220,200,24,"對應漢字為:",24,0); //因為FLASH W25Q16無法裝下所有三種字庫,暫時不提供對24點陣字庫的顯示
Show_Str(30,244,200,16,"對應漢字(16*16)為:",16,0);
Show_Str(30,260,200,12,"對應漢字(12*12)為:",12,0);
while(1)
{
fontcnt=0;
for(i=0x81;i<0xff;i++)
{
fontx[0]=i;
LCD_ShowNum(118,150,i,3,16); //顯示內碼高字節
for(j=0x40;j<0xfe;j++)
{
if(j==0x7f)continue;
fontcnt++;
LCD_ShowNum(118,170,j,3,16); //顯示內碼低字節
LCD_ShowNum(118,190,fontcnt,5,16);//漢字計數顯示
fontx[1]=j;
// Show_Font(30+132,220,fontx,24,0);
Show_Font(30+144,244,fontx,16,0);
Show_Font(30+108,260,fontx,12,0);
t=200;
while(t--)//延時,同時掃描按鍵
{
delay_ms(1);
key=KEY_Scan(0);
if(key==KEY0_PRES)goto UPD;
}
LED0=!LED0;
}
}
}
}
//int main(void)
//{
// NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//設置系統中斷優先級分組2
//
// delay_init(168); //初始化延時函數
// uart_init(115200); //初始化串口波特率為115200
// LED_Init(); //初始化LED
// LCD_Init(); //LCD初始化
// KEY_Init(); //按鍵初始化
// W25QXX_Init(); //初始化W25Q128
// usmart_dev.init(168); //初始化USMART
// my_mem_init(SRAMIN); //初始化內部內存池
// my_mem_init(SRAMCCM); //初始化CCM內存池
// exfuns_init(); //為fatfs相關變量申請內存
// f_mount(fs[0],"0:",1); //掛載SD卡
// f_mount(fs[1],"1:",1); //掛載FLASH.
//// W25QXX_Erase_Chip();//擦除
//
// while(font_init()) //檢查字庫
// {
// LCD_Clear(WHITE); //清屏
// POINT_COLOR=RED; //設置字體為紅色
// LCD_ShowString(30,50,200,16,16,"Mcudev STM32F4");
// while(SD_Init()) //檢測SD卡
// {
// LCD_ShowString(30,70,200,16,16,"SD Card Failed!");
// delay_ms(200);
// LCD_Fill(30,70,200+30,70+16,WHITE);
// delay_ms(200);
// }
//
// LCD_ShowString(30,110,200,16,16,"Font Update Success! ");
// delay_ms(1500);
// LCD_Clear(WHITE);//清屏
// }
//
// POINT_COLOR=RED;
// Show_Str(30,50,200,16,"Mcudev_STM32F407開發板",16,0);
// Show_Str(30,70,200,16,"GBK字庫測試程序",16,0);
// Show_Str(30,90,200,16,"嵌入式開發網mcudev",16,0);
// Show_Str(30,110,200,16,"2015年8月15日",16,0);
// Show_Str(30,130,200,16,"按KEY0,更新字庫",16,0);
// POINT_COLOR=BLUE;
// Show_Str(30,150,200,16,"林本源vdfdhdfhfhfhfgh斯蒂芬歸還建行開戶結果就發給回復:",16,0);
……………………
…………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼
所有資料51hei提供下載:
CS_show_HZ.rar
(8.96 MB, 下載次數: 88)
2018-4-30 12:39 上傳
點擊文件名下載附件
用來更新字庫,以便讀取SD卡
下載積分: 黑幣 -5
作者:
icqw1983
時間:
2019-10-14 13:48
正是需要的,謝謝!
作者:
icqw1983
時間:
2019-10-14 13:49
這個要支持一下!
歡迎光臨 (http://www.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
日本黄视频在线观看
|
激情自拍偷拍
|
99精品久久99久久久久
|
日日夜夜精品视频
|
欧美日韩亚洲视频
|
国产成人精品久久二区二区91
|
国产亚洲欧美在线
|
久久99久久久久
|
日本a∨精品中文字幕在线 亚洲91视频
|
久久精品国产99国产精品
|
国产福利免费视频
|
av香港经典三级级 在线
|
黄色片在线观看网址
|
91免费观看
|
国产精品一区二区三级
|
国产成人99久久亚洲综合精品
|
成人在线精品视频
|
国产在线一区二区三区
|
免费看a
|
天天爱天天操
|
午夜影院污
|
亚洲天堂成人在线视频
|
人人性人人性碰国产
|
国产在线精品一区二区
|
国产精品视频网站
|
国产农村妇女毛片精品久久麻豆
|
婷婷二区
|
99精品久久久久久久
|
亚洲淫视频
|
日韩精品久久一区二区三区
|
久久国内
|
精品成人佐山爱一区二区
|
美女艹b
|
精品亚洲一区二区三区四区五区
|
日韩二区
|
国产欧美一区二区三区国产幕精品
|
a黄毛片
|
国产精品久久一区
|
国产区视频在线观看
|
午夜电影在线播放
|
午夜视频在线视频
|