Other Parts Discussed in Thread: HALCOGEN
本来记得是看过的,现在自己要用了,找半天没见着,所以厚着脸皮又来问了,
举个例子,如果用NHET做GIO使用如何来实现,谢谢!!!
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.
Other Parts Discussed in Thread: HALCOGEN
本来记得是看过的,现在自己要用了,找半天没见着,所以厚着脸皮又来问了,
举个例子,如果用NHET做GIO使用如何来实现,谢谢!!!
Hi Surface,
可以这样使用,但是需要做一些初始化操作,在HALCoGen中完成即可。
如果是我的话,使用HET或者其他数字模块的IO,直接操作它的寄存器就好了,如果觉得不方便,那么要自己写一个接口即可。
比如,比较关键的几个寄存器分别是:
1. IO的方向: DIR寄存器
2. IO的开漏状态: PDR寄存器
3. IO的上下拉状态: PULDIS和PSL寄存器
4. IO的输出值: 一般用SET和CLR寄存器
5. IO的输入值: 也是用SET和CLR就可以,也可以用IN这个寄存器。
看技术手册(TRM)的话,几乎所有IO都有上述寄存器,只不过有时候名字不同而已,不离其宗。
1, 2, 3步一般在初始化中运行一次就OK了。
4和5,可能需要经常使用的。
比如读取hetPORT1的值: result = hetREG1->DSET;
把HET00引脚拉高: hetREG1->DSET = 0x01;