我在看戴上举老师的《删繁就简-单片机入门到精通》。
看到第二章《单片机应用小技巧》第15部分键盘扫描
第98页,见附件的图,我用相机拍下来的。
本来书上说是5*6键盘模式,Pm.0~Pm.5是行扫描线,Pn.0~Pn.4是列扫描线。
上图是一部分,并且给矩阵键盘加上了一些二极管。
书上说,扫描键盘程序为Pn.x输出高的时候同时其他Pn.y输出低,现在键被按下的行输入状态会随其所在列输出
高低状态相应变化,相互不会产生冲突。比如同时按下键1、键2和键6.
Pn.0输出高和低时Pm.0和Pm.1都能读到1和0。。。。。。
我不大明白,当Pn.0输出高时,键1的二极管导通,所以Pm.0可以读到1.
可是Pn.0输出低时,Pn.1就会输出高,这时候键1的二极管不通,键2的二极管导通,不是还是读到1吗?
请高手解惑,谢谢!
|