STC152K60S2 延迟函数问题

[复制链接]
 楼主| Aorey 发表于 2018-10-8 10:09 | 显示全部楼层 |阅读模式
谁写过根据晶振频率编写一个带参数的us级延迟函数啊 ?感谢分享。
ayb_ice 发表于 2018-10-24 14:36 | 显示全部楼层
这不难,难的是小us级的不精确
雪山飞狐D 发表于 2018-11-26 15:21 | 显示全部楼层
本帖最后由 雪山飞狐D 于 2018-11-26 15:22 编辑

那个ISP下载器里面有啊,挺准的。。。不过你要参数输入型的估计难,固定几个就好了,US 级别的细分不了几个
liulangr 发表于 2019-1-9 10:01 | 显示全部楼层
本帖最后由 liulangr 于 2019-1-9 11:33 编辑

/*--------------------------------------------------------------------------
*函数名称:Delay_us
*函数功能:定时器us级延时
*入口参数:uiDelay_us延时us
*出口参数:NULL
--------------------------------------------------------------------------*/
void Delay_us(unsigned int uiDelay_us)
{
       uiTimeCnt = uiDelay_us;       while(0 != uiTimeCnt )        {
        }
}

uiTimeCnt在定时器中断中采用uiTimeCnt--即可
我编写的内部24M/1T的IRC15W107上使用,用起来感觉还行,你可以参考一下。
不过对于低频的不太适用,因为每个指令可能超过1us,对于12M/12T,TH0 = (65536-65535)/256,TL0 = (65536-65535)%256中断一次就是1us了,所以比较不太好弄,高频还可以采用此方案




liufuwen21 发表于 2020-2-22 19:22 | 显示全部楼层
都看了,这帖子有意思。
ceohls 发表于 2020-3-21 10:36 | 显示全部楼层
谢谢楼主的分享

5

主题

11

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部

5

主题

11

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部