mirror of https://github.com/ARMmbed/mbed-os.git
pwmout - fixed compile errors
parent
6625bdb9f3
commit
b03d80fd08
|
@ -134,6 +134,7 @@ int pwmout_read_period_us(pwmout_t *obj)
|
||||||
{
|
{
|
||||||
uint32_t tmp = 0;
|
uint32_t tmp = 0;
|
||||||
if (pwm_clock_mhz > 0) {
|
if (pwm_clock_mhz > 0) {
|
||||||
|
FTM_Type *base = ftm_addrs[obj->pwm_name >> TPM_SHIFT];
|
||||||
tmp = ((base->MOD) + 1) / pwm_clock_mhz;
|
tmp = ((base->MOD) + 1) / pwm_clock_mhz;
|
||||||
}
|
}
|
||||||
return tmp;
|
return tmp;
|
||||||
|
@ -164,6 +165,7 @@ int pwmout_read_pulsewidth_us(pwmout_t *obj)
|
||||||
{
|
{
|
||||||
uint32_t tmp = 0;
|
uint32_t tmp = 0;
|
||||||
if (pwm_clock_mhz > 0) {
|
if (pwm_clock_mhz > 0) {
|
||||||
|
FTM_Type *base = ftm_addrs[obj->pwm_name >> TPM_SHIFT];
|
||||||
tmp = (base->CONTROLS[obj->pwm_name & 0xF].CnV) / pwm_clock_mhz;
|
tmp = (base->CONTROLS[obj->pwm_name & 0xF].CnV) / pwm_clock_mhz;
|
||||||
}
|
}
|
||||||
return tmp;
|
return tmp;
|
||||||
|
|
|
@ -134,6 +134,7 @@ int pwmout_read_period_us(pwmout_t *obj)
|
||||||
{
|
{
|
||||||
uint32_t tmp = 0;
|
uint32_t tmp = 0;
|
||||||
if (pwm_clock_mhz > 0) {
|
if (pwm_clock_mhz > 0) {
|
||||||
|
FTM_Type *base = ftm_addrs[obj->pwm_name >> TPM_SHIFT];
|
||||||
tmp = ((base->MOD) + 1) / pwm_clock_mhz;
|
tmp = ((base->MOD) + 1) / pwm_clock_mhz;
|
||||||
}
|
}
|
||||||
return tmp;
|
return tmp;
|
||||||
|
@ -164,6 +165,7 @@ int pwmout_read_pulsewidth_us(pwmout_t *obj)
|
||||||
{
|
{
|
||||||
uint32_t tmp = 0;
|
uint32_t tmp = 0;
|
||||||
if (pwm_clock_mhz > 0) {
|
if (pwm_clock_mhz > 0) {
|
||||||
|
FTM_Type *base = ftm_addrs[obj->pwm_name >> TPM_SHIFT];
|
||||||
tmp = (base->CONTROLS[obj->pwm_name & 0xF].CnV) / pwm_clock_mhz;
|
tmp = (base->CONTROLS[obj->pwm_name & 0xF].CnV) / pwm_clock_mhz;
|
||||||
}
|
}
|
||||||
return tmp;
|
return tmp;
|
||||||
|
|
|
@ -131,6 +131,7 @@ int pwmout_read_period_us(pwmout_t *obj)
|
||||||
{
|
{
|
||||||
uint32_t tmp = 0;
|
uint32_t tmp = 0;
|
||||||
if (pwm_clock_mhz > 0) {
|
if (pwm_clock_mhz > 0) {
|
||||||
|
TPM_Type *base = tpm_addrs[obj->pwm_name >> TPM_SHIFT];
|
||||||
tmp = ((base->MOD) + 1) / pwm_clock_mhz;
|
tmp = ((base->MOD) + 1) / pwm_clock_mhz;
|
||||||
}
|
}
|
||||||
return tmp;
|
return tmp;
|
||||||
|
@ -159,6 +160,7 @@ int pwmout_read_pulsewidth_us(pwmout_t *obj)
|
||||||
{
|
{
|
||||||
uint32_t tmp = 0;
|
uint32_t tmp = 0;
|
||||||
if (pwm_clock_mhz > 0) {
|
if (pwm_clock_mhz > 0) {
|
||||||
|
TPM_Type *base = tpm_addrs[obj->pwm_name >> TPM_SHIFT];
|
||||||
tmp = (base->CONTROLS[obj->pwm_name & 0xF].CnV) / pwm_clock_mhz;
|
tmp = (base->CONTROLS[obj->pwm_name & 0xF].CnV) / pwm_clock_mhz;
|
||||||
}
|
}
|
||||||
return tmp;
|
return tmp;
|
||||||
|
|
|
@ -131,6 +131,7 @@ int pwmout_read_period_us(pwmout_t *obj)
|
||||||
{
|
{
|
||||||
uint32_t tmp = 0;
|
uint32_t tmp = 0;
|
||||||
if (pwm_clock_mhz > 0) {
|
if (pwm_clock_mhz > 0) {
|
||||||
|
TPM_Type *base = tpm_addrs[obj->pwm_name >> TPM_SHIFT];
|
||||||
tmp = ((base->MOD) + 1) / pwm_clock_mhz;
|
tmp = ((base->MOD) + 1) / pwm_clock_mhz;
|
||||||
}
|
}
|
||||||
return tmp;
|
return tmp;
|
||||||
|
@ -159,6 +160,7 @@ int pwmout_read_pulsewidth_us(pwmout_t *obj)
|
||||||
{
|
{
|
||||||
uint32_t tmp = 0;
|
uint32_t tmp = 0;
|
||||||
if (pwm_clock_mhz > 0) {
|
if (pwm_clock_mhz > 0) {
|
||||||
|
TPM_Type *base = tpm_addrs[obj->pwm_name >> TPM_SHIFT];
|
||||||
tmp = (base->CONTROLS[obj->pwm_name & 0xF].CnV) / pwm_clock_mhz;
|
tmp = (base->CONTROLS[obj->pwm_name & 0xF].CnV) / pwm_clock_mhz;
|
||||||
}
|
}
|
||||||
return tmp;
|
return tmp;
|
||||||
|
|
|
@ -131,6 +131,7 @@ int pwmout_read_period_us(pwmout_t *obj)
|
||||||
{
|
{
|
||||||
uint32_t tmp = 0;
|
uint32_t tmp = 0;
|
||||||
if (pwm_clock_mhz > 0) {
|
if (pwm_clock_mhz > 0) {
|
||||||
|
TPM_Type *base = tpm_addrs[obj->pwm_name >> TPM_SHIFT];
|
||||||
tmp = ((base->MOD) + 1) / pwm_clock_mhz;
|
tmp = ((base->MOD) + 1) / pwm_clock_mhz;
|
||||||
}
|
}
|
||||||
return tmp;
|
return tmp;
|
||||||
|
@ -159,6 +160,7 @@ int pwmout_read_pulsewidth_us(pwmout_t *obj)
|
||||||
{
|
{
|
||||||
uint32_t tmp = 0;
|
uint32_t tmp = 0;
|
||||||
if (pwm_clock_mhz > 0) {
|
if (pwm_clock_mhz > 0) {
|
||||||
|
TPM_Type *base = tpm_addrs[obj->pwm_name >> TPM_SHIFT];
|
||||||
tmp = (base->CONTROLS[obj->pwm_name & 0xF].CnV) / pwm_clock_mhz;
|
tmp = (base->CONTROLS[obj->pwm_name & 0xF].CnV) / pwm_clock_mhz;
|
||||||
}
|
}
|
||||||
return tmp;
|
return tmp;
|
||||||
|
|
|
@ -134,6 +134,7 @@ int pwmout_read_period_us(pwmout_t *obj)
|
||||||
{
|
{
|
||||||
uint32_t tmp = 0;
|
uint32_t tmp = 0;
|
||||||
if (pwm_clock_mhz > 0) {
|
if (pwm_clock_mhz > 0) {
|
||||||
|
FTM_Type *base = ftm_addrs[obj->pwm_name >> TPM_SHIFT];;
|
||||||
tmp = ((base->MOD) + 1) / pwm_clock_mhz;
|
tmp = ((base->MOD) + 1) / pwm_clock_mhz;
|
||||||
}
|
}
|
||||||
return tmp;
|
return tmp;
|
||||||
|
@ -164,6 +165,7 @@ int pwmout_read_pulsewidth_us(pwmout_t *obj)
|
||||||
{
|
{
|
||||||
uint32_t tmp = 0;
|
uint32_t tmp = 0;
|
||||||
if (pwm_clock_mhz > 0) {
|
if (pwm_clock_mhz > 0) {
|
||||||
|
FTM_Type *base = ftm_addrs[obj->pwm_name >> TPM_SHIFT];
|
||||||
tmp = (base->CONTROLS[obj->pwm_name & 0xF].CnV) / pwm_clock_mhz;
|
tmp = (base->CONTROLS[obj->pwm_name & 0xF].CnV) / pwm_clock_mhz;
|
||||||
}
|
}
|
||||||
return tmp;
|
return tmp;
|
||||||
|
|
|
@ -162,6 +162,7 @@ int pwmout_read_period_us(pwmout_t *obj)
|
||||||
{
|
{
|
||||||
uint32_t tmp = 0;
|
uint32_t tmp = 0;
|
||||||
if (pwm_clock_mhz > 0) {
|
if (pwm_clock_mhz > 0) {
|
||||||
|
FTM_Type *base = ftm_addrs[obj->pwm_name >> TPM_SHIFT];
|
||||||
uint16_t mod = base->MOD & FTM_MOD_MOD_MASK;
|
uint16_t mod = base->MOD & FTM_MOD_MOD_MASK;
|
||||||
tmp = ((mod) + 1) / pwm_clock_mhz;
|
tmp = ((mod) + 1) / pwm_clock_mhz;
|
||||||
}
|
}
|
||||||
|
@ -193,6 +194,7 @@ int pwmout_read_pulsewidth_us(pwmout_t *obj)
|
||||||
{
|
{
|
||||||
uint32_t tmp = 0;
|
uint32_t tmp = 0;
|
||||||
if (pwm_clock_mhz > 0) {
|
if (pwm_clock_mhz > 0) {
|
||||||
|
FTM_Type *base = ftm_addrs[obj->pwm_name >> TPM_SHIFT];
|
||||||
tmp = (base->CONTROLS[obj->pwm_name & 0xF].CnV) / pwm_clock_mhz;
|
tmp = (base->CONTROLS[obj->pwm_name & 0xF].CnV) / pwm_clock_mhz;
|
||||||
}
|
}
|
||||||
return tmp;
|
return tmp;
|
||||||
|
|
|
@ -353,7 +353,7 @@ void pwmout_pulsewidth_us(pwmout_t *obj, int pulse)
|
||||||
nordic_pwm_restart(obj);
|
nordic_pwm_restart(obj);
|
||||||
}
|
}
|
||||||
|
|
||||||
int pwmout_read_pulsewidth_us(pwmout_t *obj {
|
int pwmout_read_pulsewidth_us(pwmout_t *obj) {
|
||||||
return (obj->period) * (obj->percent);
|
return (obj->period) * (obj->percent);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -194,7 +194,8 @@ void pwmout_pulsewidth_us(pwmout_t *obj, int us)
|
||||||
pwmout_config(obj, 1);
|
pwmout_config(obj, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
int pwmout_read_pulsewidth_us(pwmout_t *obj {
|
int pwmout_read_pulsewidth_us(pwmout_t *obj)
|
||||||
|
{
|
||||||
return obj->pulsewidth_us;
|
return obj->pulsewidth_us;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -180,7 +180,7 @@ void pwmout_pulsewidth_us(pwmout_t *obj, int us)
|
||||||
pwmout_config(obj, 1);
|
pwmout_config(obj, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
int pwmout_read_pulsewidth_us(pwmout_t *obj {
|
int pwmout_read_pulsewidth_us(pwmout_t *obj) {
|
||||||
return obj->pulsewidth_us;
|
return obj->pulsewidth_us;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -179,7 +179,8 @@ void pwmout_pulsewidth_us(pwmout_t *obj, int us)
|
||||||
pwmout_config(obj, 1);
|
pwmout_config(obj, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
int pwmout_read_pulsewidth_us(pwmout_t *obj {
|
int pwmout_read_pulsewidth_us(pwmout_t *obj)
|
||||||
|
{
|
||||||
return obj->pulsewidth_us;
|
return obj->pulsewidth_us;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -184,7 +184,8 @@ void pwmout_pulsewidth_us(pwmout_t *obj, int us)
|
||||||
pwmout_config(obj);
|
pwmout_config(obj);
|
||||||
}
|
}
|
||||||
|
|
||||||
int pwmout_read_pulsewidth_us(pwmout_t *obj {
|
int pwmout_read_pulsewidth_us(pwmout_t *obj)
|
||||||
|
{
|
||||||
return obj->pulsewidth_us;
|
return obj->pulsewidth_us;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -182,7 +182,8 @@ void pwmout_pulsewidth_us(pwmout_t *obj, int us)
|
||||||
pwmout_config(obj, 1);
|
pwmout_config(obj, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
int pwmout_read_pulsewidth_us(pwmout_t *obj {
|
int pwmout_read_pulsewidth_us(pwmout_t *obj)
|
||||||
|
{
|
||||||
return obj->pulsewidth_us;
|
return obj->pulsewidth_us;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -187,7 +187,8 @@ void pwmout_pulsewidth_us(pwmout_t *obj, int us)
|
||||||
pwmout_config(obj);
|
pwmout_config(obj);
|
||||||
}
|
}
|
||||||
|
|
||||||
int pwmout_read_pulsewidth_us(pwmout_t *obj {
|
int pwmout_read_pulsewidth_us(pwmout_t *obj)
|
||||||
|
{
|
||||||
return obj->pulsewidth_us;
|
return obj->pulsewidth_us;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -208,7 +208,8 @@ void pwmout_pulsewidth_us(pwmout_t *obj, int us)
|
||||||
pwmout_config(obj);
|
pwmout_config(obj);
|
||||||
}
|
}
|
||||||
|
|
||||||
int pwmout_read_pulsewidth_us(pwmout_t *obj {
|
int pwmout_read_pulsewidth_us(pwmout_t *obj)
|
||||||
|
{
|
||||||
return obj->pulsewidth_us;
|
return obj->pulsewidth_us;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -236,7 +236,8 @@ void pwmout_pulsewidth_us(pwmout_t *obj, int us)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
int pwmout_read_pulsewidth_us(pwmout_t *obj {
|
int pwmout_read_pulsewidth_us(pwmout_t *obj)
|
||||||
|
{
|
||||||
return (!(pwm->CTRL & (1 << 2))) ? pwm->MATCHREL1 + 1 : 0;
|
return (!(pwm->CTRL & (1 << 2))) ? pwm->MATCHREL1 + 1 : 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -174,6 +174,8 @@ void pwmout_period_us(pwmout_t *obj, int us)
|
||||||
|
|
||||||
int pwmout_read_period_us(pwmout_t *obj)
|
int pwmout_read_period_us(pwmout_t *obj)
|
||||||
{
|
{
|
||||||
|
timer_mr tid = pwm_timer_map[obj->pwm];
|
||||||
|
LPC_TMR_TypeDef *timer = Timers[tid.timer];
|
||||||
return (timer->MR3);
|
return (timer->MR3);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -202,7 +204,10 @@ void pwmout_pulsewidth_us(pwmout_t *obj, int us)
|
||||||
timer->TCR = TCR_CNT_EN;
|
timer->TCR = TCR_CNT_EN;
|
||||||
}
|
}
|
||||||
|
|
||||||
int pwmout_read_pulsewidth_us(pwmout_t *obj {
|
int pwmout_read_pulsewidth_us(pwmout_t *obj)
|
||||||
|
{
|
||||||
|
timer_mr tid = pwm_timer_map[obj->pwm];
|
||||||
|
LPC_TMR_TypeDef *timer = Timers[tid.timer];
|
||||||
return (timer->MR3 - timer->MR[tid.mr]);
|
return (timer->MR3 - timer->MR[tid.mr]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -155,7 +155,7 @@ void pwmout_period_us(pwmout_t *obj, int us)
|
||||||
|
|
||||||
int pwmout_read_period_us(pwmout_t *obj)
|
int pwmout_read_period_us(pwmout_t *obj)
|
||||||
{
|
{
|
||||||
return (float)(LPC_PWM1->MR0);
|
return (LPC_PWM1->MR0);
|
||||||
}
|
}
|
||||||
|
|
||||||
void pwmout_pulsewidth(pwmout_t *obj, float seconds)
|
void pwmout_pulsewidth(pwmout_t *obj, float seconds)
|
||||||
|
@ -185,8 +185,9 @@ void pwmout_pulsewidth_us(pwmout_t *obj, int us)
|
||||||
LPC_PWM1->LER |= 1 << obj->pwm;
|
LPC_PWM1->LER |= 1 << obj->pwm;
|
||||||
}
|
}
|
||||||
|
|
||||||
int pwmout_read_pulsewidth_us(pwmout_t *obj {
|
int pwmout_read_pulsewidth_us(pwmout_t *obj)
|
||||||
return (timer->MR3 - timer->MR[tid.mr]);
|
{
|
||||||
|
return (*obj->MR);
|
||||||
}
|
}
|
||||||
|
|
||||||
const PinMap *pwmout_pinmap()
|
const PinMap *pwmout_pinmap()
|
||||||
|
|
|
@ -196,6 +196,8 @@ void pwmout_period_us(pwmout_t *obj, int us)
|
||||||
|
|
||||||
int pwmout_read_period_us(pwmout_t *obj)
|
int pwmout_read_period_us(pwmout_t *obj)
|
||||||
{
|
{
|
||||||
|
PWM_Type *base = pwm_addrs[(obj->pwm_name >> PWM_SHIFT) & 0x7];
|
||||||
|
uint32_t module = (obj->pwm_name >> PWM_MODULE_SHIFT) & 0x3;
|
||||||
return (base->SM[module].VAL1) & PWM_VAL1_VAL1_MASK;
|
return (base->SM[module].VAL1) & PWM_VAL1_VAL1_MASK;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -228,9 +230,11 @@ void pwmout_pulsewidth_us(pwmout_t *obj, int us)
|
||||||
PWM_SetPwmLdok(base, (1 << module), true);
|
PWM_SetPwmLdok(base, (1 << module), true);
|
||||||
}
|
}
|
||||||
|
|
||||||
int pwmout_read_pulsewidth_us(pwmout_t *obj {
|
int pwmout_read_pulsewidth_us(pwmout_t *obj) {
|
||||||
uint16_t count;
|
uint16_t count;
|
||||||
|
PWM_Type *base = pwm_addrs[(obj->pwm_name >> PWM_SHIFT) & 0x7];
|
||||||
|
uint32_t module = (obj->pwm_name >> PWM_MODULE_SHIFT) & 0x3;
|
||||||
|
uint32_t pwmchannel = obj->pwm_name & 0x1;
|
||||||
if (pwmchannel == 0)
|
if (pwmchannel == 0)
|
||||||
{
|
{
|
||||||
count = (base->SM[module].VAL3) & PWM_VAL3_VAL3_MASK;
|
count = (base->SM[module].VAL3) & PWM_VAL3_VAL3_MASK;
|
||||||
|
|
|
@ -567,11 +567,11 @@ void pwmout_pulsewidth_us(pwmout_t *obj, int us)
|
||||||
pwmout_write(obj, value);
|
pwmout_write(obj, value);
|
||||||
}
|
}
|
||||||
|
|
||||||
int pwmout_read_pulsewidth_us(pwmout_t *obj {
|
int pwmout_read_pulsewidth_us(pwmout_t *obj)
|
||||||
|
{
|
||||||
uint32_t wk_pulse = 0;
|
uint32_t wk_pulse = 0;
|
||||||
|
|
||||||
if (obj->pwm >= MTU2_PWM_OFFSET)
|
if (obj->pwm >= MTU2_PWM_OFFSET) {
|
||||||
{
|
|
||||||
#ifdef FUMC_MTU2_PWM
|
#ifdef FUMC_MTU2_PWM
|
||||||
/* PWM by MTU2 */
|
/* PWM by MTU2 */
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue