设单片机的晶振频率为6MHZ编写一段延时程序约延时100ms的子程序
发布网友
发布时间:2022-04-23 11:21
我来回答
共3个回答
热心网友
时间:2023-10-12 06:05
机器周期=12/6MHz=2μs
定时100ms的计数值 =100ms/2μs =50000
设T1工作于方式1(16位计数器)
计数初值 =2^16 -50000=65536=15536=3CB0H
MOV TMOD,#10H ;; T1工作方式1、定时模式
MOV TH1,#3CH ;; 写入计数初值高8位
MOV TL1,#B0H ;; 写入计数初值低8位
SETB TR1 ;; 启动T1,开始计时
SETB ET1 ;; 允许T中断
SETB EA ;; CPU开中断
SJMP $ ; ; 等待T1计时溢出中断
热心网友
时间:2023-10-12 06:05
void Delay100ms()//@6.000MHz
{
unsigned char i, j;
i = 98;
j = 67;
do
{
while (--j);
} while (--i);
}
热心网友
时间:2023-10-12 06:06
单片机的工作频率是多少