Hercules 之 高端定时器(N2HET) 了解入门学习

anvy178   2012-11-10 17:02 楼主
        N2HET 模块是一个具有输入/输出功能的可编程定时器。
N2HET 被执行为一个带有指令集(专门用于定时
操作)
的简单RISC 处理器。复杂输入可被捕捉并由N2HET
行预处理,随后由CPU 处理。输出生成通
常为脉宽调
(PWM),但是也可以为简单通用输入/输出(GIO) 类型信号。

基本结构图
未命名.JPG
性能特点
可编程定时协处理器
占用极小的CPU开销实现高级和复杂的定时器功能
带奇偶校验功能的128word 指令内存空间
专门的DMA功能模块(HTU) 在无需CPU干预的
情况下 实现数据从NHET到RAM的转移
条件语句
的执行语句根据引脚状态与比较值决定
32输入输出通道可实现复杂或常用的定时器功能
例如 捕获 比较输出  PWM  GPIO功能 等
内部集成 抑制滤波器可消除输入干扰
信号
多路25bit虚拟计数器可实现定时器,事件计数器 以及角度计数器

NHET 的代码运行是通过专门的微型机械定时器来执行的
如下图
未命名.JPG
通用高端定时器 应用
  PWM
  单或者多通道PWM
同步或者异步占空比更新的PWM
异步周期更新的PWM
PWM 移相功能
带死区功能的 同步、异步PWM 这个是大家比较要常用到的
基本功能
频率调制输出
事件计数器
脉宽计数
脉宽累加器
时间戳
多分辨率选择
频率或者脉宽检测
单通道脉宽与周期测量
正交解码
特殊功能
模拟SPI
信号发生器

下面的 图示就比较明白了

未命名.JPG

回复评论 (5)

N2HET作为事件计数器 有案例吗?
点赞  2012-12-26 17:25

回复 沙发 ml0943 的帖子

有DEMO 程序  官方的
点赞  2012-12-27 08:50
也可以用HALCoGen生成,配的时候在HET的页面里面配Edge功能即可,可以选上升沿、下降沿或都有效。
初始化完成后,直接调用edgeGetCounter(hetRAMBASE_t * hetRAM, uint32_t edge)这个接口,这个接口的返回值就是当前的事件计数值,如:

count = edgeGetCounter(hetRAM1, edge0);
点赞  2012-12-27 21:24

回复 4楼 renton 的帖子

这个是不是还要设置 edge interrupt  ?
我使用的是rti定时器100ms,在rti中断函数中 count0= edgeGetCounter(hetRAM1,edge0);在main函数中。       
        while(1)
        {
                if(count0!=0)
                {
                       edgeResetCounter(hetRAM1,edge0);                                                
                                      if(flag0==0)
                        {
                                LED3_ON();
                        }
                              else
                        {
                                LED3_OFF();
                        }
                      flag0 = 1 - flag0;
                      count0=0;
                  }
                  }
程序编译通过,,没有错误,但是烧录到板子后,LED灯都没有闪亮。

[ 本帖最后由 ml0943 于 2013-1-10 21:51 编辑 ]
点赞  2013-1-10 21:48
flag0是怎么赋值的呢?
使用edge相关的接口之前一定要先调用hetInit();这个动作应该有吧?

Edge0引脚上的信号是否正常?如果你是想对内部的PWM进行计数的话,那么PWM的pin的状态要设置成输出才行。

Edge的中断不用打开,Edge功能是用ECNT指令实现的,设置好要检测的边沿后(在hetInit中)就立即开始生效了。

你再检查检查?

[ 本帖最后由 renton 于 2013-1-11 09:24 编辑 ]
点赞  2013-1-11 09:17
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复