pe1上是一个按键,用内部上拉电阻。 lcd部分初始化代码是这样的。 void LCDInit(){ CLK_PCKENR2_PCKEN23=1; //启动lcd的时钟 CLK_CRTCR=0x84; //设置 LCD_CR1=0x05; LCD_CR2=0x21; LCD_FRQ=0x00; LCD_PM0=0x00; LCD_PM1=0x80; LCD_PM2=0xbf; LCD_PM3=0x0f; LCD_CR3_LCDEN=1; } 只要关了lcd时钟或者不启动LCD_CR3_LCDEN。按键一切正常。一启动后,用示波器看,电压跟ac一样的曲线,然后在1.2v左右~0v之间波动。 求指导。先谢谢 |
只能在屏幕模块的LCDEN引脚电阻强拉到低,断开此引脚了。这样改动最小,想想是吗?
评分
查看全部评分
评分
查看全部评分
参考ST官方手册:PE1是LCD的段码Segment2,楼主既然使能了片子的LCD功能,PE1当然不能再当普通IO口使用了。楼主应该仔细阅读手册,找到与LCD驱动无关的IO口来充当按键使用。
https://www.stmcu.org.cn/document/detail/index/id-213027
评分
查看全部评分
LCD_CR3_LCDEN 是LCD控制器使能控制位 就像6楼说的 你开启了LCD时钟或者使能了LCD控制器 那么单片机默认就把PE1当成LCD控制引脚了 你外部上来只是强制拉高了 LCD段码屏默认是1/3电压 供电在3.3V左右的话 所以PE1口的电压在1.2左右到0V之间跳动 也是正常现象
评分
查看全部评分
评分
查看全部评分
试试在LCD_CR3_LCDEN关闭时,
快速切换到IO模式,完成按键检测后,
再切换到LED控制,
只要速度够快(比如20ms检测一次按键,每次耗时小于1ms),应该是不影响的。
评分
查看全部评分
如果该引脚有驱动段码屏的段位的话 肯定会影响段位的显示的,当然如果时间够短的话 可能人眼无法察觉 但是这种方式 肯定会对段位或者按键的体验有影响的
评分
查看全部评分