gitextract_8a7fcmos/ ├── .gitmodules ├── 1.Hardware/ │ ├── .gitattributes │ ├── Controller/ │ │ ├── .gitignore │ │ ├── Controller.PcbDoc │ │ ├── Controller.PrjPCB │ │ ├── Controller.PrjPCBStructure │ │ └── Main.SchDoc │ ├── Dangle/ │ │ ├── .gitignore │ │ ├── Dangle.PcbDoc │ │ ├── Dangle.PrjPCB │ │ ├── Dangle.PrjPCBStructure │ │ └── Main.SchDoc │ ├── HandModule/ │ │ ├── .gitignore │ │ ├── HandModule.PcbDoc │ │ ├── HandModule.PrjPCB │ │ ├── HandModule.PrjPCBStructure │ │ └── Main.SchDoc │ ├── LedRing/ │ │ ├── .gitignore │ │ ├── LedRing.PcbDoc │ │ ├── LedRing.PrjPCB │ │ ├── LedRing.PrjPCBStructure │ │ └── Main.SchDoc │ ├── MotorDriver-20/ │ │ ├── .gitignore │ │ ├── Drive.SchDoc │ │ ├── Interface.SchDoc │ │ ├── MCU.SchDoc │ │ ├── Motor-20.PcbDoc │ │ ├── Motor-20.PrjPCB │ │ ├── Motor-20.PrjPCBStructure │ │ ├── Port.SchDoc │ │ └── Power.SchDoc │ ├── MotorDriver-42/ │ │ ├── .gitignore │ │ ├── Drive.SchDoc │ │ ├── Gerber/ │ │ │ ├── Motor-42-macro.APR_LIB │ │ │ ├── Motor-42.DRR │ │ │ ├── Motor-42.EXTREP │ │ │ ├── Motor-42.G1 │ │ │ ├── Motor-42.G2 │ │ │ ├── Motor-42.GBL │ │ │ ├── Motor-42.GBO │ │ │ ├── Motor-42.GBP │ │ │ ├── Motor-42.GBS │ │ │ ├── Motor-42.GD1 │ │ │ ├── Motor-42.GG1 │ │ │ ├── Motor-42.GKO │ │ │ ├── Motor-42.GM1 │ │ │ ├── Motor-42.GM10 │ │ │ ├── Motor-42.GM12 │ │ │ ├── Motor-42.GM13 │ │ │ ├── Motor-42.GM14 │ │ │ ├── Motor-42.GM15 │ │ │ ├── Motor-42.GPB │ │ │ ├── Motor-42.GPT │ │ │ ├── Motor-42.GTL │ │ │ ├── Motor-42.GTO │ │ │ ├── Motor-42.GTP │ │ │ ├── Motor-42.GTS │ │ │ ├── Motor-42.LDP │ │ │ ├── Motor-42.REP │ │ │ ├── Motor-42.RUL │ │ │ ├── Motor-42.TXT │ │ │ ├── Motor-42.apr │ │ │ └── Status Report.Txt │ │ ├── Interface.SchDoc │ │ ├── MCU.SchDoc │ │ ├── Motor-42.PcbDoc │ │ ├── Motor-42.PrjPCB │ │ ├── Motor-42.PrjPCBStructure │ │ ├── Port.SchDoc │ │ └── Power.SchDoc │ ├── MotorDriver-57-unused/ │ │ ├── .gitignore │ │ ├── Drive.SchDoc │ │ ├── Gerber/ │ │ │ ├── Motor-57-macro.APR_LIB │ │ │ ├── Motor-57.DRR │ │ │ ├── Motor-57.EXTREP │ │ │ ├── Motor-57.G1 │ │ │ ├── Motor-57.G2 │ │ │ ├── Motor-57.GBL │ │ │ ├── Motor-57.GBO │ │ │ ├── Motor-57.GBP │ │ │ ├── Motor-57.GBS │ │ │ ├── Motor-57.GD1 │ │ │ ├── Motor-57.GG1 │ │ │ ├── Motor-57.GKO │ │ │ ├── Motor-57.GM1 │ │ │ ├── Motor-57.GM10 │ │ │ ├── Motor-57.GM12 │ │ │ ├── Motor-57.GM13 │ │ │ ├── Motor-57.GM14 │ │ │ ├── Motor-57.GM15 │ │ │ ├── Motor-57.GPB │ │ │ ├── Motor-57.GPT │ │ │ ├── Motor-57.GTL │ │ │ ├── Motor-57.GTO │ │ │ ├── Motor-57.GTP │ │ │ ├── Motor-57.GTS │ │ │ ├── Motor-57.LDP │ │ │ ├── Motor-57.REP │ │ │ ├── Motor-57.RUL │ │ │ ├── Motor-57.TXT │ │ │ ├── Motor-57.apr │ │ │ └── Status Report.Txt │ │ ├── Interface.SchDoc │ │ ├── MCU.SchDoc │ │ ├── Motor-57.PcbDoc │ │ ├── Motor-57.PrjPCB │ │ ├── Motor-57.PrjPCBStructure │ │ ├── Port.SchDoc │ │ └── Power.SchDoc │ └── REF/ │ ├── .gitignore │ ├── REF-Base/ │ │ ├── .gitignore │ │ ├── Main.SchDoc │ │ ├── REF-Base.PcbDoc │ │ ├── REF-Base.PrjPCB │ │ └── REF-Base.PrjPCBStructure │ ├── REF-Unit/ │ │ ├── Main.SchDoc │ │ ├── REF-Unit.PcbDoc │ │ ├── REF-Unit.PrjPCB │ │ └── REF-Unit.PrjPCBStructure │ ├── REF.MbaDoc │ ├── REF.MbsDoc │ ├── REF.PrjMbd │ └── REF.PrjMbdStructure ├── 2.Firmware/ │ ├── Core-STM32F4-fw/ │ │ ├── .cproject │ │ ├── .gitignore │ │ ├── .idea/ │ │ │ ├── .gitignore │ │ │ ├── REF-STM32F4.iml │ │ │ ├── codeStyles/ │ │ │ │ └── codeStyleConfig.xml │ │ │ ├── deployment.xml │ │ │ ├── encodings.xml │ │ │ ├── inspectionProfiles/ │ │ │ │ └── Project_Default.xml │ │ │ ├── libraries/ │ │ │ │ ├── ROS.xml │ │ │ │ └── workspace.xml │ │ │ ├── misc.xml │ │ │ ├── modules.xml │ │ │ ├── ros.xml │ │ │ ├── serialmonitor_settings.xml │ │ │ └── vcs.xml │ │ ├── .mxproject │ │ ├── .project │ │ ├── 3rdParty/ │ │ │ ├── fibre/ │ │ │ │ └── cpp/ │ │ │ │ ├── include/ │ │ │ │ │ └── fibre/ │ │ │ │ │ ├── cpp_utils.hpp │ │ │ │ │ ├── crc.hpp │ │ │ │ │ ├── decoders.hpp │ │ │ │ │ ├── encoders.hpp │ │ │ │ │ └── protocol.hpp │ │ │ │ ├── package.lua │ │ │ │ └── protocol.cpp │ │ │ └── u8g2/ │ │ │ ├── cpp/ │ │ │ │ ├── Print.cpp │ │ │ │ ├── Print.h │ │ │ │ ├── Printable.h │ │ │ │ ├── U8g2lib.hpp │ │ │ │ ├── U8x8lib.cpp │ │ │ │ ├── U8x8lib.h │ │ │ │ ├── WString.cpp │ │ │ │ ├── WString.h │ │ │ │ ├── pgmspace.h │ │ │ │ ├── stdlib_noniso.c │ │ │ │ └── stdlib_noniso.h │ │ │ ├── u8g2.h │ │ │ ├── u8g2_bitmap.c │ │ │ ├── u8g2_box.c │ │ │ ├── u8g2_buffer.c │ │ │ ├── u8g2_circle.c │ │ │ ├── u8g2_cleardisplay.c │ │ │ ├── u8g2_d_memory.c │ │ │ ├── u8g2_d_setup.c │ │ │ ├── u8g2_font.c │ │ │ ├── u8g2_fonts.c │ │ │ ├── u8g2_hvline.c │ │ │ ├── u8g2_input_value.c │ │ │ ├── u8g2_intersection.c │ │ │ ├── u8g2_kerning.c │ │ │ ├── u8g2_line.c │ │ │ ├── u8g2_ll_hvline.c │ │ │ ├── u8g2_message.c │ │ │ ├── u8g2_polygon.c │ │ │ ├── u8g2_selection_list.c │ │ │ ├── u8g2_setup.c │ │ │ ├── u8g2_stm32f4.c │ │ │ ├── u8log.c │ │ │ ├── u8log_u8g2.c │ │ │ ├── u8log_u8x8.c │ │ │ ├── u8x8.h │ │ │ ├── u8x8_8x8.c │ │ │ ├── u8x8_byte.c │ │ │ ├── u8x8_cad.c │ │ │ ├── u8x8_capture.c │ │ │ ├── u8x8_d_a2printer.c │ │ │ ├── u8x8_d_il3820_296x128.c │ │ │ ├── u8x8_d_ist3020.c │ │ │ ├── u8x8_d_ist7920.c │ │ │ ├── u8x8_d_ks0108.c │ │ │ ├── u8x8_d_lc7981.c │ │ │ ├── u8x8_d_ld7032_60x32.c │ │ │ ├── u8x8_d_ls013b7dh03.c │ │ │ ├── u8x8_d_max7219.c │ │ │ ├── u8x8_d_pcd8544_84x48.c │ │ │ ├── u8x8_d_pcf8812.c │ │ │ ├── u8x8_d_pcf8814_hx1230.c │ │ │ ├── u8x8_d_s1d15721.c │ │ │ ├── u8x8_d_s1d15e06.c │ │ │ ├── u8x8_d_sbn1661.c │ │ │ ├── u8x8_d_sed1330.c │ │ │ ├── u8x8_d_sh1106_64x32.c │ │ │ ├── u8x8_d_sh1106_72x40.c │ │ │ ├── u8x8_d_sh1107.c │ │ │ ├── u8x8_d_sh1108.c │ │ │ ├── u8x8_d_sh1122.c │ │ │ ├── u8x8_d_ssd1305.c │ │ │ ├── u8x8_d_ssd1306_128x32.c │ │ │ ├── u8x8_d_ssd1306_128x64_noname.c │ │ │ ├── u8x8_d_ssd1306_128x80_noname.c │ │ │ ├── u8x8_d_ssd1306_2040x16.c │ │ │ ├── u8x8_d_ssd1306_48x64.c │ │ │ ├── u8x8_d_ssd1306_64x32.c │ │ │ ├── u8x8_d_ssd1306_64x48.c │ │ │ ├── u8x8_d_ssd1306_72x40.c │ │ │ ├── u8x8_d_ssd1306_96x16.c │ │ │ ├── u8x8_d_ssd1309.c │ │ │ ├── u8x8_d_ssd1316.c │ │ │ ├── u8x8_d_ssd1317.c │ │ │ ├── u8x8_d_ssd1318.c │ │ │ ├── u8x8_d_ssd1320.c │ │ │ ├── u8x8_d_ssd1322.c │ │ │ ├── u8x8_d_ssd1325.c │ │ │ ├── u8x8_d_ssd1326.c │ │ │ ├── u8x8_d_ssd1327.c │ │ │ ├── u8x8_d_ssd1329.c │ │ │ ├── u8x8_d_ssd1606_172x72.c │ │ │ ├── u8x8_d_ssd1607_200x200.c │ │ │ ├── u8x8_d_st7511.c │ │ │ ├── u8x8_d_st75256.c │ │ │ ├── u8x8_d_st7528.c │ │ │ ├── u8x8_d_st75320.c │ │ │ ├── u8x8_d_st7565.c │ │ │ ├── u8x8_d_st7567.c │ │ │ ├── u8x8_d_st7571.c │ │ │ ├── u8x8_d_st7586s_erc240160.c │ │ │ ├── u8x8_d_st7586s_s028hn118a.c │ │ │ ├── u8x8_d_st7586s_ymc240160.c │ │ │ ├── u8x8_d_st7588.c │ │ │ ├── u8x8_d_st7920.c │ │ │ ├── u8x8_d_stdio.c │ │ │ ├── u8x8_d_t6963.c │ │ │ ├── u8x8_d_uc1601.c │ │ │ ├── u8x8_d_uc1604.c │ │ │ ├── u8x8_d_uc1608.c │ │ │ ├── u8x8_d_uc1610.c │ │ │ ├── u8x8_d_uc1611.c │ │ │ ├── u8x8_d_uc1617.c │ │ │ ├── u8x8_d_uc1638.c │ │ │ ├── u8x8_d_uc1701_dogs102.c │ │ │ ├── u8x8_d_uc1701_mini12864.c │ │ │ ├── u8x8_debounce.c │ │ │ ├── u8x8_display.c │ │ │ ├── u8x8_fonts.c │ │ │ ├── u8x8_gpio.c │ │ │ ├── u8x8_input_value.c │ │ │ ├── u8x8_message.c │ │ │ ├── u8x8_selection_list.c │ │ │ ├── u8x8_setup.c │ │ │ ├── u8x8_string.c │ │ │ ├── u8x8_u16toa.c │ │ │ └── u8x8_u8toa.c │ │ ├── Bsp/ │ │ │ ├── communication/ │ │ │ │ ├── ascii_processor.cpp │ │ │ │ ├── ascii_processor.hpp │ │ │ │ ├── communication.cpp │ │ │ │ ├── communication.hpp │ │ │ │ ├── interface_can.cpp │ │ │ │ ├── interface_can.hpp │ │ │ │ ├── interface_uart.cpp │ │ │ │ ├── interface_uart.hpp │ │ │ │ ├── interface_usb.cpp │ │ │ │ └── interface_usb.hpp │ │ │ ├── gpio/ │ │ │ │ ├── analog.cpp │ │ │ │ ├── analog.hpp │ │ │ │ ├── encoder.cpp │ │ │ │ ├── encoder.hpp │ │ │ │ ├── pwm.cpp │ │ │ │ └── pwm.hpp │ │ │ ├── imu/ │ │ │ │ ├── MPU6050.cpp │ │ │ │ ├── MPU6050.hpp │ │ │ │ ├── MPU6050_6Axis_MotionApps20.h │ │ │ │ ├── MPU6050_9Axis_MotionApps41.h │ │ │ │ ├── filters/ │ │ │ │ │ ├── biquad_filter.c │ │ │ │ │ ├── biquad_filter.h │ │ │ │ │ ├── filter_math.c │ │ │ │ │ └── filter_math.h │ │ │ │ ├── helper_3dmath.h │ │ │ │ ├── i2c_dev.cpp │ │ │ │ └── i2c_dev.hpp │ │ │ ├── memory/ │ │ │ │ ├── eeprom_interface.h │ │ │ │ ├── emulated_eeprom.cpp │ │ │ │ └── emulated_eeprom.h │ │ │ └── utils/ │ │ │ ├── arm_math/ │ │ │ │ ├── arm_common_tables.h │ │ │ │ ├── arm_const_structs.h │ │ │ │ └── arm_math.h │ │ │ ├── software_i2c/ │ │ │ │ ├── soft_i2c.c │ │ │ │ └── soft_i2c.h │ │ │ ├── time_utils.c │ │ │ ├── time_utils.h │ │ │ ├── timer.cpp │ │ │ └── timer.hpp │ │ ├── CMakeLists.txt │ │ ├── CMakeLists_template.txt │ │ ├── Core/ │ │ │ ├── Inc/ │ │ │ │ ├── FreeRTOSConfig.h │ │ │ │ ├── adc.h │ │ │ │ ├── can.h │ │ │ │ ├── dma.h │ │ │ │ ├── gpio.h │ │ │ │ ├── i2c.h │ │ │ │ ├── main.h │ │ │ │ ├── spi.h │ │ │ │ ├── stm32f4xx_hal_conf.h │ │ │ │ ├── stm32f4xx_it.h │ │ │ │ ├── tim.h │ │ │ │ └── usart.h │ │ │ └── Src/ │ │ │ ├── adc.c │ │ │ ├── can.c │ │ │ ├── dma.c │ │ │ ├── freertos.c │ │ │ ├── gpio.c │ │ │ ├── i2c.c │ │ │ ├── main.c │ │ │ ├── spi.c │ │ │ ├── stm32f4xx_hal_msp.c │ │ │ ├── stm32f4xx_hal_timebase_tim.c │ │ │ ├── stm32f4xx_it.c │ │ │ ├── syscalls.c │ │ │ ├── system_stm32f4xx.c │ │ │ ├── tim.c │ │ │ └── usart.c │ │ ├── Drivers/ │ │ │ ├── CMSIS/ │ │ │ │ ├── Device/ │ │ │ │ │ └── ST/ │ │ │ │ │ └── STM32F4xx/ │ │ │ │ │ └── Include/ │ │ │ │ │ ├── stm32f405xx.h │ │ │ │ │ ├── stm32f4xx.h │ │ │ │ │ └── system_stm32f4xx.h │ │ │ │ ├── Include/ │ │ │ │ │ ├── cmsis_armcc.h │ │ │ │ │ ├── cmsis_armclang.h │ │ │ │ │ ├── cmsis_compiler.h │ │ │ │ │ ├── cmsis_gcc.h │ │ │ │ │ ├── cmsis_iccarm.h │ │ │ │ │ ├── cmsis_version.h │ │ │ │ │ ├── core_armv8mbl.h │ │ │ │ │ ├── core_armv8mml.h │ │ │ │ │ ├── core_cm0.h │ │ │ │ │ ├── core_cm0plus.h │ │ │ │ │ ├── core_cm1.h │ │ │ │ │ ├── core_cm23.h │ │ │ │ │ ├── core_cm3.h │ │ │ │ │ ├── core_cm33.h │ │ │ │ │ ├── core_cm4.h │ │ │ │ │ ├── core_cm7.h │ │ │ │ │ ├── core_sc000.h │ │ │ │ │ ├── core_sc300.h │ │ │ │ │ ├── mpu_armv7.h │ │ │ │ │ ├── mpu_armv8.h │ │ │ │ │ └── tz_context.h │ │ │ │ └── Lib/ │ │ │ │ └── libarm_cortexM4lf_math.a │ │ │ └── STM32F4xx_HAL_Driver/ │ │ │ ├── Inc/ │ │ │ │ ├── Legacy/ │ │ │ │ │ └── stm32_hal_legacy.h │ │ │ │ ├── stm32f4xx_hal.h │ │ │ │ ├── stm32f4xx_hal_adc.h │ │ │ │ ├── stm32f4xx_hal_adc_ex.h │ │ │ │ ├── stm32f4xx_hal_can.h │ │ │ │ ├── stm32f4xx_hal_cortex.h │ │ │ │ ├── stm32f4xx_hal_def.h │ │ │ │ ├── stm32f4xx_hal_dma.h │ │ │ │ ├── stm32f4xx_hal_dma_ex.h │ │ │ │ ├── stm32f4xx_hal_exti.h │ │ │ │ ├── stm32f4xx_hal_flash.h │ │ │ │ ├── stm32f4xx_hal_flash_ex.h │ │ │ │ ├── stm32f4xx_hal_flash_ramfunc.h │ │ │ │ ├── stm32f4xx_hal_gpio.h │ │ │ │ ├── stm32f4xx_hal_gpio_ex.h │ │ │ │ ├── stm32f4xx_hal_i2c.h │ │ │ │ ├── stm32f4xx_hal_i2c_ex.h │ │ │ │ ├── stm32f4xx_hal_pcd.h │ │ │ │ ├── stm32f4xx_hal_pcd_ex.h │ │ │ │ ├── stm32f4xx_hal_pwr.h │ │ │ │ ├── stm32f4xx_hal_pwr_ex.h │ │ │ │ ├── stm32f4xx_hal_rcc.h │ │ │ │ ├── stm32f4xx_hal_rcc_ex.h │ │ │ │ ├── stm32f4xx_hal_spi.h │ │ │ │ ├── stm32f4xx_hal_tim.h │ │ │ │ ├── stm32f4xx_hal_tim_ex.h │ │ │ │ ├── stm32f4xx_hal_uart.h │ │ │ │ ├── stm32f4xx_ll_adc.h │ │ │ │ └── stm32f4xx_ll_usb.h │ │ │ └── Src/ │ │ │ ├── stm32f4xx_hal.c │ │ │ ├── stm32f4xx_hal_adc.c │ │ │ ├── stm32f4xx_hal_adc_ex.c │ │ │ ├── stm32f4xx_hal_can.c │ │ │ ├── stm32f4xx_hal_cortex.c │ │ │ ├── stm32f4xx_hal_dma.c │ │ │ ├── stm32f4xx_hal_dma_ex.c │ │ │ ├── stm32f4xx_hal_exti.c │ │ │ ├── stm32f4xx_hal_flash.c │ │ │ ├── stm32f4xx_hal_flash_ex.c │ │ │ ├── stm32f4xx_hal_flash_ramfunc.c │ │ │ ├── stm32f4xx_hal_gpio.c │ │ │ ├── stm32f4xx_hal_i2c.c │ │ │ ├── stm32f4xx_hal_i2c_ex.c │ │ │ ├── stm32f4xx_hal_pcd.c │ │ │ ├── stm32f4xx_hal_pcd_ex.c │ │ │ ├── stm32f4xx_hal_pwr.c │ │ │ ├── stm32f4xx_hal_pwr_ex.c │ │ │ ├── stm32f4xx_hal_rcc.c │ │ │ ├── stm32f4xx_hal_rcc_ex.c │ │ │ ├── stm32f4xx_hal_spi.c │ │ │ ├── stm32f4xx_hal_tim.c │ │ │ ├── stm32f4xx_hal_tim_ex.c │ │ │ ├── stm32f4xx_hal_uart.c │ │ │ ├── stm32f4xx_ll_adc.c │ │ │ └── stm32f4xx_ll_usb.c │ │ ├── Middlewares/ │ │ │ ├── ST/ │ │ │ │ └── STM32_USB_Device_Library/ │ │ │ │ ├── Class/ │ │ │ │ │ └── CDC/ │ │ │ │ │ ├── Inc/ │ │ │ │ │ │ └── usbd_cdc.h │ │ │ │ │ └── Src/ │ │ │ │ │ └── usbd_cdc.c │ │ │ │ └── Core/ │ │ │ │ ├── Inc/ │ │ │ │ │ ├── usbd_core.h │ │ │ │ │ ├── usbd_ctlreq.h │ │ │ │ │ ├── usbd_def.h │ │ │ │ │ └── usbd_ioreq.h │ │ │ │ └── Src/ │ │ │ │ ├── usbd_core.c │ │ │ │ ├── usbd_ctlreq.c │ │ │ │ └── usbd_ioreq.c │ │ │ └── Third_Party/ │ │ │ └── FreeRTOS/ │ │ │ └── Source/ │ │ │ ├── CMSIS_RTOS_V2/ │ │ │ │ ├── cmsis_os.h │ │ │ │ ├── cmsis_os2.c │ │ │ │ ├── cmsis_os2.h │ │ │ │ ├── freertos_mpool.h │ │ │ │ └── freertos_os2.h │ │ │ ├── croutine.c │ │ │ ├── event_groups.c │ │ │ ├── include/ │ │ │ │ ├── FreeRTOS.h │ │ │ │ ├── StackMacros.h │ │ │ │ ├── atomic.h │ │ │ │ ├── croutine.h │ │ │ │ ├── deprecated_definitions.h │ │ │ │ ├── event_groups.h │ │ │ │ ├── list.h │ │ │ │ ├── message_buffer.h │ │ │ │ ├── mpu_prototypes.h │ │ │ │ ├── mpu_wrappers.h │ │ │ │ ├── portable.h │ │ │ │ ├── projdefs.h │ │ │ │ ├── queue.h │ │ │ │ ├── semphr.h │ │ │ │ ├── stack_macros.h │ │ │ │ ├── stream_buffer.h │ │ │ │ ├── task.h │ │ │ │ └── timers.h │ │ │ ├── list.c │ │ │ ├── portable/ │ │ │ │ ├── GCC/ │ │ │ │ │ └── ARM_CM4F/ │ │ │ │ │ ├── port.c │ │ │ │ │ └── portmacro.h │ │ │ │ └── MemMang/ │ │ │ │ └── heap_4.c │ │ │ ├── queue.c │ │ │ ├── stream_buffer.c │ │ │ ├── tasks.c │ │ │ └── timers.c │ │ ├── REF-STM32F4-fw.ioc │ │ ├── Robot/ │ │ │ ├── actuators/ │ │ │ │ ├── ctrl_step/ │ │ │ │ │ ├── ctrl_step.cpp │ │ │ │ │ └── ctrl_step.hpp │ │ │ │ └── mintasca/ │ │ │ │ ├── sca.cpp │ │ │ │ ├── sca.hpp │ │ │ │ ├── sca_api.c │ │ │ │ ├── sca_api.h │ │ │ │ ├── sca_protocol.c │ │ │ │ └── sca_protocol.h │ │ │ ├── algorithms/ │ │ │ │ └── kinematic/ │ │ │ │ ├── 6dof_kinematic.cpp │ │ │ │ └── 6dof_kinematic.h │ │ │ └── instances/ │ │ │ ├── dummy_robot.cpp │ │ │ └── dummy_robot.h │ │ ├── STM32F405RGTx_FLASH.ld │ │ ├── USB_DEVICE/ │ │ │ ├── App/ │ │ │ │ ├── usb_device.c │ │ │ │ ├── usb_device.h │ │ │ │ ├── usbd_cdc_if.c │ │ │ │ ├── usbd_cdc_if.h │ │ │ │ ├── usbd_desc.c │ │ │ │ └── usbd_desc.h │ │ │ └── Target/ │ │ │ ├── usbd_conf.c │ │ │ └── usbd_conf.h │ │ ├── UserApp/ │ │ │ ├── common_inc.h │ │ │ ├── freertos_inc.h │ │ │ ├── main.cpp │ │ │ └── protocols/ │ │ │ ├── ascii_protocol.cpp │ │ │ ├── can_protocol.cpp │ │ │ └── cmd_protocol.cpp │ │ ├── startup/ │ │ │ └── startup_stm32f405xx.s │ │ └── stlink.cfg │ ├── Ctrl-Step-Driver-STM32F1-fw/ │ │ ├── .cproject │ │ ├── .gitignore │ │ ├── .idea/ │ │ │ ├── .gitignore │ │ │ ├── .name │ │ │ ├── Ctrl-Step-fw.iml │ │ │ ├── codeStyles/ │ │ │ │ └── codeStyleConfig.xml │ │ │ ├── copyright/ │ │ │ │ ├── ctrl_step.xml │ │ │ │ └── profiles_settings.xml │ │ │ ├── deployment.xml │ │ │ ├── encodings.xml │ │ │ ├── inspectionProfiles/ │ │ │ │ └── Project_Default.xml │ │ │ ├── misc.xml │ │ │ ├── modules.xml │ │ │ ├── serialmonitor_settings.xml │ │ │ └── vcs.xml │ │ ├── .mxproject │ │ ├── .project │ │ ├── CMakeLists.txt │ │ ├── CMakeLists_template.txt │ │ ├── Core/ │ │ │ ├── Inc/ │ │ │ │ ├── adc.h │ │ │ │ ├── can.h │ │ │ │ ├── dma.h │ │ │ │ ├── gpio.h │ │ │ │ ├── main.h │ │ │ │ ├── spi.h │ │ │ │ ├── stm32f1xx_hal_conf.h │ │ │ │ ├── stm32f1xx_it.h │ │ │ │ ├── tim.h │ │ │ │ └── usart.h │ │ │ └── Src/ │ │ │ ├── adc.c │ │ │ ├── can.c │ │ │ ├── dma.c │ │ │ ├── gpio.c │ │ │ ├── main.c │ │ │ ├── spi.c │ │ │ ├── stm32f1xx_hal_msp.c │ │ │ ├── stm32f1xx_it.c │ │ │ ├── syscalls.c │ │ │ ├── system_stm32f1xx.c │ │ │ ├── tim.c │ │ │ └── usart.c │ │ ├── Ctrl/ │ │ │ ├── Driver/ │ │ │ │ ├── driver_base.h │ │ │ │ ├── sin_map.h │ │ │ │ ├── tb67h450_base.cpp │ │ │ │ └── tb67h450_base.h │ │ │ ├── Motor/ │ │ │ │ ├── motion_planner.cpp │ │ │ │ ├── motion_planner.h │ │ │ │ ├── motor.cpp │ │ │ │ └── motor.h │ │ │ ├── Sensor/ │ │ │ │ └── Encoder/ │ │ │ │ ├── encoder_base.h │ │ │ │ ├── encoder_calibrator_base.cpp │ │ │ │ ├── encoder_calibrator_base.h │ │ │ │ ├── mt6816_base.cpp │ │ │ │ └── mt6816_base.h │ │ │ └── Signal/ │ │ │ ├── button_base.cpp │ │ │ ├── button_base.h │ │ │ ├── led_base.cpp │ │ │ └── led_base.h │ │ ├── Ctrl-Step-fw.xml │ │ ├── Drivers/ │ │ │ ├── CMSIS/ │ │ │ │ ├── Device/ │ │ │ │ │ └── ST/ │ │ │ │ │ └── STM32F1xx/ │ │ │ │ │ └── Include/ │ │ │ │ │ ├── stm32f103xb.h │ │ │ │ │ ├── stm32f1xx.h │ │ │ │ │ └── system_stm32f1xx.h │ │ │ │ └── Include/ │ │ │ │ ├── cmsis_armcc.h │ │ │ │ ├── cmsis_armclang.h │ │ │ │ ├── cmsis_compiler.h │ │ │ │ ├── cmsis_gcc.h │ │ │ │ ├── cmsis_iccarm.h │ │ │ │ ├── cmsis_version.h │ │ │ │ ├── core_armv8mbl.h │ │ │ │ ├── core_armv8mml.h │ │ │ │ ├── core_cm0.h │ │ │ │ ├── core_cm0plus.h │ │ │ │ ├── core_cm1.h │ │ │ │ ├── core_cm23.h │ │ │ │ ├── core_cm3.h │ │ │ │ ├── core_cm33.h │ │ │ │ ├── core_cm4.h │ │ │ │ ├── core_cm7.h │ │ │ │ ├── core_sc000.h │ │ │ │ ├── core_sc300.h │ │ │ │ ├── mpu_armv7.h │ │ │ │ ├── mpu_armv8.h │ │ │ │ └── tz_context.h │ │ │ └── STM32F1xx_HAL_Driver/ │ │ │ ├── Inc/ │ │ │ │ ├── Legacy/ │ │ │ │ │ └── stm32_hal_legacy.h │ │ │ │ ├── stm32f1xx_hal.h │ │ │ │ ├── stm32f1xx_hal_adc.h │ │ │ │ ├── stm32f1xx_hal_adc_ex.h │ │ │ │ ├── stm32f1xx_hal_can.h │ │ │ │ ├── stm32f1xx_hal_cortex.h │ │ │ │ ├── stm32f1xx_hal_def.h │ │ │ │ ├── stm32f1xx_hal_dma.h │ │ │ │ ├── stm32f1xx_hal_dma_ex.h │ │ │ │ ├── stm32f1xx_hal_exti.h │ │ │ │ ├── stm32f1xx_hal_flash.h │ │ │ │ ├── stm32f1xx_hal_flash_ex.h │ │ │ │ ├── stm32f1xx_hal_gpio.h │ │ │ │ ├── stm32f1xx_hal_gpio_ex.h │ │ │ │ ├── stm32f1xx_hal_pwr.h │ │ │ │ ├── stm32f1xx_hal_rcc.h │ │ │ │ ├── stm32f1xx_hal_rcc_ex.h │ │ │ │ ├── stm32f1xx_hal_spi.h │ │ │ │ ├── stm32f1xx_hal_tim.h │ │ │ │ ├── stm32f1xx_hal_tim_ex.h │ │ │ │ └── stm32f1xx_hal_uart.h │ │ │ └── Src/ │ │ │ ├── stm32f1xx_hal.c │ │ │ ├── stm32f1xx_hal_adc.c │ │ │ ├── stm32f1xx_hal_adc_ex.c │ │ │ ├── stm32f1xx_hal_can.c │ │ │ ├── stm32f1xx_hal_cortex.c │ │ │ ├── stm32f1xx_hal_dma.c │ │ │ ├── stm32f1xx_hal_exti.c │ │ │ ├── stm32f1xx_hal_flash.c │ │ │ ├── stm32f1xx_hal_flash_ex.c │ │ │ ├── stm32f1xx_hal_gpio.c │ │ │ ├── stm32f1xx_hal_gpio_ex.c │ │ │ ├── stm32f1xx_hal_pwr.c │ │ │ ├── stm32f1xx_hal_rcc.c │ │ │ ├── stm32f1xx_hal_rcc_ex.c │ │ │ ├── stm32f1xx_hal_spi.c │ │ │ ├── stm32f1xx_hal_tim.c │ │ │ ├── stm32f1xx_hal_tim_ex.c │ │ │ └── stm32f1xx_hal_uart.c │ │ ├── Port/ │ │ │ ├── Platform/ │ │ │ │ ├── Memory/ │ │ │ │ │ ├── eeprom_interface.h │ │ │ │ │ ├── emulated_eeprom.cpp │ │ │ │ │ ├── emulated_eeprom.h │ │ │ │ │ ├── stockpile_config.h │ │ │ │ │ ├── stockpile_f103cb.c │ │ │ │ │ └── stockpile_f103cb.h │ │ │ │ ├── Utils/ │ │ │ │ │ ├── st_hardware.c │ │ │ │ │ └── st_hardware.h │ │ │ │ ├── retarget.c │ │ │ │ └── retarget.h │ │ │ ├── button_stm32.cpp │ │ │ ├── button_stm32.h │ │ │ ├── encoder_calibrator_stm32.cpp │ │ │ ├── encoder_calibrator_stm32.h │ │ │ ├── led_stm32.cpp │ │ │ ├── led_stm32.h │ │ │ ├── mt6816_stm32.cpp │ │ │ ├── mt6816_stm32.h │ │ │ ├── tb67h450_stm32.cpp │ │ │ └── tb67h450_stm32.h │ │ ├── README.md │ │ ├── STM32F103CBTx_FLASH.ld │ │ ├── UserApp/ │ │ │ ├── common_inc.h │ │ │ ├── configurations.h │ │ │ ├── main.cpp │ │ │ └── protocols/ │ │ │ ├── interface_can.cpp │ │ │ └── interface_uart.cpp │ │ ├── startup/ │ │ │ └── startup_stm32f103xb.s │ │ └── stlink.cfg │ └── _Released HEX/ │ └── Ctrl-Step-Driver-STM32F1-fw.hex ├── 3.Software/ │ ├── CLI-Tool/ │ │ ├── .gitignore │ │ ├── .idea/ │ │ │ ├── .gitignore │ │ │ ├── cmd_tool.iml │ │ │ ├── deployment.xml │ │ │ ├── encodings.xml │ │ │ ├── inspectionProfiles/ │ │ │ │ ├── Project_Default.xml │ │ │ │ └── profiles_settings.xml │ │ │ ├── libraries/ │ │ │ │ ├── ROS.xml │ │ │ │ └── workspace.xml │ │ │ ├── misc.xml │ │ │ ├── modules.xml │ │ │ ├── ros.xml │ │ │ └── vcs.xml │ │ ├── _addition/ │ │ │ └── ref_demo.py │ │ ├── fibre/ │ │ │ ├── __init__.py │ │ │ ├── discovery.py │ │ │ ├── protocol.py │ │ │ ├── remote_object.py │ │ │ ├── serial_transport.py │ │ │ ├── shell.py │ │ │ ├── tcp_transport.py │ │ │ ├── udp_transport.py │ │ │ ├── usbbulk_transport.py │ │ │ └── utils.py │ │ ├── ref_tool/ │ │ │ ├── __init__.py │ │ │ ├── code_generator.py │ │ │ ├── configuration.py │ │ │ ├── shell.py │ │ │ ├── utils.py │ │ │ └── version.py │ │ ├── run.bat │ │ └── run_shell.py │ └── DummyStudio/ │ ├── DummyStudio_Data/ │ │ ├── Resources/ │ │ │ ├── unity default resources │ │ │ └── unity_builtin_extra │ │ ├── StreamingAssets/ │ │ │ └── serial_config.txt │ │ ├── app.info │ │ ├── boot.config │ │ ├── globalgamemanagers │ │ ├── globalgamemanagers.assets │ │ ├── level0 │ │ ├── resources.assets │ │ ├── resources.assets.resS │ │ ├── sharedassets0.assets │ │ └── sharedassets0.assets.resS │ └── MonoBleedingEdge/ │ └── etc/ │ └── mono/ │ ├── 2.0/ │ │ ├── Browsers/ │ │ │ └── Compat.browser │ │ ├── DefaultWsdlHelpGenerator.aspx │ │ ├── machine.config │ │ └── web.config │ ├── 4.0/ │ │ ├── Browsers/ │ │ │ └── Compat.browser │ │ ├── DefaultWsdlHelpGenerator.aspx │ │ ├── machine.config │ │ └── web.config │ ├── 4.5/ │ │ ├── Browsers/ │ │ │ └── Compat.browser │ │ ├── DefaultWsdlHelpGenerator.aspx │ │ ├── machine.config │ │ └── web.config │ ├── browscap.ini │ ├── config │ └── mconfig/ │ └── config.xml ├── 4.Model/ │ ├── Case v17.step │ ├── Dummy v164.step │ ├── Motor42-上盖.step │ └── Motor42-下盖.step └── README.md