1. Pin配置GPT
Pin配置是指在e2 Studio的Pin Configuration视图中,为特定的引脚分配功能。在这种情况下,GPT模块的引脚功能(如GTIOC4A和GTIOC4B)被分配给特定的IO口。
使用场景
- 引脚功能分配:当你需要为特定的引脚分配GPT功能时,例如GTIOC4A作为输出比较信号。
- 复用功能选择:当一个引脚具有多个复用功能时,需要在此配置中选择正确的功能。
配置步骤
- 打开Pin Configuration视图。
- 选择需要配置的GPT模块。
- 在右侧的引脚配置中,为GTIOC4A和GTIOC4B分配具体的IO口。
2. Stack配置GPT
Stack配置是指在e2 Studio的Stacks Configuration视图中,添加和配置GPT模块的驱动程序和相关设置。在这种情况下,你配置的是GPT模块的高层应用逻辑,而不是具体的引脚。
使用场景
- 驱动程序配置:当你需要配置GPT模块的驱动程序、定时器参数和中断处理等高层功能时。
- 模块初始化:当你需要在程序启动时初始化GPT模块,并配置其运行参数时。
配置步骤
- 打开Stacks Configuration视图。
- 在HAL/Common中,添加GPT模块的驱动程序。
- 配置GPT模块的参数,例如定时器周期、中断处理等。
两者区别
- Pin配置:主要用于物理引脚的功能分配和复用功能选择。它解决的是“这个引脚做什么”的问题。
- Stack配置:主要用于软件层面的模块配置和驱动程序设置。它解决的是“这个模块如何工作”的问题。
如何配置?
①先Pin配置
假设你需要将GPT6的GTIOC4A功能配置到P600引脚:
- 打开Pin Configuration视图。
- 选择GPT6模块。
- 在右侧配置中,将GTIOC4B分配给P600。
②后Stack配置
假设你需要为GPT模块配置定时器功能:
- 打开Stacks Configuration视图。
- 在HAL/Common中,添加Timer, General PWM(r_gpt)驱动。
- 配置定时器参数,例如周期、模式等。
补充:如果你不先配置Pin,那么可能会导致一个情况出现!!!(图①②配置好了,③Pins不会自动更新哦!)
其他情况
继续依照上面的例子子为例,如果你不需要GPT实打实地从一个IO口输出PWM波来控制的话,你是可以直接跳过Pin配置的,而只配置Stack,这样你就只可以使用其软件上带来的效果了,比如利用回调函数达到某种效果等等,而无法使用其物理上带的效果:用PWM控制电机等等。
总结
Pin配置和Stack配置是e2 Studio中配置GPT模块的两个环节,物理和软件环节,可以缺少前者仅得到软件效果。但是要得到物理效果必须两者都要配置。Pin配置关注的是物理引脚的功能分配,而Stack配置关注的是模块的高层应用逻辑和驱动程序设置。