电子工程师技术服务社区
- 社区首页
- 下载
- 采用SPI Flash存储中文字符库.zip
资料描述
当需要液晶显示的时候,汉字的显示一直不是那么方便(在没有*字库的情况下)。
如果纯粹取模的话,就要考虑自作一个字库需要花费的时间和占用的flash资源。对于ucos
来说,就像楼主使用的破开发板,只有256kflash,一个16*16 gb点阵字库就要占用200k+,
自然是不可能放入用户源码的。于是乎,楼主开始使用*字库,关于*字库碰到的一些问题
在这里给大家简单说说,有用的话的就给楼主赞一个,哈哈哈
1.关于gb2312,自己百度http://baike.baidu.com/view/443268.htm?from_id=483170&type=
syn&fromtitle=gb2312&fr=aladdin 也有gbk等的介绍
2.字库一般选用flash器件,采用spi协议通信,通常4兆的片子足够使用常用字库的存储。
3,自制字库,最后会放上楼主曾用过的资源。纤细过程(加一些格式,好看得清楚,哈哈哈):
第一步,当然需要你将你所用的spiflasn的初始化以及读写函数写好(我使用的w25x16,2m,传输
速率最大74mhz,很快的;
写函数:void w25x_write_bytes(uint32_t addr,u8* pbuffer, u16 nbytes) 注:w25x16写时,
需要先擦除。
读函数:void w25x_read_bytes(uint32_t addr, u8* pbuffer, u16 nbytes)
第二步,编写串口传输函数,采用串口中断的方式,波特率设置为115200(测试没有问题),
接收外部输入的一个字节后立马将其写入spi flash。与之前两个字符表示一个字节的方法速
度提升
一倍。
代码:
u8 result;
u32 paddr=0;
void usart1_irqhandler(void)
{
if(usart_getitstatus(usart1,usart_it_rxne)!=reset)
{
result = usart_receivedata(usart1);