2021-08-25 19:58:39 索炜达电子 836
项目编号:E664
文件大小:17M
源码说明:带中文注释
开发环境:C编译器
简要概述:
本文介绍了一款使用由意法半导体公司生产的STM32为核心控制器,在MDK4.70软件开发平台下设计开发的智能小车。文中介绍了整个设计的需求分析、方案选择、硬件部分、软件部分、传感器的选择与布局、电路板的安装、以及整车的测试与评估。
本次设计最终采用STM32为主控制器,此款芯片功能强大,足以满足整个设计的需求,选用最常用高灵敏度的红外光电传感器完成循迹功能,采用MG995舵机和HC-SR04超声波模块配合完成避障功能,采用MQ-2烟雾气敏传感器完成烟雾浓度探测功能,采用DHT11温湿度传感器模块完成温湿度探测功能,采用NRF24L01无线发射接收模块完成与上位机之间的无线通信功能,采用SIM800C模块完成与管理者手机通讯功能。程序经过多次测试和改进,能够较健壮的运行。最终能够很好地实现上述功能。
文件列表:
目录│文件列表:
└ 15.【ED15】基于STM32的智能小车无线环境监测系统
└ 基于STM32的智能小车无线环境监测系统
│ 毕业设计论文.doc
│ 说明.txt
├ 效果
│ │ IMG_20180518_000228.jpg
│ │ VID_20180526_235114.mp4
│ │ VID_20180526_235732.mp4
│ │ VID_20180527_095247.mp4
│ └ wx_camera_1526803678633.mp4
├ 硬件是纯手工搭的
│ └ 说明.txt
└ 程序
│ 说明.txt
├ SmartCar_NF2401
│ │ keilkilll.bat
│ ├ CORE
│ │ │ core_cm3.c
│ │ │ core_cm3.h
│ │ │ startup_stm32f10x_hd.s
│ │ └ startup_stm32f10x_md.s
│ ├ HARDWARE
│ │ ├ KEY
│ │ │ │ key.c
│ │ │ └ key.h
│ │ ├ LCD
│ │ │ │ font.h
│ │ │ │ lcd.c
│ │ │ └ lcd.h
│ │ ├ LED
│ │ │ │ led.c
│ │ │ └ led.h
│ │ ├ NRF24L01
│ │ │ │ 24l01.c
│ │ │ └ 24l01.h
│ │ └ SPI
│ │ │ spi.c
│ │ └ spi.h
│ ├ 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
│ │ JLinkLog.txt
│ │ JLinkSettings.ini
│ │ main.c
│ │ NRF24L01.map
│ │ NRF24L01.opt.bak
│ │ NRF24L01.Uv2.bak
│ │ NRF24L01.uvgui.Administrator
│ │ NRF24L01.uvgui_Administrator.bak
│ │ NRF24L01.uvopt
│ │ NRF24L01.uvproj
│ │ NRF24L01_Opt.Bak
│ │ NRF24L01_Target 1.dep
│ │ NRF24L01_uvopt.bak
│ │ NRF24L01_uvproj.bak
│ │ startup_stm32f10x_hd.lst
│ │ stm32f10x.h
│ │ stm32f10x_conf.h
│ │ stm32f10x_it.c
│ │ stm32f10x_it.h
│ │ system_stm32f10x.c
│ └ system_stm32f10x.h
└ SmartCar_Update
│ keilkilll.bat
├ CORE
│ │ core_cm3.c
│ │ core_cm3.h
│ └ startup_stm32f10x_md.s
├ 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
├ HARDWARE
│ ├ BEEP
│ │ │ beep.c
│ │ └ beep.h
│ ├ DHT11
│ │ │ dht11.c
│ │ └ dht11.h
│ ├ KEY
│ │ │ key.c
│ │ └ key.h
│ ├ L298N
│ │ │ l298n.c
│ │ └ l298n.h
│ ├ LED
│ │ │ led.c
│ │ └ led.h
│ ├ NRF24L01
│ │ │ 24l01.c
│ │ └ 24l01.h
│ ├ OLED
│ │ │ codetable.h
│ │ │ OLED_I2C.c
│ │ └ OLED_I2C.h
│ ├ SPI
│ │ │ spi.c
│ │ └ spi.h
│ ├ SR04
│ │ │ sr04.c
│ │ └ sr04.h
│ ├ TIMER
│ │ │ timer.c
│ │ └ timer.h
│ ├ TUBE
│ │ │ tube.c
│ │ └ tube.h
│ └ UART
│ │ uart.c
│ └ uart.h
├ OBJ
│ └ SmartCar.hex
├ SYSTEM
│ ├ delay
│ │ │ delay.c
│ │ └ delay.h
│ ├ sys
│ │ │ sys.c
│ │ └ sys.h
│ └ usart
│ │ usart.c
│ └ usart.h
└ USER
│ JLinkLog.txt
│ JLinkSettings.ini
│ main.c
│ main.h
│ SmartCar.BAT
│ SmartCar.map
│ SmartCar.uvgui.Administrator
│ SmartCar.uvgui_Administrator.bak
│ SmartCar.uvopt
│ SmartCar.uvproj
│ SmartCar_SmartCar.dep
│ SmartCar_uvopt.bak
│ SmartCar_uvproj.bak
│ startup_stm32f10x_md.lst
│ stm32f10x.h
│ stm32f10x_conf.h
│ stm32f10x_it.c
│ stm32f10x_it.h
│ system_stm32f10x.c
└ system_stm32f10x.h