资源简介
基于STM32的12832液晶显示驱动,包含LCD的初始化,字符显示,清屏等操作。
代码片段和文件信息
#include “stm32f10x.h“
#include “user_Config.h“
#include “SysTick.h“
//#include “ds18b20.h“
extern u8 keyval;
extern u8 flash_value;
extern u8 time_data_flag;
extern u8 flash_flag;
extern __IO u32 TimingDelay;
extern __IO uint32_t TimeDisplay;
unsigned char AC_TABLE[]={
0x800x810x820x830x840x850x860x87 //第一行汉字位置
0x900x910x920x930x940x950x960x97 //第二行汉字位置
};
void CheckBusy( void )
{
unsigned char retb;
GPIO_InitTypeDef GPIO_InitStructure;
GPIO_InitStructure.GPIO_Pin = LCD_DATA0|LCD_DATA1|LCD_DATA2|LCD_DATA3;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU; //GPIO工作在输出模式
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(GPIO_LCDDATA_C &GPIO_InitStructure);
GPIO_InitStructure.GPIO_Pin =LCD_DATA4|LCD_DATA5|LCD_DATA6|LCD_DATA7;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU; //GPIO工作在输出模式
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(GPIO_LCDDATA_A &GPIO_InitStructure);
do{
LCD_RS_LOW;//GPIO_ResetBits(GPIO_LCDCTLlcd_rs);
LCD_RW_HIGH;//GPIO_SetBits(GPIO_LCDCTLlcd_rw);
delay_us(1);
LCD_E_HIGH;//GPIO_SetBits(GPIO_LCDCTLlcd_e);
delay_us(1);
retb=GPIO_ReadInputDataBit(GPIO_LCDDATA_ALCD_DATA7);
LCD_E_LOW;//GPIO_ResetBits(GPIO_LCDCTLlcd_e);
}
while((retb)!=0);
delay_us(1);
GPIO_InitStructure.GPIO_Pin = LCD_DATA0|LCD_DATA1|LCD_DATA2|LCD_DATA3;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; //GPIO工作在输出模式
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(GPIO_LCDDATA_C &GPIO_InitStructure);
GPIO_InitStructure.GPIO_Pin =LCD_DATA4|LCD_DATA5|LCD_DATA6|LCD_DATA7;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; //GPIO工作在输出模式
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(GPIO_LCDDATA_A &GPIO_InitStructure);
}
void WriteCommand( unsigned char Cbyte )
{
CheckBusy();
LCD_RS_LOW;//GPIO_ResetBits(GPIO_LCDCTLlcd_rs);
LCD_RW_LOW;//GPIO_ResetBits(GPIO_LCDCTLlcd_rw);
delay_us(1);
GPIO_WriteBit(GPIO_LCDDATA_CLCD_DATA0(BitAction)((Cbyte>>0)&0x01));
GPIO_WriteBit(GPIO_LCDDATA_CLCD_DATA1(BitAction)((Cbyte>>1)&0x01));
GPIO_WriteBit(GPIO_LCDDATA_CLCD_DATA2(BitAction)((Cbyte>>2)&0x01));
GPIO_WriteBit(GPIO_LCDDATA_CLCD_DATA3(BitAction)((Cbyte>>3)&0x01));
GPIO_WriteBit(GPIO_LCDDATA_ALCD_DATA4(BitAction)((Cbyte>>4)&0x01));
GPIO_WriteBit(GPIO_LCDDATA_ALCD_DATA5(BitAction)((Cbyte>>5)&0x01));
GPIO_WriteBit(GPIO_LCDDATA_ALCD_DATA6(BitAction)((Cbyte>>6)&0x01));
GPIO_WriteBit(GPIO_LCDDATA_ALCD_DATA7(BitAction)((Cbyte>>7)&0x01));
LCD_E_HIGH;//GPIO_SetBits(GPIO_LCDCTLlcd_e);
delay_us(1);
LCD_E_LOW;//GPIO_ResetBits(GPIO_LCDCTLlcd_e);
}
void WriteData( unsigned char Dbyte )
{
CheckBusy();
LCD_RS_HIGH;//GPIO_SetBits(GPIO_LCDCTLlcd_rs);
LCD_RW_LOW;//GPIO_ResetBits(GPIO_LCDCTLlcd_rw);
delay_us(1);
G
- 上一篇:IIS PUT Scanner 1.3
- 下一篇:基于des前后端加密解密
相关资源
- STM32 智能充电器原理图
- STM32全部系列芯片protel99se的库sch
- HMC5883L-STM32驱动程序
- 野火STM32开发板串口1接收-串口2转发
- STM32模拟I2C驱动PN532
- STM32f103 ADC采集电压数据 显示在LCD液晶
- STM32下MCP2515驱动
- STM32 F103R6 GPIO 闪烁源代码Keil及protue
- STM32 唯一序列号用于程序
- STM32 SDIO FATFS
- 5 UARTRecIT.zip
- stm32控制esp8266访问web
- 超完整的STM32的STM32 SD卡 TATFS文件格式
- STM32F103 LORA配置
- STM32 PWM输出不同相位差和占空比
- STM32 同一定时器不同通道产生不同频
- 铭正同创液晶STM32 240128 源码
- STM32F4 串口DMA发送接收方式代码例程
- stm32 SDIO操作库
- STM32 FM25CL64B 铁电存储器
- STM32 库函数的485通讯测试程序
- ODrive-fw-v0.3.6_keil.zip
- STM32F103的PWM的扫频程序
- ADS1292驱动程序 STM32 2020省TI杯电赛资
- STM32F103读取MPU6050原始数据
- stm32+esp8266
- STM32F4驱动线阵CCD——TCD1304
- stm32 IO口方式驱动WS2813B
- STM32f103两线PT100例程.rar
- STM32LL库使用指南工程模板
评论
共有 条评论