全部学习汇总: GreyZhang/g_TC275: happy hacking for TC275! (github.com)
之前看了不少类似的寄存器信息,总体来说阅读价值不是很大,查询的价值多一些。如果是进行编码,这样的寄存器信息需要查一下,在功能了解的时候以后类似的信息可能我会直接跳过了。
关于影子寄存器或者影子区,之前看过好多次但是一直不理解。专门针对这个概念去查了一下,其实比较简单。其实,很多处理器提供给用户的寄存器地址有两套,一套是软件可以读写的,还有一套是真正起作用的。真正起作用的是根据读写的内容来变化的,但是时效上可能会偏差。能够起作用的这个其实就是所谓的影子。
系统控制单元的功能还是很多的:外部请求以及触发、锁步逻辑、芯片温度传感器、看门狗、急停、逻辑内置自检、overlay、缓和系统控制寄存器等。这些都值得去细致学习研究一下。
- ERU模块的主要用途:根据边沿类型捕捉外部信号,产生中断。
- ERU提供的是一个8输入8输出的信号处理单元,中间有一个逻辑处理矩阵做相应的信号的判断。
- ERS有4种可能的输入,这里虽然看不出来如何体现4种,其实看到后面能够看到一个直观的理解。
- 配合输入输出,信号判断模块实现了逻辑边沿的信号判断。
- 之后,链接矩阵根据判断结果触发不同的动作。而这个触发动作的过程,就是英文单词中分发或者分配的这个表达。
触发原则:一个输入可以触发多个输出,多个输入可以触发同一个输出。
- 这个是MCU支持的ERU的PIN以及功能分布,看到这里的时候才注意到之前一直接触的ESR0以及ESR1只不过是这里面比较特殊的2个。
- 从这个图中也可以看得出来,4个输入是什么概念了。
- 输入的信号中有16个是直接来自于MCU的外部的;
- 输入信号也可以来自于MCU内部的外设,不管这个外设用还是没用。
- 典型的一个应用:检查外设应用,检查到通信帧头的时候触发一个中断。
- ETL模块的功能:对触发信号进行判断。
这样,这部分的学习暂且就结束了。说起来,这种外部触发的请求功能,我用的比较少,大部分都是直接借助于软件来判断了。但是,如果硬件有这样的功能支持,在应用实现上的确是简单了很多。