找回密码
 立即注册
查看: 981|回复: 9

老师们,有没有软件延时1us,10us,1ms,10ms的延时库函数

[复制链接]
  • 打卡等级:常住居民III
  • 打卡总天数:120
  • 最近打卡:2025-08-25 16:55:46
已绑定手机

24

主题

69

回帖

422

积分

中级会员

积分
422
发表于 2024-10-10 07:15:12 | 显示全部楼层 |阅读模式
老师们,有没有软件延时1us,10us,1ms,10ms的延时库函数,能够自主适应时钟的。
回复

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:164
  • 最近打卡:2025-08-27 10:04:33

776

主题

1万

回帖

1万

积分

管理员

积分
18724
发表于 2024-10-10 13:55:03 | 显示全部楼层
截图202410101354594336.jpg


截图202410101355289959.jpg

截图202410101356138620.jpg

截图202410101356485747.jpg




回复

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:177
  • 最近打卡:2025-08-26 10:47:14

15

主题

266

回帖

1403

积分

金牌会员

积分
1403
发表于 2024-10-10 07:46:12 | 显示全部楼层
有啊,自己写很好的。
回复

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:120
  • 最近打卡:2025-08-25 16:55:46
已绑定手机

24

主题

69

回帖

422

积分

中级会员

积分
422
发表于 2024-10-10 07:50:35 | 显示全部楼层
liuzon*** 发表于 2024-10-10 07:46
有啊,自己写很好的。

应该怎么写?不太会算
回复

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:179
  • 最近打卡:2025-08-27 10:51:02

24

主题

240

回帖

1413

积分

金牌会员

积分
1413
发表于 2024-10-10 08:04:22 | 显示全部楼层
1μs时间太短,软件延时误差很大或需要特殊的时钟频率或无法实现,其他频率可以直接使用ISP软件生成

点评

1us还要自适应主时钟?应该主时钟适应它才对  详情 回复 发表于 2024-10-10 08:07
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:540
  • 最近打卡:2025-08-27 00:28:33
已绑定手机

86

主题

6006

回帖

1万

积分

超级版主

积分
10898
发表于 2024-10-10 08:07:44 | 显示全部楼层
CyberH*** 发表于 2024-10-10 08:04
1μs时间太短,软件延时误差很大或需要特殊的时钟频率或无法实现,其他频率可以直接使用ISP软件生成 ...

1us还要自适应主时钟?应该主时钟适应它才对
回复

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:7
  • 最近打卡:2024-10-09 13:50:12

3

主题

13

回帖

139

积分

注册会员

积分
139
发表于 2024-10-10 14:01:09 | 显示全部楼层
要是学习,就自己写一次,如果后续开发用,烧录软件里面有工具的,很方便的啦!如果你是用官方配的硬设库,就省事,它里面有个“STC8G_H_Delay”的文件,在里面有ms软件延时,可以通过头文件修改晶振频率,函数里面自动调整,这样不用每次修改晶振的时候,都要用工具算
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:539
  • 最近打卡:2025-08-27 00:00:17
已绑定手机

19

主题

3258

回帖

5713

积分

论坛元老

积分
5713
发表于 2024-10-10 14:03:18 来自手机 | 显示全部楼层
1us估计不行,10ms以上可以。
回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:314
  • 最近打卡:2025-08-27 00:29:44
已绑定手机

26

主题

357

回帖

753

积分

高级会员

积分
753
发表于 2024-10-20 11:41:43 | 显示全部楼层
STCISP生成的延时程序不带参数,要是能随意填写延时时长就好了,例如 Delay_ms(20); 代表延时20毫秒
回复

使用道具 举报 送花

  • 打卡等级:以坛为家III
  • 打卡总天数:627
  • 最近打卡:2025-08-27 09:36:06

122

主题

2068

回帖

6185

积分

论坛元老

积分
6185
发表于 2024-10-20 13:01:46 | 显示全部楼层
本帖最后由 xxkj2010 于 2024-10-20 13:07 编辑

us时间太短

ms的,基本可以用,但不可能完全准确,这是以前收存的:
  1. STC单片机自适应毫秒级延时函数:
  2. //#define MAIN_Fosc 48000000L        //定义主时钟
  3. //#define MAIN_Fosc 44236800L        //定义主时钟
  4. //#define MAIN_Fosc 40000000L        //定义主时钟
  5. //#define MAIN_Fosc 36864000L        //定义主时钟
  6. //#define MAIN_Fosc 35000000L        //定义主时钟
  7. //#define MAIN_Fosc 33177600L        //定义主时钟
  8. //#define MAIN_Fosc 30000000L        //定义主时钟
  9. //#define MAIN_Fosc 27000000L        //定义主时钟
  10. //#define MAIN_Fosc 24000000L        //定义主时钟
  11. //#define MAIN_Fosc 22118400L        //定义主时钟
  12. //#define MAIN_Fosc 20000000L        //定义主时钟
  13. //#define MAIN_Fosc 18432000L        //定义主时钟
  14. #define MAIN_Fosc 12000000L        //定义主时钟
  15. //#define MAIN_Fosc 11059200L        //定义主时钟
  16. //#define MAIN_Fosc 6000000L        //定义主时钟
  17. //#define MAIN_Fosc 5529600L        //定义主时钟
  18. void delay_ms(unsigned int ms)                //注:ms_max=65536
  19. {
  20.     unsigned int i;
  21.     do
  22.     {
  23. //          i=MAIN_Fosc/96000L;                //STC89/90_12T
  24. //          i=MAIN_Fosc/48000L;                //STC89/90_6T
  25. //          i=MAIN_Fosc/14000;                //STC11、STC12
  26. //          i=MAIN_Fosc/13000;                //STC15
  27.             i=MAIN_Fosc/10000;                //STC8
  28. //          i=MAIN_Fosc/6030;                 //STC32
  29.             while(--i)        ;
  30.             }
  31.     while(--ms);
  32. }
复制代码


回复

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-8-27 16:51 , Processed in 0.138341 second(s), 109 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表