我用I2C,SPI,UART的中断发送数据,并定义一个全局变量NUM,在中断中每发一个数据,NUM就减一,我在发送函数中,如uart_wnbyte(){
---------------数据在中断中发送
while(NUM);//等待NUM=0;//////////但始终都退不出while,我检查了NUM的值,它确实也等于0,理论上应该 退出去的呀?请问各位有没有遇到过类似的问题
但是如果用while(NUM){---有一些无关紧要的句子,如延时}就能退出去}
我的问题主要是退出while(NUM);至于UART是不是应该用中断发送,我在这里不讨论。我知道UART一般用等待方式发送,但中断也是可以的,我手头也有程序。
但是上面的问题也出现在SPI,I2C中断发送数据中
我用的ADS1.2 ,LPC2131,周立功的启动模板,我在PROTEUS和硬件中都试过了,但没有用其它编译器 |