了解 51单片机的使用
1. 使用普中科技的51开发板A4型号,结合 江协科技的视频
keil 软件的芯片 选择microchip系列的 89C52
然后stc-isp软件 下载烧录选择 STC89C516RD+/LE516RD+
2. 在对矩阵键盘编写扫描代码时,想简化成如下代码。感觉这是分层思想的体现,如下可认为是驱动代码,然后基于这个函数的返回值(1~16), 在应用层做键值映射,实现业务逻辑。比如可以把 13~16 映射成加减乘除,做一个简单的计算器
int scan_row(int line) { int key = 0; while (0 == P1_3) { delay_ms(20); while(0 == P1_3); delay_ms(20); key = 1 + line * 4;} while (0 == P1_2) { delay_ms(20); while(0 == P1_2); delay_ms(20); key = 2 + line * 4;} while (0 == P1_1) { delay_ms(20); while(0 == P1_1); delay_ms(20); key = 3 + line * 4;} while (0 == P1_0) { delay_ms(20); while(0 == P1_0); delay_ms(20); key = 4 + line * 4;} return key; } int matrix_get_key(){ int key = 0; unsigned char mask = 0x80, ix; for (ix = 0; ix < 4; ix++) { P1 &= ~(mask >> ix); key = scan_row(ix); P1 |= (mask >> ix); if (key) break; } return key; }

浙公网安备 33010602011771号