查看: 4558|回复: 4

[原创] 【LPC54114】学习+延时函数

[复制链接]
  • TA的每日心情
    开心
    2018-7-24 08:30
  • 签到天数: 50 天

    连续签到: 1 天

    [LV.5]常住居民I

    22

    主题

    817

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    1713
    最后登录
    2019-12-7
    发表于 2017-4-12 13:33:09 | 显示全部楼层 |阅读模式
    今天写有个使用循环方式的延时函数,精度还算可以,精度在下面的图片中看到,使用逻辑分析仪测量的结果1秒的延时,调用1000次delay_ms();也就是delay_ms(1000);
    ms.jpg
    1us的延时,此外是调用了100次delay_us(),也就是delay_us(100);
    us.jpg
    精度还算可以,程序如下:
    1. void delay_us(uint32_t us)
    2. {
    3.         uint32_t i,j;
    4.         for(i=0;i<us;i++)
    5.         {
    6.                 for(j=0;j<8;j++)
    7.                 {
    8.                         __asm("nop");
    9.                 }
    10.         }
    11. }
    12. void delay_ms(uint32_t ms)
    13. {
    14.         uint32_t i,j;
    15.         for(i=0;i<ms;i++)
    16.         {
    17.                 for(j=0;j<765;j++)
    18.                 {
    19.                         delay_us(1);
    20.                 }
    21.         }
    22. }
    复制代码



    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    2021-11-30 16:16
  • 签到天数: 206 天

    连续签到: 1 天

    [LV.7]常住居民III

    74

    主题

    2793

    帖子

    5

    金牌会员

    Rank: 6Rank: 6

    积分
    7879
    最后登录
    2025-4-11
    发表于 2017-4-12 15:27:27 | 显示全部楼层
    用汇编"nop"微延时还是可以的,不过还是觉得systick延时比较简单
    来根华子
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2025-5-7 09:07
  • 签到天数: 353 天

    连续签到: 1 天

    [LV.8]以坛为家I

    141

    主题

    8056

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    5785
    最后登录
    2025-5-7
    发表于 2017-4-12 16:04:10 | 显示全部楼层
    直接用系统滴答不好吗
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2018-7-24 08:30
  • 签到天数: 50 天

    连续签到: 1 天

    [LV.5]常住居民I

    22

    主题

    817

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    1713
    最后登录
    2019-12-7
     楼主| 发表于 2017-4-12 18:47:26 | 显示全部楼层
    wambob 发表于 2017-4-12 16:04
    直接用系统滴答不好吗

    可以啊,感觉这样容易测试,以后还是会使用systick的。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2018-7-24 08:30
  • 签到天数: 50 天

    连续签到: 1 天

    [LV.5]常住居民I

    22

    主题

    817

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    1713
    最后登录
    2019-12-7
     楼主| 发表于 2017-4-12 18:47:44 | 显示全部楼层
    混森蓝兽 发表于 2017-4-12 15:27
    用汇编"nop"微延时还是可以的,不过还是觉得systick延时比较简单

    谢谢建议,感觉这样容易测试,以后还是会使用systick的。
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2025-7-24 00:46 , Processed in 0.089700 second(s), 23 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

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