#include <reg52.h> #define uint unsigned int sbit buffer=P1^3; /*低,蜂鸣器响*/ bit TEST_ACK() { bit sda=0; bit test; test=sda; return (test); } void main() { uint i; buffer=0; for (i=0;i<50000;i++); TEST_ACK(); buffer=1; while(1);
} 若sda=1,主程序执行到TEST_ACK();就不往下执行了; 若sda=0,则不影响,继续往下。 为什么啊?大家帮忙看看,难道bit函数具有判断功能? |