首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

请教关于TCNT

请教关于TCNT

如果TCNT是只读的,那么为何又可以清零TCNT?清零不是对TCNT写入0吗?
我看了一下输入捕捉的Bean,该输入捕捉通道命名为Petrol1_Detect,以下两个函数是PE自动生成的函数
#define Petrol1_Detect_Reset() (Petrol1_Detect_CntrState = TCNT , ERR_OK)
#define Petrol1_Detect_GetCaptureValue(Value) \
(*(Value) = TC0 , *(Value) -= Petrol1_Detect_CntrState , ERR_OK)
在Reset()函数中只是把TCNT的值赋给了一个变量,而不是将TCNT复位,而在GetCaptureValue()中只是简单地将TC0-TCNT,即使TC0小于TCNT,也能得到正确的值,但是捕捉周期不能大于时钟计数周期,若大于就得配合计数溢出中断次数才能得到正确的值,这么理解没错吧?
多谢陈老大!^_^
返回列表