单片机用c语言编程的问题
voiddelay(){;;}//里面有两个空格和两个逗号这是一个延时程序,郭天祥的教材上这么说的大约延时5us左右我有一下几点不太明白1.大括号内的逗号是不是必须的,用...
void delay()
{ ;; } //里面有两个空格和两个逗号
这是一个延时程序,郭天祥的教材上这么说的 大约延时5us左右 我有一下几点不太明白 1.大括号内的逗号是不是必须的,用空格代替行吗 2.这个程序的延时5us是怎么算的,全是空格或者全是逗号行吗 3.用其它的符号代替行吗 展开
{ ;; } //里面有两个空格和两个逗号
这是一个延时程序,郭天祥的教材上这么说的 大约延时5us左右 我有一下几点不太明白 1.大括号内的逗号是不是必须的,用空格代替行吗 2.这个程序的延时5us是怎么算的,全是空格或者全是逗号行吗 3.用其它的符号代替行吗 展开
2个回答
意法半导体(中国)投资有限公司
2023-08-25
展开全部
展开全部
1大括号主要是告诉编译器这是一个程序段,不可能空格代替,空格只有用在字符串时才被编译器识别。
2程序的延时主要是与你用的晶振有关,计算方法:如果你的用12M晶体,一般的51单片机12分频之后就只有1M了,1M就是它的工作速度(也叫做机器周期,大小为1us),指令执行的时间叫做指令周期,一个机器周期内执行一个单周期指令,NOP是单周期指令(用时为1us)。空格不会被编译器认为有空格的,你用多少都没有用;一个逗号就是一个空语句,常被编译成NOP指令。
3你可以用_nop();这是一个空跳的函数,多调用几次就能达到效果。一般延时最好用,定时器,
2程序的延时主要是与你用的晶振有关,计算方法:如果你的用12M晶体,一般的51单片机12分频之后就只有1M了,1M就是它的工作速度(也叫做机器周期,大小为1us),指令执行的时间叫做指令周期,一个机器周期内执行一个单周期指令,NOP是单周期指令(用时为1us)。空格不会被编译器认为有空格的,你用多少都没有用;一个逗号就是一个空语句,常被编译成NOP指令。
3你可以用_nop();这是一个空跳的函数,多调用几次就能达到效果。一般延时最好用,定时器,
意法半导体(中国)投资有限公司
2023-06-12 广告
2023-06-12 广告
单片机其实就是一种可以由人对它进行编程从而通过它控制一些与它相连的器件的微型处理器。通俗地说就是你用某种特定的语言在特定的软件里(如keil)编写好一段程序后通过一定的方法转到一个芯片里(这个芯片就是单片机),给芯片上电后它就可以根据你编的...
点击进入详情页
本回答由意法半导体(中国)投资有限公司提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询