1 / 5
文档名称:

stm32控制 lcd1602 并且测试通过.doc

格式:doc   大小:39KB   页数:5页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

stm32控制 lcd1602 并且测试通过.doc

上传人:mh900965 2018/1/14 文件大小:39 KB

下载得到文件列表

stm32控制 lcd1602 并且测试通过.doc

文档介绍

文档介绍://PD15-PD8 对应 LCD1602的D7-D0
//PC0 RS
//PC1 WR
//PC2 E

#include""
//LCD1602 的命令状态
#define Set_RS() GPIO_SetBits(GPIOC,GPIO_Pin_0); // 数据
#define Reset_RS() GPIO_ResetBits(GPIOC,GPIO_Pin_0); // 命令状态
#define Set_RW() GPIO_SetBits(GPIOC,GPIO_Pin_1); // 读
#define Reset_RW() GPIO_ResetBits(GPIOC,GPIO_Pin_1);// 写
#define Set_E() GPIO_SetBits(GPIOC,GPIO_Pin_2); // 使能
#define Reset_E() GPIO_ResetBits(GPIOC,GPIO_Pin_2);// 失能
uint8_t Buffer1[]={"FGasdkkk"};
uint8_t Buffer2[]={"CDABabcdefghijkl"};
uint8_t Buffer[];
GPIO_InitTypeDef GPIO_InitStructure;
void RCC_Config(void);
void GPIO_Config(void);
void Busy_Wait(void);
void Write_Cmd(uint8_t Cmd);
void Write_Data(uint8_t Data);
void Write_String(uint8_t cmd,uint8_t* p);
void LCD1602_Init(void);
void Delay(uint32_t t);
//uint8_t Read_Data(void);
int main(void)
{
RCC_Config();
GPIO_Config();
LCD1602_Init();
Write_String(0x80,Buffer1);
Write_String(0xc0,Buffer2);
while(1);
}
void RCC_Config(void)
{
SystemInit();
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOD|RCC_APB2Periph_GPIOC|RCC_APB2Periph_AFIO,ENABLE);
}
void GPIO_Config(void)
{
=GPIO_Pin_All;
=GPIO_Mode_Out_PP;
=GPIO_Speed_50MHz;
GPIO_Init(GPIOD,&GPIO_InitStructure);
=GPIO_Pin_0|GPIO_Pin_1|GPIO_Pin_2;
GPI