在矩阵按键的扫描电路中,有很多是加入了二极管的,那么,二极管的作用是什么呢?
既然加入了二极管,那我们就要去了解二极管的单向导电性。
1、正向特性
在电子电路中,将二极管的正极接在高电位端,负极接在低电位端,二极管就会导通,这种连接方式,称为正向偏置。必须说明,当加在二极管两端的正向电压很小时,二极管仍然不能导通,流过二极管的正向电流十分微弱。
只有当正向电压达到某一数值(这一数值称为“门槛电压”,锗管约为0.2V,硅管约为0.6V)以后,二极管才能直正导通。导通后二极管两端的电压基本上保持不变(锗管约为0.3V,硅管约为0.7V),称为二极管的“正向压降”。
2、反向特性
在电子电路中,二极管的正极接在低电位端,负极接在高电位端,此时二极管中几乎没有电流流过,此时二极管处于截止状态,这种连接方式,称为反向偏置。
二极管处于反向偏置时,仍然会有微弱的反向电流流过二极管,称为漏电流。当二极管两端的反向电压增大到某一数值,反向电流会急剧增大,二极管将失去单方向导电特性,这种状态称为二极管的击穿。
了解了二极管的单向导电性之后,我们看下面的电路,列是扫描端,行端口检测到高电平代表有按键按下。
假如图中没有二极管,当第一列输出高电平,其余列输出低电平时,我同时将S13、S14按键按下,此时能检测到按键按下吗?答案是不能的,因为此时相当于扫描端的第一列端口和第二列端口直接短路,图中红色线部分,对应行端口检测不到有效电平(高电平)。这种状态就检测不到按键按下,对应的按键功能就无法触发。
为了解决这个问题,就引入了二极管,二极管的正极接在低电位端,负极接在高电位端,此时二极管中几乎没有电流流过,此时二极管处于截止状态。即使同时按了两个按键仍然可以检测到。二极管的作用就是不让扫描端口“打架”,能够让按键扫描正常稳定的工作。
二极管在按键扫描中还用作拓展按键的个数,如下图按键排列是一个对称的三角形,只是增加了5个二极管,但是按键的数量却增加了一倍,IO口更是仅仅才用了5个,对于一些资源紧缺的单片机,是很好的解决方案,只是按键处理工作量会增加。当然还可以在下图的基础上继续增加按键。感兴趣的小伙伴可以自行Google。