File tree Expand file tree Collapse file tree 1 file changed +14
-11
lines changed Expand file tree Collapse file tree 1 file changed +14
-11
lines changed Original file line number Diff line number Diff line change @@ -122,6 +122,7 @@ void analogWriteResolution(int res) {
122
122
123
123
void analogWrite (pin_size_t pinNumber , int value ) {
124
124
uint8_t pwm_index = 0 ;
125
+ uint8_t pwm_value = value ;
125
126
cy_rslt_t result = CY_RSLT_TYPE_ERROR ;
126
127
127
128
if (pinNumber > GPIO_PIN_COUNT ) {
@@ -144,19 +145,21 @@ void analogWrite(pin_size_t pinNumber, int value) {
144
145
break ;
145
146
}
146
147
}
148
+ if (pwm_index < PWM_HOWMANY ) {
147
149
148
- if (value < 0 ) {
149
- value = 0 ;
150
- }
151
- if (value > desiredWriteResolution ) {
152
- value = desiredWriteResolution ;
153
- }
150
+ if (pwm_value <= 0 ) {
151
+ pwm_value = 0 ;
152
+ }
153
+ if (pwm_value > desiredWriteResolution ) {
154
+ pwm_value = desiredWriteResolution ;
155
+ }
154
156
155
- float duty_cycle_pertentage = (value / desiredWriteResolution ) * 100.0f ;
157
+ float duty_cycle_pertentage = (pwm_value / desiredWriteResolution ) * 100.0f ;
156
158
157
- result = cyhal_pwm_set_duty_cycle (& pwm [pwm_index ].pwm_obj , duty_cycle_pertentage , PWM_FREQUENCY_HZ );
158
- pwm_assert (result );
159
+ result = cyhal_pwm_set_duty_cycle (& pwm [pwm_index ].pwm_obj , duty_cycle_pertentage , PWM_FREQUENCY_HZ );
160
+ pwm_assert (result );
159
161
160
- result = cyhal_pwm_start (& pwm [pwm_index ].pwm_obj );
161
- pwm_assert (result );
162
+ result = cyhal_pwm_start (& pwm [pwm_index ].pwm_obj );
163
+ pwm_assert (result );
164
+ }
162
165
}
You can’t perform that action at this time.
0 commit comments