注册 登录
查看: 749|回复: 5

[K60] 山外库中FTM_CH0与FTMn_CH0的区别是什么?

[复制链接]
发表于 2014-11-20 00:06:14 | 显示全部楼层 |阅读模式
在操作舵机和电机时用的是FTM_CH0,用source Insight查看只能找到枚举定义,但是FTMn_CHO是有定义端口号的,请教诸位大神能否给解释一下。void FTM_PWM_Duty(FTMn_e ftmn, FTM_CHn_e ch, uint32 duty)
中FTM_CHn的用法是
// 配置FTM通道值
    FTM_CnV_REG(FTMN[ftmn], ch) = cv;
找了一下宏定义#define FTM_CnV_REG(base,index)                  ((base)->CONTROLS[index].CnV)
找了下数组FTM_MemMapPtr FTMN[3] = {FTM0_BASE_PTR, FTM1_BASE_PTR, FTM2_BASE_PTR}; //定义三个指针数组保存 FTMn_e 的地址


不明白宏定义什么意思,C语言没学好,求大神指教,怎么看端口。

回复

使用道具 举报

发表于 2014-11-20 00:07:57 | 显示全部楼层
FTM_CH0 是通道号,枚举而已

FTMn_CHO 是不同FTM的通道对应的管脚
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-11-20 00:21:50 | 显示全部楼层
仰逸致 发表于 2014-11-20 00:07
FTM_CH0 是通道号,枚举而已

FTMn_CHO 是不同FTM的通道对应的管脚

函数FTM_PWM_Duty(MOTOR_FTM, MOTOR1_PWM,i)  在【#define MOTOR_FTM   FTM0 #define MOTOR1_PWM  FTM_CH3】条件下就是 FTM_PWM_Duty(FTM0, 4,i)  ,是这样吗?  那么怎么看不同通信号对应的引脚呢?  谢谢。
回复 支持 反对

使用道具 举报

发表于 2014-11-20 00:27:09 | 显示全部楼层
D12350 发表于 1416414110
函数FTM_PWM_Duty(MOTOR_FTM, MOTOR1_PWM,i)  在【#define MOTOR_FTM   FTM0 #define MOTOR1_PWM  FTM_CH3】条件下就是 FTM_PWM_Duty(FTM0, 4,i)  ,是这样吗?  那么怎么看不同通信号对应的引脚呢?  谢谢。
FTM_CH3 对应的值为3!!!
即FTM_PWM_Duty(FTM0, 3,i);

我们有专门的文件配置管脚复用的:
一天攻破 K60  5.0版本在:\Board\inc\FIRE_PORT_cfg.h
5.1版本在:App\Inc\PORT_cfg.h

(打开看看,很容易知道如何配置的)
来自PC客户端 来自PC客户端
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-11-20 00:38:23 | 显示全部楼层
山外メ雲ジ 发表于 2014-11-20 00:27
FTM_CH3 对应的值为3!!!
即FTM_PWM_Duty(FTM0, 3,i);

额,是3。但是PORT_cfg.h 里边只有FTMn_CHe的管脚配置,难道FTMn_CHe的管脚配置就是FTM_CHe的管脚配置?谢谢山外哥,能解答一下么?
回复 支持 反对

使用道具 举报

发表于 2014-11-20 10:48:22 | 显示全部楼层
D12350 发表于 2014-11-20 00:38
额,是3。但是PORT_cfg.h 里边只有FTMn_CHe的管脚配置,难道FTMn_CHe的管脚配置就是FTM_CHe的管脚配置? ...

这部分的代码是山外哥的底层配置管脚定义,其他的文件都会根据这部分的代码定义来进行不同的初始化配置。

如果你仅仅是用的话,直接按照配置的方法来弄就好。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回列表 返回顶部