Menu Close

RISC-V C语言编程2(3)中断及定时器中断工程-4

主讲老师:YVONNE、William、Tim Zhuang

本文隐藏内容 登陆 后才可以浏览

Posted in RISC-V教学视频

3 Comments

  1. wangff

    本节课重点讲解set_timer(u64_t msec)函数,学习后有几点收获,1、学会了“u64_t”的使用技巧;2、获取timer寄存器原始值的技巧;3、为timer比较寄存器赋值的技巧;4、借助32.768kHz时钟计算时间的技巧;

    在听课中遇到几点问题,请老师解答:
    1、授课中老师说32.768kHz时钟对应的是1秒,请问老师这个关系是如何计算的呢,我查阅了一些资料,解释是32.768kHz需要15次二分频后才等于1Hz(1秒),但是咱们这里使用的是“32768”,并没有分频,那么为何说是1秒呢?
    2、msec*(RTC_FREQ/1000),这个表达式最终获得的数据单位是毫秒,还是秒呢?授课中老师说的是秒,但是如果(RTC_FREQ/1000)计算结果是“1毫秒”的话,假设msec=250,那么应该是,250毫秒吧?

    • Yvonne

      1. 结合RISC-V 硬件FPGA代码,rtcTick的频率是32768 Hz,即可知,计数32768次即可得到完整的一秒。在软件中,传递给硬件的是就是计数的次数。

      2. RTC_FREQ展开后是32768,*(RTC_FREQ/1000)单位是毫秒,如果写成*RTC_FREQ就是秒。如果msec=250,msec*(RTC_FREQ/1000)表示的就是250 ms。

发表评论

相关链接