驱动字库芯片GT23L24M0140
扫描二维码
随时随地手机看文章
环境:
主机:WIN8
开发环境:MDK5.13
mcu: stm32f407VGIGH6
字库芯片:GT23L24M0140
说明:
GT23L24M0140是一款支持GB18030标准的字库芯片,有多种大小的字体可供选择。
本文驱动了其中常用的字体。
源代码:
drv_font.h
/*********************************************************************
*字库芯片驱动层头文件
*(c)copyright2013,jdh
*AllRightReserved
*新建日期:2015/2/2byjdh
*修改日期:2015/2/3byjdh
**********************************************************************/
/*********************************************************************
硬件连接说明
电路标号单片机引脚特殊功能
SPI1_NSSPA4SPI1_NSS
SPI1_MISOPA6SPI1_MISO
SPI1_MOSIPA7SPI1_MOSI
SPI1_SCKPA5SPI1_SCK
**********************************************************************/
#ifndef_DRV_FONT_H_
#define_DRV_FONT_H_
/*********************************************************************
*头文件
**********************************************************************/
#include"stm32f4xx.h"
/*********************************************************************
*函数
**********************************************************************/
/*********************************************************************
*初始化字库芯片
**********************************************************************/
voiddrv_font_init(void);
/*********************************************************************
*打开SPI使能
**********************************************************************/
voiddrv_font_enable(void);
/*********************************************************************
*关闭SPI使能
**********************************************************************/
voiddrv_font_disable(void);
/*********************************************************************
*spi发送一个字节
*参数:dat:数据
*返回:spi接收到的字节
**********************************************************************/
uint8_tdrv_font_send_byte(uint8_tdat);
#endif
drv_font.c
/*********************************************************************
*字库芯片驱动层文件
*(c)copyright2015,jdh
*AllRightReserved
*新建日期:2015/2/2byjdh
*修改日期:2015/2/3byjdh
**********************************************************************/
/*********************************************************************
*头文件
**********************************************************************/
#include"drv_font.h"
/*********************************************************************
*静态函数
**********************************************************************/
/*********************************************************************
*初始化spi
**********************************************************************/
staticvoidinit_spi(void);
/*********************************************************************
*函数
**********************************************************************/
/*********************************************************************
*初始化字库芯片
**********************************************************************/
voiddrv_font_init(void)
{
//初始化spi
init_spi();
}
/*********************************************************************
*打开SPI使能
**********************************************************************/
voiddrv_font_enable(void)
{
GPIO_ResetBits(GPIOA,GPIO_Pin_4);
}
/*********************************************************************
*关闭SPI使能
**********************************************************************/
voiddrv_font_disable(void)
{
GPIO_SetBits(GPIOA,GPIO_Pin_4);
}
/*********************************************************************
*spi发送一个字节
*参数:dat:数据
*返回:spi接收到的字节
**********************************************************************/
uint8_tdrv_font_send_byte(uint8_tdat)
{
while((SPI1->SR&SPI_I2S_FLAG_TXE)==(uint16_t)RESET);
SPI1->DR=dat;
while((SPI1->SR&SPI_I2S_FLAG_RXNE)==(uint16_t)RESET);
return(SPI1->DR);
}
/*********************************************************************
*初始化spi
**********************************************************************/