给你改写成4个独立按键P3.0 、P3.1 、P3.2 、P3.3 与串口共用P3.0 、P3.1 ,1602显示键值的示例。
|
因为你的串口发送是在串口中断里的,但是按照你的想法是按一下串口发一个数,但是从一开始直到按键按下串口始终没有接收到外部发送的数据,那怎么会进入串口中断函数呢,所以你应该把你这个串口中断函数改为普通函数,然后把这个程序加在每个按键程序有按下情况的判断后面,这样就可以了。 |
csmyldl 发表于 2019-12-21 00:54 这个我已经修改了 按照开发板原理图RXD=k1 TXD=K2 我把K1定义3.0 TXD定义3.1 但是按键显示在1602的就是不对 K1按下显示B K2 按下显示A 我不知道是不是原理图错了 把K1 K2调换就对了 手里有没有万用表 现在的问题是串口可以显示字符了 不过只有K2按下可以直接显示字符 B 其他按键 需要按下后 再按下K2键才能显示对应字符 如按下K3 后 再按下K2才能显示K3的字符C |
按键延时消抖的时间是不是长了,10ms就可以了 |
液晶上显示B就是按下K1后的结果,按下K2将显示C,这是对的,因为你显示的内容是数组a[]中的内容,按下K1后,anjian=1,对应字母B,按下K2后,anjian=2,对应字母C |
因为你的串口发送是在串口中断里的,但是按照你的想法是按一下串口发一个数,但是从一开始直到按键按下串口始终没有接收到外部发送的数据,那怎么会进入串口中断函数呢,所以你应该把你这个串口中断函数改为普通函数,然后把这个程序加在每个按键程序有按下情况的判断后面,这样就可以了。 |
1576905479516..jpg (2.01 MB, 下载次数: 74)