发布网友 发布时间:2022-04-22 08:20
共3个回答
热心网友 时间:2022-06-18 12:08
可以有很多办法,一是调整参数,使其延时5分钟或6分钟,循环24次或20次。二是将延时函数的形参改为长整型(32位)延时时间扩大65536倍。三是使用定时器,每次定时50mS,累计144000次,便是2小时,使用定时器(中断)的好处是在延时期间还可以干许多事情,例如显示剩余时间,检测设备工作状态或者调整延时时间等,而你的纯软件延时期间想干其它事情比较困难。
热心网友 时间:2022-06-18 12:08
直接用定时器中断函数啊,每次定时中断(假设36毫秒),后用个中间变量,计算中断次数(200000)即可,如果32位不够用,可以次数乘以次数(比如500×400)。用延时程序太费了,延时程序用在很短时间(数毫秒及以下)内还是可以,比如各引脚信号时序图,需要略微的延时用用还可以。
热心网友 时间:2022-06-18 12:09
在C51单片机的应用中,采用让cpu循环执行指令代码而消耗的时间来实现延时,尤其是时间大于100mS的延时,是不明智的;
正确做法是采用定时器中断方式来实现大的延时;