由于之前没认真看datasheet及示例,没注意芯片带SPIM,结果把板上的原本用作SPIM的FLASH EN25QH128当作SPI用了。
还发帖,发了牢骚,是我错了,请大家原谅~
但是已经错了,咋办,将错就错吧。这里做了下将汉字字库存储到EN25QH128里面,并通过LCD显示出来。流程参考的正点原子。
在这之前,我已将EN25QH128连接到SPI4上面了(错误示范,请勿模仿~)
//这里经过修改让SPI4 驱动W25Q128
//管脚定义
//EN25QH128_SCK--> PE2-->SPI4_SCK
//EN25QH128_NSS--> PE4-->SPI4_NSS
//EN25QH128_MOSI-->PE6-->SPI4_MOSI
//EN25QH128_MISO-->PE5-->SPI4_MISO
//WP/HOLD全部接高电平
例子是按照W25QXX改动的,仅更改了ID号,其余SPI读写方式,经查看datasheet几乎一致。
主要思路,先将汉字库存到SD卡,固定目录下。然后MCU上电检测EN25QH128有无该目录文件。没有就从SD卡里面拷贝到本身里面。
EN25QH128 FLASH的划分: 前12M字节给fatfs用,12M字节后,用于存放字库,字库占用3.09M.15.10M字节以后,给客户自己用,最好用后面100K。
//字库存放在磁盘中的路径:存储卡根目录:
"/SYSTEM/FONT/GBK24.FON"; //GBK24的存放位置
"/SYSTEM/FONT/GBK16.FON"; //GBK16的存放位置
"/SYSTEM/FONT/GBK12.FON"; //GBK12的存放位置
"/SYSTEM/FONT/UNIGBK.BIN"; //UNIGBK.BIN的存放位置
/////////////////////////////////////////////////////////////////////////////////////////////////////
程序没啥好说的,之前的LCD及SD及FATFS均移植好了,我们仅在之前程序上略作修改。
其中FATFS的配置文件要修改下,要开启汉字支持~
直接上图:
代码:
SPI_LCD _FATFS_HzShow.rar
(5.78 MB)
字库:
SYSTEM.rar
(1.44 MB)
受打击了,先闭关一整子~
|