Skip to content

Commit 7388ff8

Browse files
committed
pwmout - TMPM46B - add read methods for period and pulsewidth
1 parent 067431e commit 7388ff8

File tree

1 file changed

+12
-2
lines changed

1 file changed

+12
-2
lines changed

targets/TARGET_TOSHIBA/TARGET_TMPM46B/pwmout_api.c

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@ void pwmout_free(pwmout_t *obj)
8080
{
8181
// Stops and clear count operation
8282
TMRB_SetRunState(obj->channel, TMRB_STOP);
83-
pwmout_write(obj,0);
83+
pwmout_write(obj, 0);
8484
obj->channel = NULL;
8585
obj->trailing_timing = 0;
8686
obj->leading_timing = 0;
@@ -169,7 +169,7 @@ void pwmout_period_us(pwmout_t *obj, int us)
169169
// Restore the duty-cycle
170170
duty_cycle = (float)((obj->trailing_timing - obj->leading_timing) / obj->trailing_timing);
171171
obj->trailing_timing = cycles;
172-
obj->leading_timing = ((cycles)- (uint16_t)(cycles * duty_cycle));
172+
obj->leading_timing = ((cycles) - (uint16_t)(cycles * duty_cycle));
173173

174174
// Change the source clock division and period
175175
m_tmrb.Mode = TMRB_INTERVAL_TIMER;
@@ -192,6 +192,11 @@ void pwmout_period_us(pwmout_t *obj, int us)
192192
TMRB_SetRunState(obj->channel, TMRB_RUN);
193193
}
194194

195+
int pwmout_read_period_us(pwmout_t *obj)
196+
{
197+
return obj->trailing_timing;
198+
}
199+
195200
void pwmout_pulsewidth(pwmout_t *obj, float seconds)
196201
{
197202
pwmout_pulsewidth_us(obj, (seconds * 1000000.0f));
@@ -212,6 +217,11 @@ void pwmout_pulsewidth_us(pwmout_t *obj, int us)
212217
pwmout_write(obj, value);
213218
}
214219

220+
int pwmout_read_pulsewidth_us(pwmout_t *obj)
221+
{
222+
return obj->trailing_timing - obj->leading_timing;
223+
}
224+
215225
const PinMap *pwmout_pinmap()
216226
{
217227
return PinMap_PWM;

0 commit comments

Comments
 (0)