全部学习汇总: GreyZhang/g_TC275: happy hacking for TC275! (github.com)
这一次看的10页文档虽然文字内容不多,但是涉及到的面还是很多的。而且,看完之后的确是有一种答疑解惑的畅快感。
1. ESRx作为GPIO用的时候,也拥有GPIO设计的一些共同的特点。这里能够看得到电平状态控制的一个有意思的点,这个MCU的GPIO支持直接的toggle!在用其他的MCU的时候,toggle的功能我一般都是自己软件来实现的。
2. 无论pad设置为了输入还是输出功能,都支持读取当前的电平状态。
ESR做GPIO来用的时候,相应的pad也可以直接禁用。
1. Pad的相应速度支持4种速度,暂且还不知道哪一个速度最快,不同速度的特点等。
2. 在电平判断方面,支持汽车标准以及TTL标准。
1. 一般来说,启动尽量是软件来处理,硬件尽量少参加。但是也有一些状态需要硬件来提供。
2. 两个比较重要的硬件要判断的状态,一个是是否是测试模式,另外一个是调试接口的类型。
3. HWCFG的相应配置判断处理是由SCU系统来实现的。
启动状态寄存器中可以判断HWCFG的配置状态,这样的效果可以找一个板子实际测试一下。
1. 是否是测试模式的判断状态,其实这个用户一般不需要关注。
2. 之前在看系统复位的一些状态的时候,其实有些存储一致性的判断依据了。这里看到了一个更加直接的,如果做的软件对于安全考虑很关注,那么可以参考一下这个RAM存储完整性的状态。
1. 跳过了一页,没有什么特别需要注意的信息。
2. NMI请求总是同时发给所有的CPU。
3. NMI的trap可以禁用掉,但是依然可以读到相应的状态。这个模型有点类似于中断的设计。
4. 只要是请求置位了且trap使能,那么trap就会发生。因此建议使能trap之前先清除标志。trap例程结束之前,也应该清除掉标志,这个处理与中断的处理又是很相似的。
trap状态寄存器中可以读取到时间触发trap的标志位。
1. trap状态寄存器之中,还能够读取到SMU触发trap的信息。
2. 在trap的设置寄存器中,找到了请求事件的设置bits。这解决了我很久以来的一个疑惑:软件是否可以直接触发trap?从这里看,其实是可以的。
如同开篇所总结,这一次看的文档虽然少,其实还是小有收获的。