工具/软件:Code Composer Studio
分配结构变量时遇到以下错误
compareConfig_PWM1.compareValue
erro:表达式必须是可修改的 lvalue
该结构位于定时器_中、内部 h
变量为 compareValue
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.
工具/软件:Code Composer Studio
分配结构变量时遇到以下错误
compareConfig_PWM1.compareValue
erro:表达式必须是可修改的 lvalue
该结构位于定时器_中、内部 h
变量为 compareValue
#include "steer.h
/* Timer_A 上行配置参数*/
CONST Timer_A_UpDownModeConfig upDownConfig =
{
Timer_A_CLOCKSOURCE_SMCLK、// SMCLK 时钟源
Timer_A_CLOCKSOURCE_DELAG_8、// SMCLK/1 = 3MHz
30000、// 127个周期
Timer_A_TAIE_INTERRUPT_DISABLE、//禁用计时器中断
Timer_A_CCIE_CCR0_INTERRUPT_DISABLE、//禁用 CCR0中断
Timer_A_DO 清除//清除值
};
/* Timer_A 比较配置参数(PWM1)*/
CONST Timer_A_CompareModeConfig compareConfig_PWM1 =
{
Timer_A_CAPTURECOMPARE 寄存器_1、//使用 CCR1
Timer_A_CAPTURECMOLE_INTERRUPT_DISABLE、//禁用 CCR 中断
Timer_A_OUTPUTMODE_TOGGLE_SET、//切换输出但
29250 // 32占空比
};
/* Timer_A 比较配置参数(PWM2)*/
CONST Timer_A_CompareModeConfig compareConfig_PWM2 =
{
Timer_A_CAPTURECOMPARE 寄存器_2、//使用 CCR2
Timer_A_CAPTURECMOLE_INTERRUPT_DISABLE、//禁用 CCR 中断
Timer_A_OUTPUTMODE_TOGGLE_SET、//切换输出但
26250 // 96占空比
};
空 Servo_TurnAngle (浮点值)
{
f_cycle 浮点;
f_cycle =(30000-3000/180)*值;//角度
compareConfig_PWM1.compareValue = f_cycle;//new pulse erro: expression 必须是可修改的 lvalue
// TIM2_PwmConfig.dutyCycle =(INT16U) f_cycle;//新建脉冲
MAP_Timer_A_initCompare (timer_A1_base、&compareConfig_PWM1);
};
timer_a.h
typedef 结构体_Timer_A_CompareModeConfig
{
UINT_fast16_t compareRegister;
uint_fast16_t compareInterruptEnable;
uint_fast16_t compareOutputMode;
uint_fast16_t compareValue;
} Timer_A_CompareModeConfig;
[引用 user="user5363230]compareConfig_PWM1.compareValue = f_cycle;//新脉冲 erro: 表达式必须是可修改的 lvalue compareConfig_PWM1变量已声明为 const qualified、这说明了错误:
[引用用户="user5363230"]确认 Timer_A_CompareModeConfig compareConfig_PWM1 =[/引用]