This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] LAUNCHXL-F28P55X:了解 CLB 计数器 — 可能是一个错误

Guru**** 2519530 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1564591/launchxl-f28p55x-understanding-the-clb-counter---maybe-a-bug

器件型号:LAUNCHXL-F28P55X


工具/软件:

我使用 CCS 20.2 的 syscfg 工具

我很难理解计数器的行为。 在该工具中、配置参数包括 Reset、Event Trigger、Counter Enable 和 Direction。
在代码中、这与复位、事件触发器、Mode_0 和 Mode_1 相关

如果设置了“Enable",“,只要、只要“Enable"输入“输入等于 1、计数器就会以系统时钟速率进行计数。 因此、事件触发器仅在 Enable 设置为零时才有效

将计数器事件操作设置为“add",“,并且、并且事件加载值和事件触发器将导致加载该值、尽管事件操作设置为“add"。“。  
实际上、计数器事件操作都不会更改任何计数器配置值。 这看起来像是配置工具中的错误。 遗憾的是、我没有在实际登记簿上找到任何文档。 您能否在没有工具的情况下发布实际设置的工作方式、那么分析此类问题会更容易。

谢谢、

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    观看不同设置下的行为后回答我自己的问题:
    复位 每当为 1 时、无论其他输入如何、都将计数器保持复位状态。 直接、如文档中所述
    事件  在配置信号的上升沿处理事件操作(这与使能设置或状态无关)
    使能  当一个或配置的输入为 1 时、计数器计数约为 100MHz(为什么不是 150?)  以任何方向设置的相位。  

    事件 触发的
    添加/分包  添加或减去 事件加载值 计数器值读取数据  
    左/右移位 将当前计数器值移位  事件加载值  事件的位数、它是常规移位、没有料筒移位  

     我一开始不了解的是、Event 和 Enable 是两个独立的功能。
    在查看生成的定义时、我还忽略了 计数器事件操作被编码到 
    tilex_CFG_MISC_CONTROL 值中。