首页 > 编程知识 正文

c语言delay函数延时1秒(单片机delay延时函数时间计算)

时间:2023-05-06 19:22:15 阅读:75142 作者:2161

首先,从板hxddr可知,时钟频率为12MHz(=0.08us=0.1us ),板上长方形金属壳体上有标记(或看原理图)

从ISP软件延迟计算机获得循环代码

运行_nop_ ()必须包含库#include INTRINS.H

void Delay500ms ()//@12.000MHz )无符号chari,j,k; _nop_ (); _nop_ (); i=23; j=205; k=120; do{do{while (--k ); (while(-j ); (while(--I ); }百度表示,计算周期数23205120=565,80012 MHz=0.04715 s和500ms不一致,这表明一个for语句占用10T

10计算的0.4715s大致符合500ms=0.5s。 突然原件以do while格式准确延迟了这篇文章【51单片机】的延迟函数计算问题和https://blog.csdn.net/wait _ for _ taht _ day5/article/de eay 5

当for只在一楼循环时,在奔跑的马灯下效果较慢的void delay () ({ unsigned int i; for(I=0; i 50000; I; }本例双重for循环赋值上述公式为0.1s void delay () { unsigned int i,j; for(I=0; i 1000; I ) for ) j=0; j 110; j; 改写do while格式输入如下:首先生产1ms码,参考b站视频51单片机入门教程-2020版程序全程纯手工从头入门

51单片机入门教程-2020版程序全程纯手工从零开始入门

void Delay1ms ()//@12.000MHz )无符号chari,j; i=12; j=169; do{while (--j ); (while(--I ); 1ms程序叠加在xms上,voidDelay1ms(unsignedintXMS )12.000MHz ) unsignedcharI,j; wile(XMS ) ) {i=12; j=169; do{while (--j ); (while(--I ); XMS----; }查看程序代码后,do while应该更有效率,但计算时间应该与for相同

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。