仅以无AD作用的普通IO看,如果要PORTx 输出某些电平,并且读入某个IO口电平,以PORTC口为例,0,1,2,3为输出口,4,5,6,7为输入口,程序这样写:
TRISC = 0xF0; //设置端口方向
LATC = 0x5A; //此时读入 PORTC,PORTC == 0xXA ; 高4位电平不定,为当时端口实际电平输入,低4位被写入 1010b;
TEMP = PORTC; //读入PORTC 口状态,TEMP 应等于 0xXA ;.二进制为 xxxx1010b;
TEMP = LATC; //读入 端口锁存器 LATC ,此时 TEMP 应为 0x5A;
|