【E2178】电子设计竞赛-STM32倒立摆系统

2021-11-06 19:25:47      索炜达电子      545     

项目编号:E2178

文件大小:6.7M

源码说明:带中文注释

开发环境:C编译器

简要概述:

《电子设计竞赛》国赛 倒立摆系统 项目文件上说明

【E2178】电子设计竞赛-STM32倒立摆系统

使用keil编译器Version5版本

使用miniSTM32单片机

使用c语言编写

使用PID算法

利用串口自定义协议来实时调节PID

文件中有IO接口配置说明

有截图一张为PID调节比较不错的效果时的串口软件上位机的截图

核心算法:利用两个环调节,位置环+角度环,输入分别为编码器的位置值和电阻器的摆杆的角度

目录│文件列表:

 └ Inverted_Pendulum_System

    └ Inverted_pendulum_TheFinalVersion

       │ 165.png

       │ keilkilll.bat

       │ README.TXT

       │ 倒立摆IO.txt

       │ 新建文本文档.txt

       ├ CORE

       │  │ core_cm3.c

       │  │ core_cm3.h

       │  └ startup_stm32f10x_hd.s

       ├ HARDWARE

       │  ├ 12864

       │  │  │ 12864.c

       │  │  └ 12864.h

       │  ├ ADC

       │  │  │ adc.c

       │  │  └ adc.h

       │  ├ Dc_motor

       │  │  │ Dc_motor.c

       │  │  └ Dc_motor.h

       │  ├ Encoder

       │  │  │ Encoder.c

       │  │  └ Encoder.h

       │  ├ EXTI

       │  │  │ exti.c

       │  │  └ exti.h

       │  ├ KEY

       │  │  │ key.c

       │  │  └ key.h

       │  ├ Motor

       │  │  │ motor.c

       │  │  │ motor.c.bak

       │  │  └ motor.h

       │  ├ PID

       │  │  │ PID.c

       │  │  └ PID.h

       │  ├ PWM

       │  │  │ pwm.c

       │  │  └ pwm.h

       │  └ TIMER

       │     │ timer.c

       │     └ timer.h

       ├ OBJ

       │  │ adc.crf

       │  │ adc.d

       │  │ adc.o

       │  │ core_cm3.crf

       │  │ core_cm3.d

       │  │ core_cm3.o

       │  │ delay.crf

       │  │ delay.d

       │  │ delay.o

       │  │ encoder.crf

       │  │ encoder.d

       │  │ encoder.o

       │  │ ExtDll.iex

       │  │ Inverted_pendulum.axf

       │  │ Inverted_pendulum.build_log.htm

       │  │ Inverted_pendulum.hex

       │  │ Inverted_pendulum.htm

       │  │ Inverted_pendulum.lnp

       │  │ Inverted_pendulum.sct

       │  │ Inverted_pendulum_Inverted_pendulum.dep

       │  │ inv_mpu.crf

       │  │ inv_mpu.d

       │  │ inv_mpu.o

       │  │ inv_mpu_dmp_motion_driver.crf

       │  │ inv_mpu_dmp_motion_driver.d

       │  │ inv_mpu_dmp_motion_driver.o

       │  │ key.crf

       │  │ key.d

       │  │ key.o

       │  │ main.crf

       │  │ main.d

       │  │ main.o

       │  │ misc.crf

       │  │ misc.d

       │  │ misc.o

       │  │ motor.crf

       │  │ motor.d

       │  │ motor.o

       │  │ mpu6050.crf

       │  │ mpu6050.d

       │  │ mpu6050.o

       │  │ mpuiic.crf

       │  │ mpuiic.d

       │  │ mpuiic.o

       │  │ nvic.crf

       │  │ nvic.d

       │  │ nvic.o

       │  │ pid.crf

       │  │ pid.d

       │  │ pid.o

       │  │ pwm.crf

       │  │ pwm.d

       │  │ pwm.o

       │  │ pwm_output.crf

       │  │ pwm_output.d

       │  │ pwm_output.o

       │  │ startup_stm32f10x_hd.d

       │  │ startup_stm32f10x_hd.o

       │  │ stm32f10x_adc.crf

       │  │ stm32f10x_adc.d

       │  │ stm32f10x_adc.o

       │  │ stm32f10x_bkp.crf

       │  │ stm32f10x_bkp.d

       │  │ stm32f10x_bkp.o

       │  │ stm32f10x_can.crf

       │  │ stm32f10x_can.d

       │  │ stm32f10x_can.o

       │  │ stm32f10x_cec.crf

       │  │ stm32f10x_cec.d

       │  │ stm32f10x_cec.o

       │  │ stm32f10x_crc.crf

       │  │ stm32f10x_crc.d

       │  │ stm32f10x_crc.o

       │  │ stm32f10x_dac.crf

       │  │ stm32f10x_dac.d

       │  │ stm32f10x_dac.o

       │  │ stm32f10x_dbgmcu.crf

       │  │ stm32f10x_dbgmcu.d

       │  │ stm32f10x_dbgmcu.o

       │  │ stm32f10x_dma.crf

       │  │ stm32f10x_dma.d

       │  │ stm32f10x_dma.o

       │  │ stm32f10x_exti.crf

       │  │ stm32f10x_exti.d

       │  │ stm32f10x_exti.o

       │  │ stm32f10x_flash.crf

       │  │ stm32f10x_flash.d

       │  │ stm32f10x_flash.o

       │  │ stm32f10x_fsmc.crf

       │  │ stm32f10x_fsmc.d

       │  │ stm32f10x_fsmc.o

       │  │ stm32f10x_gpio.crf

       │  │ stm32f10x_gpio.d

       │  │ stm32f10x_gpio.o

       │  │ stm32f10x_i2c.crf

       │  │ stm32f10x_i2c.d

       │  │ stm32f10x_i2c.o

       │  │ stm32f10x_it.crf

       │  │ stm32f10x_it.d

       │  │ stm32f10x_it.o

       │  │ stm32f10x_iwdg.crf

       │  │ stm32f10x_iwdg.d

       │  │ stm32f10x_iwdg.o

       │  │ stm32f10x_pwr.crf

       │  │ stm32f10x_pwr.d

       │  │ stm32f10x_pwr.o

       │  │ stm32f10x_rcc.crf

       │  │ stm32f10x_rcc.d

       │  │ stm32f10x_rcc.o

       │  │ stm32f10x_rtc.crf

       │  │ stm32f10x_rtc.d

       │  │ stm32f10x_rtc.o

       │  │ stm32f10x_sdio.crf

       │  │ stm32f10x_sdio.d

       │  │ stm32f10x_sdio.o

       │  │ stm32f10x_spi.crf

       │  │ stm32f10x_spi.d

       │  │ stm32f10x_spi.o

       │  │ stm32f10x_tim.crf

       │  │ stm32f10x_tim.d

       │  │ stm32f10x_tim.o

       │  │ stm32f10x_usart.crf

       │  │ stm32f10x_usart.d

       │  │ stm32f10x_usart.o

       │  │ stm32f10x_wwdg.crf

       │  │ stm32f10x_wwdg.d

       │  │ stm32f10x_wwdg.o

       │  │ sys.crf

       │  │ sys.d

       │  │ sys.o

       │  │ system_stm32f10x.crf

       │  │ system_stm32f10x.d

       │  │ system_stm32f10x.o

       │  │ Template.hex

       │  │ timer.crf

       │  │ timer.d

       │  │ timer.o

       │  │ usart.crf

       │  │ usart.d

       │  │ usart.o

       │  │ usmart.crf

       │  │ usmart.d

       │  │ usmart.o

       │  │ usmart_config.crf

       │  │ usmart_config.d

       │  │ usmart_config.o

       │  │ usmart_str.crf

       │  │ usmart_str.d

       │  └ usmart_str.o

       ├ STM32F10x_FWLib

       │  ├ inc

       │  │  │ misc.h

       │  │  │ stm32f10x_adc.h

       │  │  │ stm32f10x_bkp.h

       │  │  │ stm32f10x_can.h

       │  │  │ stm32f10x_cec.h

       │  │  │ stm32f10x_crc.h

       │  │  │ stm32f10x_dac.h

       │  │  │ stm32f10x_dbgmcu.h

       │  │  │ stm32f10x_dma.h

       │  │  │ stm32f10x_exti.h

       │  │  │ stm32f10x_flash.h

       │  │  │ stm32f10x_fsmc.h

       │  │  │ stm32f10x_gpio.h

       │  │  │ stm32f10x_i2c.h

       │  │  │ stm32f10x_iwdg.h

       │  │  │ stm32f10x_pwr.h

       │  │  │ stm32f10x_rcc.h

       │  │  │ stm32f10x_rtc.h

       │  │  │ stm32f10x_sdio.h

       │  │  │ stm32f10x_spi.h

       │  │  │ stm32f10x_tim.h

       │  │  │ stm32f10x_usart.h

       │  │  └ stm32f10x_wwdg.h

       │  └ src

       │     │ misc.c

       │     │ stm32f10x_adc.c

       │     │ stm32f10x_bkp.c

       │     │ stm32f10x_can.c

       │     │ stm32f10x_cec.c

       │     │ stm32f10x_crc.c

       │     │ stm32f10x_dac.c

       │     │ stm32f10x_dbgmcu.c

       │     │ stm32f10x_dma.c

       │     │ stm32f10x_exti.c

       │     │ stm32f10x_flash.c

       │     │ stm32f10x_fsmc.c

       │     │ stm32f10x_gpio.c

       │     │ stm32f10x_i2c.c

       │     │ stm32f10x_iwdg.c

       │     │ stm32f10x_pwr.c

       │     │ stm32f10x_rcc.c

       │     │ stm32f10x_rtc.c

       │     │ stm32f10x_sdio.c

       │     │ stm32f10x_spi.c

       │     │ stm32f10x_tim.c

       │     │ stm32f10x_usart.c

       │     └ stm32f10x_wwdg.c

       ├ SYSTEM

       │  ├ delay

       │  │  │ delay.c

       │  │  └ delay.h

       │  ├ sys

       │  │  │ sys.c

       │  │  └ sys.h

       │  └ usart

       │     │ usart.c

       │     └ usart.h

       ├ USER

       │  │ Inverted_pendulum.Administrator

       │  │ Inverted_pendulum.map

       │  │ Inverted_pendulum.uvguix.che

       │  │ Inverted_pendulum.uvoptx

       │  │ Inverted_pendulum.uvprojx

       │  │ JLinkSettings.ini

       │  │ main.c

       │  │ startup_stm32f10x_hd.lst

       │  │ stm32f10x.h

       │  │ stm32f10x_conf.h

       │  │ stm32f10x_it.c

       │  │ stm32f10x_it.h

       │  │ system_stm32f10x.c

       │  │ system_stm32f10x.h

       │  └ DebugConfig

       │     └ Inverted_pendulum_STM32F103RC.dbgconf

       └ USMART

          │ readme.txt

          │ usmart.c

          │ usmart.h

          │ usmart_config.c

          │ usmart_str.c

          └ usmart_str.h

TAG倒立摆
  • 4 次
  • 1 分