OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2223|回复: 7

LCD12864一显示按键就失灵,需要重新对KEY进行初始化才可以用

[复制链接]

14

主题

28

帖子

0

精华

初级会员

Rank: 2

积分
118
金钱
118
注册时间
2018-4-24
在线时间
41 小时
发表于 2018-7-31 18:06:32 | 显示全部楼层 |阅读模式
5金钱
用C8T6画的板子,LCD12864每次进行void LCD12864_WriteData(uchar x)函数后,按键就无法使用了,但是之后对KEY进行初始化又能按一次,所以每次void LCD12864_WriteData(uchar x)函数完了之后我都得KEY_Init(),请问是什么原因呢?排查了就是进入了LCD12864_WriteData这个函数所以按键失灵了,请教各位大神。 微信图片_20180731175740.png
微信图片_20180731175935.png
微信图片_20180731180057.png
微信图片_20180731180121.png



最佳答案

查看完整内容[请看2#楼]

把高8位读出来整体写入 GPIO_Write(GPIOA,((dat
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

51

主题

2166

帖子

2

精华

论坛元老

Rank: 8Rank: 8

积分
10653
金钱
10653
注册时间
2017-4-14
在线时间
2780 小时
发表于 2018-7-31 18:06:33 | 显示全部楼层
DansonZ 发表于 2018-8-1 09:38
是的,那该如何修改成只写A引脚的低8位呢?

把高8位读出来整体写入  GPIO_Write(GPIOA,((dat<<0)|(GPIO_ReadOutputData(GPIOA)&0xff00)));
回复

使用道具 举报

51

主题

2166

帖子

2

精华

论坛元老

Rank: 8Rank: 8

积分
10653
金钱
10653
注册时间
2017-4-14
在线时间
2780 小时
发表于 2018-7-31 18:53:03 | 显示全部楼层
按键和屏幕引脚重复了吧,看你屏幕用GPIOa  按键也有
回复

使用道具 举报

14

主题

28

帖子

0

精华

初级会员

Rank: 2

积分
118
金钱
118
注册时间
2018-4-24
在线时间
41 小时
 楼主| 发表于 2018-7-31 19:52:06 | 显示全部楼层
275891381 发表于 2018-7-31 18:53
按键和屏幕引脚重复了吧,看你屏幕用GPIOa  按键也有

我LCD只用了PA0-PA7,我有两个按键用的是PA8,PA11,没有重复啊 而且其他用PB引脚的按键也失灵了
回复

使用道具 举报

51

主题

2166

帖子

2

精华

论坛元老

Rank: 8Rank: 8

积分
10653
金钱
10653
注册时间
2017-4-14
在线时间
2780 小时
发表于 2018-7-31 20:01:04 | 显示全部楼层
DansonZ 发表于 2018-7-31 19:52
我LCD只用了PA0-PA7,我有两个按键用的是PA8,PA11,没有重复啊 而且其他用PB引脚的按键也失灵了

GPIO_Write(GPIOA,dat);不是把A引脚都写了?
回复

使用道具 举报

14

主题

28

帖子

0

精华

初级会员

Rank: 2

积分
118
金钱
118
注册时间
2018-4-24
在线时间
41 小时
 楼主| 发表于 2018-8-1 09:38:17 | 显示全部楼层
275891381 发表于 2018-7-31 20:01
GPIO_Write(GPIOA,dat);不是把A引脚都写了?

微信图片_20180801093312.png 是的,那该如何修改成只写A引脚的低8位呢?
回复

使用道具 举报

14

主题

28

帖子

0

精华

初级会员

Rank: 2

积分
118
金钱
118
注册时间
2018-4-24
在线时间
41 小时
 楼主| 发表于 2018-8-1 11:15:42 | 显示全部楼层
275891381 发表于 2018-8-1 09:46
把高8位读出来整体写入  GPIO_Write(GPIOA,((dat

微信图片_20180801111421.png
是这样吗?  更换了还是不行
回复

使用道具 举报

4

主题

349

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1046
金钱
1046
注册时间
2017-5-19
在线时间
335 小时
发表于 2018-8-1 13:34:42 | 显示全部楼层
GPIOA->BSRR = (dat) & 0xff;        //输出1
GPIOA->BRR = (~dat) & 0xff;//输出0
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-18 03:06

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表