51单片机C语言实现100毫秒延时 - 详细代码解析
在51单片机上使用C语言进行延时,可以使用定时器来实现。以下是一个简单的延时函数的示例代码:
#include <reg51.h>
void delay_ms(unsigned int ms)
{
unsigned int i, j;
for(i = 0; i < ms; i++)
{
for(j = 0; j < 120; j++) // 延时约1ms
{
// 使用定时器产生延时
TMOD = 0x01; // 设置定时器0为模式1
TH0 = 0xFC; // 设置定时器0的初始值
TL0 = 0x66;
TR0 = 1; // 启动定时器0
while(!TF0); // 等待定时器0溢出
TR0 = 0; // 关闭定时器0
TF0 = 0; // 清除定时器0溢出标志
}
}
}
void main()
{
delay_ms(100); // 延时100毫秒
// 其他代码
}
在上述代码中,使用定时器0来产生1毫秒的延时,然后在延时函数中循环执行定时器0的延时,实现了指定毫秒数的延时。
原文地址: https://www.cveoy.top/t/topic/pgTM 著作权归作者所有。请勿转载和采集!