C51单片机006-矩阵键盘+LCD1602

关于矩阵键盘和数码管:

 

 关于独立按键和矩阵按键:

 

 

 

矩阵按键每个按键各有两个io口连接,其实就相当于,

先选中第1/2/3/4行(列)接地,然后再读取另一个不接地的io口上的电平,这样就可以知道现在是哪一个按键按下了。

举例:现在选中第二行,从上到下就是1011(P17-1,P16-0,P15-1,P14-1)

此时读取的按键就是S5、S6、S7、S8(读取P13,P12,P11,P10的电平)

如果此时P11的电平为0,则此时S7被按下。

 关于单片机IO口输入输出的一些浅显的电路解释:

 假设现在P2_0=1;(PS:因为上电之后默认就是高电平)

(之前说过单片机是弱上拉,强下拉)

然后按键的另一端(这里假设是P1_0)P1_0设定为低电平0V

 

然后当按键按下的时候,P2_0原本的高电平就会被拉低,变成低电平。(之前说过单片机是弱上拉,强下拉)

关于单片机的IO口:

准双向口输出配置

 

 

谨记:能容易看出逻辑方法的代码才是好代码,哪怕方法笨一点也无所谓(反正单片机速度快,也不影响)

 

posted @ 2023-03-25 12:40  鬼幽电z  阅读(205)  评论(0编辑  收藏  举报