1、P1 = P1 | 0x63; 为什么要把AD转换的那几个脚设为高啊?直接设置寄存器不行吗?
2、delay(0X200)是什么意思啊,是地址吗?延时时间是0X200按16位数算转为10进制吗?
void main()
{
initiate_RS232();
P1 = P1 | 0x63; // 0110,0011,要设置为 A/D 转换的P1.x 口,先设为高
P1_ADC_EN = 0x63; //0110,0011, P1 的P1.0,P1.1,P1.5,P1.6 设置为 A/D 转换输入脚
// 断开P1.0,P1.1,P1.5,P1.6 内部上拉电阻
while(1)
{
Send_Byte(get_AD_result(0)); //P1.0 为 A/D 当前通道, 测量并发送结果
delay(0x200);
Send_Byte(get_AD_result(1)); //P1.1 为 A/D 当前通道, 测量并发送结果
delay(0x200);
Send_Byte(get_AD_result(5)); //P1.5 为 A/D 当前通道, 测量并发送结果
delay(0x200);
Send_Byte(get_AD_result(6)); //P1.6 为 A/D 当前通道, 测量并发送结果
delay(0x200);
Send_Byte(0); // 连续发送 4 个 00H, 便于观察输出显示
Send_Byte(0);
Send_Byte(0);
Send_Byte(0);
delay(0x200); // 延时
delay(0x200);
delay(0x200);
delay(0x200);
delay(0x200);
delay(0x200);
}
} |