驱动字库芯片GT23L24M0140

               


驱动字库芯片GT23L24M0140


本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明.


环境:

主机:WIN8

开发环境:MDK5.13

mcu: stm32f407VGIGH6

字库芯片:GT23L24M0140


说明:

GT23L24M0140是一款支持GB18030标准的字库芯片,有多种大小的字体可供选择。

本文驱动了其中常用的字体。


源代码:

drv_font.h

/**********************************************************************        字库芯片驱动层头文件*      (c)copyright 2013,jdh*        All Right Reserved*新建日期:2015/2/2 by jdh*修改日期:2015/2/3 by jdh**********************************************************************//*********************************************************************硬件连接说明电路标号   单片机引脚   特殊功能SPI1_NSS          PA4     SPI1_NSS     SPI1_MISO   PA6     SPI1_MISOSPI1_MOSI   PA7     SPI1_MOSISPI1_SCK   PA5     SPI1_SCK**********************************************************************/#ifndef _DRV_FONT_H_#define _DRV_FONT_H_/**********************************************************************       头文件**********************************************************************/#include "stm32f4xx.h"/**********************************************************************       函数**********************************************************************//**********************************************************************       初始化字库芯片**********************************************************************/void drv_font_init(void);/**********************************************************************       打开SPI使能**********************************************************************/void drv_font_enable(void);/**********************************************************************       关闭SPI使能**********************************************************************/void drv_font_disable(void);/**********************************************************************       spi发送一个字节*参数:dat:数据*返回:spi接收到的字节**********************************************************************/uint8_t drv_font_send_byte(uint8_t dat);#endif

drv_font.c

/**********************************************************************        字库芯片驱动层文件*      (c)copyright 2015,jdh*        All Right Reserved*新建日期:2015/2/2 by jdh*修改日期:2015/2/3 by jdh**********************************************************************//**********************************************************************       头文件**********************************************************************/#include "drv_font.h"/**********************************************************************       静态函数**********************************************************************//**********************************************************************       初始化spi**********************************************************************/static void init_spi(void);/**********************************************************************       函数**********************************************************************//**********************************************************************       初始化字库芯片**********************************************************************/void drv_font_init(void)//初始化spi init_spi();}/**********************************************************************       打开SPI使能**********************************************************************/void drv_font_enable(void){ GPIO_ResetBits(GPIOA, GPIO_Pin_4);}/**********************************************************************       关闭SPI使能**********************************************************************/void drv_font_disable(void){ GPIO_SetBits(GPIOA, GPIO_Pin_4);}/**********************************************************************       spi发送一个字节*参数:dat:数据*返回:spi接收到的字节**********************************************************************/uint8_t drv_font_send_byte(uint8_t dat){ 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**********************************************************************/static void init_spi(void)//定义IO初始化结构体 GPIO_InitTypeDef GPIO_InitStructure ; //定义SPI初始化结构体 SPI_InitTypeDef  SPI_InitStructure ; //配置CS //初始化时钟    RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA, ENABLE); GPIO_PinAFConfig(GPIOA,GPIO_PinSource4,GPIO_AF_SPI1);    //管脚模式:输出口    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;     //类型:推挽模式 GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;     //上拉下拉设置 GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;     //IO口速度 GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;    //管脚指定 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_4;    //初始化 GPIO_Init(GPIOA, &GPIO_InitStructure); //关闭使能 drv_font_disable(); //初始化SPI //关闭SPI SPI_Cmd(SPI1,DISABLE); //初始化SPI时钟  RCC_APB2PeriphClockCmd(RCC_APB2Periph_SPI1,ENABLE); //设置IO口时钟       RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA, ENABLE);  GPIO_PinAFConfig(GPIOA,GPIO_PinSource5,GPIO_AF_SPI1);   GPIO_PinAFConfig(GPIOA,GPIO_PinSource6,GPIO_AF_SPI1); GPIO_PinAFConfig(GPIOA,GPIO_PinSource7,GPIO_AF_SPI1);    //管脚模式:输出口    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;     //类型:推挽模式 GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;     //上拉下拉设置 GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;  //IO口速度 GPIO_Ini
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值