• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

51单片机中如果晶振是24KHZ,延时函数计算

wanyanfei1984 2018-05-30 浏览量:2462

51单片机中如果晶振是24KHZ,延时函数如何来计算出比较准确的延时?

延时是如何计算的,哪位大侠,给个计算的过程,谢谢!

0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 51单片机的指令有单字节、双字节和三字节的,它们的指令周期不尽相同,一个单周期指令包含一个机器周期,即12个时钟周期,所以一条单周期指令被执行所占时间为12*(1/ 晶振频率)= x μs。常用单片机的晶振为11.0592MHz,12MHz,24MHz。其中11.0592MHz的晶振更容易产生各种标准的波特率,后两种的一个机器周期分别为1 μs和2 μs,便于精确延时。

    给你篇文章:https://blog.csdn.net/feike24/article/details/52357772

    • 发布于 2018-05-30
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:8
  • 根据实际的频率计算延时就可以
    • 发布于2018-05-30
    • 举报
    • 评论 0
    • 0
    • 0

  • 直接参考51的机器周期和时钟周期的关系,51是12个时钟周期对应一个机器周期,12MHz下能计算1us,那么24kHz就是500us=0.5ms。

    • 发布于2018-05-30
    • 举报
    • 评论 0
    • 0
    • 0

  • 跟机器周期有关  51默认是12个时钟一个周期 stc有1t周期的 所以时间就跟晶振频率一致
    • 发布于2018-06-04
    • 举报
    • 评论 0
    • 0
    • 0

  • 这个需要计算机器是指令周期和时钟周期,24M一般来说是指令周期是0.5US
    • 发布于2018-06-08
    • 举报
    • 评论 0
    • 0
    • 0

  • 用定时器计算吧,这个比普通延时准,而且效率高,特别是操作系统的延时函数
    • 发布于2018-06-08
    • 举报
    • 评论 0
    • 0
    • 0

  • 首先,24KHZ晶振 一个指令周期的时间是     12个机器周期除以24KHZ频率=0.5毫妙   为什么是12个机器周期,因为延时函数没执行一条语句就要12步
    • 发布于2018-06-22
    • 举报
    • 评论 0
    • 0
    • 0

  • 需要根据你的系统时钟及总线时钟来计算,具体计算过程需要看你的数据手册
    • 发布于2018-06-14
    • 举报
    • 评论 0
    • -1
    • 0

相关问题

问题达人换一批

51单片机中如果晶振是24KHZ,延时函数计算