关于nop延时的菜问题。
如题,我是一个单片机c语言的菜鸟。最近搞懂了蜂鸣器原理后,打算用nop延时
void delay500us() //定义500微秒的延时函数{ unsigned char i; for(i=500;i>0;i--) { _nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_(); }}
#include<reg52.h> //52系列单片机头文件sbit fmq=P3^6; //声明单片机P3口的第6位void main(){ void delay500us(); //声明500微秒的延时函数 void delayms(unsigned int xms); //声明延时x毫秒函数 void beep(); //声明产生1KHZ频率声音的函数 unsigned int i; while(1) { for(i=0;i<1000;i++) { beep(); } fmq=0; delayms(1000); } }void delay500us() //定义500微秒的延时函数{ unsigned char i; for(i=500;i>0;i--) { _nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_(); }}void delayms(unsigned int xms){ unsigned int i,j; for(i=xms;i>0;i--) { for(j=110;j>0;j--) { ; } }}void beep() //定义产生1KHZ频率声音的函数{ fmq=0; delay500us(); fmq=1; delay500us();}