查看: 2621|回复: 6

[求助] KE06 脉宽测量模块(PWT)中测量的脉宽值的缓存机制如何理...

[复制链接]

该用户从未签到

2

主题

9

帖子

0

新手上路

Rank: 1

积分
39
最后登录
2019-2-28
发表于 2015-12-3 11:02:44 | 显示全部楼层 |阅读模式
本帖最后由 auto300 于 2015-12-3 16:31 编辑

        KE06的手册中,讲到PWT中脉宽测量值的缓存机制,目的是保证在读取时下一个脉宽测量值不丢失。
疑问:
       1. 这个机制是不是在“cpu读脉宽测量(在buffer中)值且准备清除UART_R1[PWTRDY]标志时,恰好下一个脉宽测量值正好也更新了” 这种特殊情况下体现它的作用,该机制目的就是避免新更新的脉宽值丢失。  这样理解对吗?
       2. 手册中说,“该机制通过MCU复位而自动重启(UART_R1 [PWTSR]位进制软件复位或通过给UART_R1 [PWTEN] 位置0)实现”,这是什么意思? 是不是说当1中描述的特殊情况发生时,单片机内部硬件会自动使相关状态复位 还是 需要我们用户写程序去给UART_R1 [PWTSR]、UART_R1 [PWTEN]位写0复位?
       3. 如果较长时间不读buffer的值或第3个、第4个等脉宽的值来的太快,是不是第2个的脉宽值在此种机制下也无法保证不丢失?

       请权威大神指点!结合上述3问题,帮我把这个脉宽值缓存机制的过程理清一下。(看手册,总感觉过程描述的很零散)
       拜谢!!!


我知道答案 目前已有6人回答
回复

使用道具 举报

  • TA的每日心情
    开心
    2020-3-29 09:54
  • 签到天数: 418 天

    连续签到: 1 天

    [LV.9]以坛为家II

    21

    主题

    2928

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    3307
    最后登录
    2021-4-7
    发表于 2015-12-3 11:47:48 | 显示全部楼层
    不懂,帮顶。。。
    FSL-logo.png
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    9

    主题

    642

    帖子

    0

    高级会员

    Rank: 4

    积分
    748
    最后登录
    1970-1-1
    发表于 2015-12-4 08:40:16 | 显示全部楼层
    不懂帮顶一下
    104930kli5jsmlssemljli.png
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2024-1-6 07:38
  • 签到天数: 736 天

    连续签到: 1 天

    [LV.9]以坛为家II

    21

    主题

    3486

    帖子

    6

    金牌会员

    Rank: 6Rank: 6

    积分
    5093
    最后登录
    2024-1-7
    发表于 2015-12-4 09:23:15 | 显示全部楼层
    帮顶一下
    该会员没有填写今日想说内容.
    回复

    使用道具 举报

    该用户从未签到

    145

    主题

    4926

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    9267
    最后登录
    1970-1-1
    发表于 2015-12-8 15:14:28 | 显示全部楼层
    楼主你好!
    刚看了下你的问题,我的理解是这样的:
    1.只要PWTRDY标志没有被清楚,这个时候缓冲里的数据是不可以被改变的,但是恰好下一个脉宽值也更新了,这个值可以直接从PWT计数器上载到脉宽寄存器。所以说这个时候,第二个数据并没有被丢掉,只是它还没有放到缓冲区去,其实从RM中的图 27-5. 脉宽寄存器的缓冲机制 也能够看出来。

    2.“该机制通过MCU 复位而自动重启:向PWT_R1[PWTSR]写入1 或者在向PWT_R1[PWTEN]写入0 后向其写入1”
    我认为,这个只是模块的复位,同时也是实现缓冲机制的恢复。比如之前,如果没有清除PWTRDY标志,这个时候数据是不会被更新到缓冲的,必须要清除PWTRDY标志,如果不清楚,也可以通过软件复位的形式实现重启。一旦软件复位,相应硬件会自动服务状态,无需你再控制寄存器了。
    3.对的,我认为,如果你一直不读buffer,你的PPW,NPW肯定会被一直更新,而不会被放到缓冲中去。
    希望能帮到你,如果还有问题,欢迎继续交流。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    2

    主题

    9

    帖子

    0

    新手上路

    Rank: 1

    积分
    39
    最后登录
    2019-2-28
     楼主| 发表于 2015-12-8 16:50:33 | 显示全部楼层
    FSL_TICS_ZJJ 发表于 2015-12-8 15:14
    楼主你好!
    刚看了下你的问题,我的理解是这样的:
    1.只要PWTRDY标志没有被清楚,这个时候缓冲里的数据是不 ...

    感谢版主解惑!项目开发也将更加严谨!
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    145

    主题

    4926

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    9267
    最后登录
    1970-1-1
    发表于 2015-12-8 16:55:10 | 显示全部楼层
    auto300 发表于 2015-12-8 16:50
    感谢版主解惑!项目开发也将更加严谨!

    不客气,后续有问题,欢迎继续发帖交流。
    回复 支持 反对

    使用道具 举报

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

    本版积分规则

    关闭

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

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

    GMT+8, 2025-7-24 10:03 , Processed in 0.097861 second(s), 27 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

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