Change common_hal_mcu_processor_set_frequency to void
* Add warning about setting RP2040 frequency
This commit is contained in:
parent
a84a8855ed
commit
bfba1e4100
@ -52,15 +52,13 @@ float common_hal_mcu_processor_get_temperature(void) {
|
|||||||
return temp;
|
return temp;
|
||||||
}
|
}
|
||||||
|
|
||||||
uint32_t common_hal_mcu_processor_set_frequency(mcu_processor_obj_t *self,
|
void common_hal_mcu_processor_set_frequency(mcu_processor_obj_t *self,
|
||||||
uint32_t frequency) {
|
uint32_t frequency) {
|
||||||
uint32_t freq = frequency / 1000000;
|
uint32_t freq = frequency / 1000000;
|
||||||
if (freq != 24 && freq != 150 && freq != 396 && freq != 450 && freq != 528 && freq != 600 &&
|
if (freq != 24 && freq != 150 && freq != 396 && freq != 450 && freq != 528 && freq != 600 &&
|
||||||
freq != 720 && freq != 816 && freq != 912 && freq != 960 && freq != 1008) {
|
freq != 720 && freq != 816 && freq != 912 && freq != 960 && freq != 1008) {
|
||||||
mp_raise_ValueError(translate("Frequency must be 24, 150, 396, 450, 528, 600, 720, 816, 912, 960 or 1008 Mhz"));
|
mp_raise_ValueError(translate("Frequency must be 24, 150, 396, 450, 528, 600, 720, 816, 912, 960 or 1008 Mhz"));
|
||||||
}
|
}
|
||||||
SystemCoreClock = setarmclock(frequency);
|
|
||||||
return SystemCoreClock;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -61,14 +61,10 @@ uint32_t common_hal_mcu_processor_get_frequency(void) {
|
|||||||
return clock_get_hz(clk_sys);
|
return clock_get_hz(clk_sys);
|
||||||
}
|
}
|
||||||
|
|
||||||
uint32_t common_hal_mcu_processor_set_frequency(mcu_processor_obj_t *self,
|
void common_hal_mcu_processor_set_frequency(mcu_processor_obj_t *self, uint32_t frequency) {
|
||||||
uint32_t frequency) {
|
if (!set_sys_clock_khz(frequency / 1000, false)) {
|
||||||
uint32_t freq = frequency / 1000;
|
mp_arg_error_invalid(MP_QSTR_frequency);
|
||||||
|
|
||||||
if (!set_sys_clock_khz(freq, false)) {
|
|
||||||
mp_raise_ValueError(translate("Invalid frequency supplied"));
|
|
||||||
}
|
}
|
||||||
return clock_get_hz(clk_sys);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void common_hal_mcu_processor_get_uid(uint8_t raw_id[]) {
|
void common_hal_mcu_processor_get_uid(uint8_t raw_id[]) {
|
||||||
|
@ -67,8 +67,11 @@
|
|||||||
//| frequency: int
|
//| frequency: int
|
||||||
//| """The CPU operating frequency in Hertz.
|
//| """The CPU operating frequency in Hertz.
|
||||||
//|
|
//|
|
||||||
//| **Limitations:** Setting the ``frequency`` is possible on RP2040 boards and some i.MX boards.
|
//| **Limitations:** On most boards, ``frequency`` is read-only. Setting
|
||||||
//| On most boards, ``frequency`` is read-only.
|
//| the ``frequency`` is possible on RP2040 boards and some i.MX boards.
|
||||||
|
//|
|
||||||
|
//| .. warning:: On RP2040 boards changing the frequency may cause issues
|
||||||
|
//| with other subsystems, such as USB, PWM, and PIO.
|
||||||
//| """
|
//| """
|
||||||
|
|
||||||
#if CIRCUITPY_SETTABLE_PROCESSOR_FREQUENCY
|
#if CIRCUITPY_SETTABLE_PROCESSOR_FREQUENCY
|
||||||
|
@ -39,6 +39,6 @@ mcu_reset_reason_t common_hal_mcu_processor_get_reset_reason(void);
|
|||||||
float common_hal_mcu_processor_get_temperature(void);
|
float common_hal_mcu_processor_get_temperature(void);
|
||||||
void common_hal_mcu_processor_get_uid(uint8_t raw_id[]);
|
void common_hal_mcu_processor_get_uid(uint8_t raw_id[]);
|
||||||
float common_hal_mcu_processor_get_voltage(void);
|
float common_hal_mcu_processor_get_voltage(void);
|
||||||
uint32_t common_hal_mcu_processor_set_frequency(mcu_processor_obj_t *self, uint32_t frequency);
|
void common_hal_mcu_processor_set_frequency(mcu_processor_obj_t *self, uint32_t frequency);
|
||||||
|
|
||||||
#endif // MICROPY_INCLUDED_SHARED_BINDINGS_MICROCONTROLLER_PROCESSOR_H
|
#endif // MICROPY_INCLUDED_SHARED_BINDINGS_MICROCONTROLLER_PROCESSOR_H
|
||||||
|
Loading…
x
Reference in New Issue
Block a user