UIFlow 上手教程
电机匀速旋转
from m5stack import *
from m5ui import *
from uiflow import *
import unit
setScreenColor(0x222222)
bldc_driver_0 = unit.get(unit.BLDC_DRIVER, unit.PORTA)
bldc_driver_0.init_i2c_address(0x65)
bldc_driver_0.set_motor_model(1)
bldc_driver_0.set_mode(0)
while True:
bldc_driver_0.set_open_loop_pwm(500)
bldc_driver_0.set_rpm_float(500)
print((str('rpm value:') + str((bldc_driver_0.get_read_back_rpm_str))))
print((str('pwm value:') + str((bldc_driver_0.get_open_loop_pwm))))
wait_ms(2)
bldc_driver_0.init_i2c_address(0x65)
print((str('Version:') + str((bldc_driver_0.get_device_spec(0xFE)))))
print((str('Current direction:') + str((bldc_driver_0.get_motor_current_direction))))
print((str('Current mode:') + str((bldc_driver_0.get_current_mode))))
print((str('Mofot Current mode:') + str((bldc_driver_0.get_motor_current_model))))
print((str('pole pairs:') + str((bldc_driver_0.get_motor_pole_pairs))))
print((str('PID value:') + str((bldc_driver_0.get_pid_value))))
print((str('dutycycle value:') + str((bldc_driver_0.get_open_loop_pwm))))
print((str('freq value') + str((bldc_driver_0.get_read_back_freq_float))))
print((str('freq value:') + str((bldc_driver_0.get_read_back_freq_int))))
print((str('freq value:') + str((bldc_driver_0.get_read_back_freq_str))))
print((str('freq value:') + str((bldc_driver_0.get_read_back_freq_float))))
print((str('rpm value:') + str((bldc_driver_0.get_read_back_rpm_int))))
print((str('rpm value:') + str((bldc_driver_0.get_read_back_rpm_str))))
print((str('rpm value:') + str((bldc_driver_0.get_read_back_rpm_float))))
print((str('rpm value:') + str((bldc_driver_0.get_rpm_int))))
print((str('motor status:') + str((bldc_driver_0.get_motor_status))))
bldc_driver_0.save_data_in_flash()
bldc_driver_0.set_direction(0)
bldc_driver_0.set_i2c_address(0x65)
bldc_driver_0.set_mode(0)
bldc_driver_0.set_motor_model(0)
bldc_driver_0.set_open_loop_pwm(500)
bldc_driver_0.set_pid_value(14200, 5536, 1580)
bldc_driver_0.set_pole_pairs(7)
bldc_driver_0.set_rpm_float(500)
bldc_driver_0.set_rpm_int(500)