【STM32】TIM1在电机应用时的注意事项

互补通道OC和OCN的输出极性

OC1和OC1N同时使能的时候,两个才是互补的,OC相对OCREF高电平有效,OCN相对OCREF低电平有效。当OC1或OC1N只选中一个通道,那么就没有互补的概念,都是OCxREF有效时OC或OC1N有效。

举例:测试电机Driver的导通极性,需要打开U相的上半桥和V相的下半桥。如果采样电阻上有电流经过,证明两个半桥均导通,进而可以判断driver导通极性。

使能OC1和OC2N,如果采样电阻上有电流,那么说明两个半桥导通了。两个引脚输出的波形是同向的,因为这两个不属于一组互补通道,所以都是OCxREF有效的时候有效。由此可知,上下半桥都是高电平导通。

复制代码
TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High;    //  输出有效电平
TIM_OCInitStructure.TIM_OCNPolarity = TIM_OCNPolarity_High; // 
TIM_OCInitStructure.TIM_OCIdleState = TIM_OCIdleState_Reset;   // 空闲状态输出
TIM_OCInitStructure.TIM_OCNIdleState = TIM_OCNIdleState_Reset;

1、输出有效电平,OC和OCN都是高电平有效的话,输出的信号就是互补的。

2、空闲状态输出,指的是MOE没有使能的情况下,OC和OCN的输出电平。当前的两个电平都是低电平。

复制代码
TIM_BDTRStructure.TIM_OSSRState = TIM_OSSRState_Enable;
TIM_BDTRStructure.TIM_OSSIState = TIM_OSSIState_Enable; // MOE = 0 时的配置

1、OSSI = 1,决定了OIS和OISN是否生效。也就是上面的 TIM_OCIdleState_Reset,TIM_OCNIdleState_Reset两个配置是否生效。

具体看表75.

OCxEN是OC引脚输出的使能信号。当OCxEN = 1时,是输出状态。 =0时,是输入高阻。F0和F4是这样,F1不是。

相关推荐
技术liul16 小时前
使用安卓平板,通过USB数据线(而不是Wi-Fi)来控制电脑(版本1)
android·stm32·电脑
anghost15018 小时前
基于 STM32 的多传感器健康监测系统设计
stm32·单片机·嵌入式硬件
玉~你还好吗18 小时前
【嵌入式电机控制#34】FOC:意法电控驱动层源码解析——HALL传感器中断(不在两大中断内,但重要)
单片机·嵌入式系统·电机控制
STC_USB_CAN_805119 小时前
所有普通I/O口都支持中断的51单片机@Ai8051U, AiCube 图形化配置
单片机·嵌入式硬件·51单片机
正点原子20 小时前
《ESP32-S3使用指南—IDF版 V1.6》第三十四章 RGB触摸实验
单片机·物联网·嵌入式
码小文21 小时前
Altium Designer 22使用笔记(8)---PCB电气约束设置
笔记·嵌入式硬件·硬件工程·ad22
dumpling012021 小时前
新手向:使用STM32通过RS485通信接口控制步进电机
stm32·单片机·嵌入式硬件
hazy1k21 小时前
STM32-FreeRTOS快速入门指南(中)
stm32·单片机·嵌入式硬件
清风6666661 天前
基于51单片机自动浇花1602液晶显示设计
单片机·嵌入式硬件·mongodb·毕业设计·51单片机·课程设计
古译汉书1 天前
嵌入式-SPI番外之按钮驱动程序的编写-Day15
c语言·stm32·单片机·嵌入式硬件·mcu·算法