// 下面的情况更适合使用(PHILIPS LPC900端口初始化) //------------------------------------------------------ // io_initialize //------------------------------------------------------ // // I/O初始化 // void io_initialize(void) { /* --------------------------------------- | | | | | PxM1.b | PxM2.b | 口输出模式 | |-------------------------------------| | 0 | 0 | 准双向模式 | | 0 | 1 | 推挽 | | 1 | 0 |仅为输入(高阻抗)| | 1 | 1 | 开漏 | ---------------------------------------
------------------------------ |xxxxxxxx|双向|推挽|只入|开漏| |--------|----|----|----|----| |PxM1.b | 0 | 0 | 1 | 1 | |--------|----|----|----|----| |PxM2.b | 0 | 1 | 0 | 1 | ------------------------------ */ //------------------------------------------------- // 按键口配置为准双向模式 // P00~P06 = 准双向模式 // P14,P21 = 准双向模式 // BEEP P16配置推挽模式 // P0. 7 6 3 2 1 0 P0M1 = _bin(0, 0, 0, 0, 0, 0, 0, 0); P0M2 = _bin(0, 0, 0, 0, 0, 0, 0, 0);
//------------------------------------------------- // P12,P13开漏 // P1. 7 6 4 3 2 P1M1 = _bin(0, 0, 0, 0, 1, 1, 0, 0); P1M2 = _bin(0, 1, 0, 0, 1, 1, 0, 0);
//------------------------------------------------- // P2. 5 3 2 1 P2M1 = _bin(0, 0, 0, 0, 0, 0, 0, 0); P2M2 = _bin(0, 0, 0, 0, 0, 0, 0, 0); } |