扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
我以前写的控制跑马灯的程序,有1s定时,也有中断,根据需要修改修改就可以了。
创新互联公司网站建设公司,提供成都网站建设、做网站,网页设计,建网站,PHP网站建设等专业做网站服务;可快速的进行网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,是专业的做网站团队,希望更多企业前来合作!
但是,晶振是12MHz,一条汇编的指令就至少是1us,C语言的语句,就要更多。
现在通过上面两个数据可以得出:单片机每执行一次自减所需要的时间是1/12M *100(s),即1/120000 s,逆向计算一下,每1ms需要自减多少次?120次对吧。
i,j;for(i=0;ims;i++)for(j=0;j1052;j++);} C语言的延时函数一般不太准,如果要求不是很高的话,搞调整一下程序中1052那个值就可以做到。如果要更精确,最好用汇编。
1 C语言程序延时 Keil C51的编程语言常用的有2种: 一种是汇编语言;另一种是C 语言。用汇编语言写单片机程序时,精确时间延时是相对容易解决的。
.比如前面那个箭头指到你的调用函数delay(200);假设执行到此部用时1110。
1、//end=time(null);在程序结束的时候再给另一个变量赋值,值等于当前的系统时间。
2、算法是这样的:这个用编译软件,如keil,编译通过之后,进入软件调试功能,就可以测出来是延时多少秒。具体我帮你调试过了,如果单片机接12mhz晶振的话,这个是延时0.2秒的子程序。你调用一次delay();就延时0.2秒。
3、这是一个延时为ms的C语言程序,只要给Delay=2,便可延时2ms。
1、就是用晶振频率算cpu指令周期,再算Delay循环中有几条代码,需要多少个指令周期。除一下可以算个大概。具体你可以结合硬件资料来算。
2、这个是和你机器的运算速度有关的 你要计算出这个函数用了多少时间就要用时间函数,我很久没用了。
3、算法是这样的:这个用编译软件,如keil,编译通过之后,进入软件调试功能,就可以测出来是延时多少秒。具体我帮你调试过了,如果单片机接12mhz晶振的话,这个是延时0.2秒的子程序。你调用一次delay();就延时0.2秒。
4、.比如前面那个箭头指到你的调用函数delay(200);假设执行到此部用时1110。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流