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

上传人:大张伟 文档编号:11781570 上传时间:2021-09-08 格式:DOCX 页数:7 大小:67.61KB
返回 下载 相关 举报
stm32控制lcd1602并且测试通过.docx_第1页
第1页 / 共7页
stm32控制lcd1602并且测试通过.docx_第2页
第2页 / 共7页
stm32控制lcd1602并且测试通过.docx_第3页
第3页 / 共7页
stm32控制lcd1602并且测试通过.docx_第4页
第4页 / 共7页
stm32控制lcd1602并且测试通过.docx_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《stm32控制lcd1602并且测试通过.docx》由会员分享,可在线阅读,更多相关《stm32控制lcd1602并且测试通过.docx(7页珍藏版)》请在三一文库上搜索。

1、/PD15-PD8 对应 LCD1602 的 D7-D0/PCORS/PC1WR/PC2E#includeH/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() G

2、PIO_SetBits(GPIOC,GPIO_Pin_2); /使能#define Reset_E() GPIO_ResetBits(GPIOC,GPIO_Pin_2);/失能uint8_t Buffer1=TGasdkkk;uint8_t Buffer2=CDABabcdefghijkl;uint8_t Buffer;GPIOJnitTypeDef GPIO InitStructure;void RCC_Config(void);void GPIO Config(void);void Busy_Wait(void);void Write_Cmd(uint8_t Cmd);void Write

3、_Data(uint8_t Data);void Write_String(uint8_t cmd,uint8_t* p);void LCD1602_lnit(void);void Delay(uint32_tt);/uint8_t Read_Data(void);int main(void)(RCC_Config();GPIO_Config();LCD1602_lnit();Write_String(0x80,Buffer1);Write_String(0xc0,Buffer2);while(1);void RCC_Config(void) (Systemlnit();RCC_APB2Per

4、iphClockCmd(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_lnit(GPIOD,&GPIO_lnitStructure);=GPIO_Pin_0|GPIO_Pin_1|GPIO_Pin_2;GPIO_lnit(GPIOC,&GPIO_lnitStructure);void Busy_Wait(void)(=GPIO Pin All;=G

5、PIO Mode IN FLOATING;GPIO_lnit(GPIOD,&GPIO_lnitStructure);Reset_RS();Set_RW();Reset_E();/Delay ;Set_E();/ Delay(25);while(GPIO_ReadlnputDataBit(GPIOD,GPIO_Pin_15)=1);=GPIO Pin All;=GPIO Mode Out PP;=G PIO_Speed_50 M Hz;GPIO_lnit(GPIOD,&GPIOJnitStructure);void Write_Cmd(uint8_t Cmd) (Busy_Wait();Rese

6、t_RS();Reset_RW();Reset_E();/ Delay;Set_E();GPIO_Write(GPIOD,(OxffOO&(Cmd8);/*GPIO_WriteBit(GPIOE,GPIO_Pin_10,(BitAction)(Cmd&Ox80)7);/D7GPIO_WriteBit(GPIOE,GPIO_Pin_9J(BitAction)(Cmd&Ox40)6);/D6GPIO_WriteBit(GPIOE,GPIO_Pin_8,(BitAction)(Cmd&Ox20)5);/D5GPIO_WriteBit(GPIOE,GPIO_Pin_7,(BitAction)(Cmd&

7、Ox10)4);/D4GPIO_WriteBit(GPIOD,GPIO_Pin_1,(BitAction)(Cmd&Ox08)3);/D3GPIO_WriteBit(GPIOD,GPIO_Pin_0,(BitAction)(Cmd&Ox04)2);/D2GPIO_WriteBit(GPIOD,GPIO_Pin_15J(BitAction)(Cmd&Ox02)1);/D1GPIO_WriteBit(GPIOD,GPIO_Pin_14,(BitAction)(Cmd&Ox01);/DO7/Delay(25);void Write_Data(uint8_t Data)Busy_Wait();Set_

8、RS();Reset_RW();Reset_E();/ Delay;Set_E();GPIO_Write(GPIOD,(OxffOO&(Data8);GPIO_WriteBit(GPIOE,GPIO_Pin_10,(BitAction)(Data&Ox80)7);/D7GPIO_WriteBit(GPIOE,GPIO_Pin_9J(BitAction)(Data&Ox40)6);/D6GPIO_WriteBit(GPIOE,GPIO_Pin_8J(BitAction)(Data&Ox20)5);/D5GPIO_WriteBit(GPIOE,GPIO_Pin_7,(BitAction)(Data

9、&Ox10)4);/D4GPIO_WriteBit(GPIOD,GPIO_Pin_1,(BitAction)(Data&Ox08)3);/D3GPIO_WriteBit(GPIOD,GPIO_Pin_0,(BitAction)(Data&Ox04)2);/D2GPIO_WriteBit(GPIOD,GPIO_Pin_15,(BitAction)(Data&0x02)1); /D1GPIO_WriteBit(GPIOD,GPIO_Pin_14,(BitAction)(Data&Ox01);/DO7/ Delay(25);void Write_String(uint8_t cmd,uint8_t*

10、 p) (/uint8_t i=0;Write_Cmd(cmd);while(*p!=0,)Reset_E();Write_Data(*p+);/ Bufferi+=Read_Data();) void LCD1602Jnit(void)(Write_Cmd(0x38);Write_Cmd(0x0c);Write_Cmd(0x06);Write_Cmd(0x01);/14nsvoid Delay(_IO uint32_t t)(while(t-);/*uint8_t Read_Data(void)(uint8_t Value;Busy_Wait();Reset_WR();Reset_E();D

11、elay(5);Set_E();Value=GPIO_ReadOutputDataBit(GPIOE,GPIO_Pin_10)|GPIO_ReadOutputDataBit(GPIOE,GPIO_Pin_9)|GPIO_ReadOutputDataBit(GPIOE,GPIO_Pin_8)|GPIO_ReadOutputDataBit(GPIOE,GPIO_Pin_7)|GPIO_ReadOutputDataBit(GPIOD,GPIO_Pin_1)|GPIO_ReadOutputDataBit(GPIOD,GPIO_Pin_0)|GPIO_ReadOutputDataBit(GPIOD,GPIO_Pin_15)|GPIO_ReadOutputDataBit(GPIOD,GPIO_Pin_14);Delay(25);Reset_E();return Value;7

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 科普知识


经营许可证编号:宁ICP备18001539号-1