Port
老规矩,直接新建Port,双击进入
进入PortContainer标签页,新建一个引脚容器
双击进入容器,输入要配置引脚数目
然后进入PortPin标签栏,新建一个引脚
双击进入
这里有几个点需要注意一下:
引脚的PCR值
Pin Contral Register引脚控制寄存器
对于S32K144来说,有五个端口ABCDE,每个端口32个引脚。
举例,PT D 16:32*3+16=112
是否允许上下拉
未配置引脚怎么处理?
一般悬空处理,但考虑到功耗的影响,未使用的引脚均作为输入,内部上拉。
引脚这么多一个一个配置,那得多麻烦,不怕EB里面有直接配置所有未使用引脚的功能:
回到最初的界面:
常用接口函数
DIO
DIO Digital Input/Output Driver主要是对微控制器硬件引脚的访问进行了抽象。
说白了,就是没有实际用处,等于在Port外面又套了一层衣服。
所以要注意:Dio模块中涉及的DIO Channel,即单片机引脚(Pin),若要正常使用,必须在Port模块中对该引脚进行属性配置,即配置为GPIO(General Purpose I/O)模式。
配置如下:
老规矩,新建,双击进入:
进入DioPort标签页,新建DioPort,然后双击进入
这个Dio Port Id是这么算的:对于S32K144来说,有五个端口ABCDE,A=0、B=1、C=2、D=3……
所以我们的PTD16,对应端口序号是3。
然后进入DioChannel标签栏下:新建通道
注意这里的Dio Channel Id是通道的ID,和上面的端口ID不是一个东西,比如我们的PTD16,通道ID就是16。
Port代表着端口,ABCDE…… Channel代表着通道,1234567……
总结
如果说Port是配置了每一个引脚的功能状态,那么Dio更像是给每个引脚取一个名字,并给它们下发指令,比如让他们变成高电平,或者低电平,或者翻转。