# 前言
首先这是我的综合电子创新设计的课设,我选择了基于STM32的出租车计价器作为我的课设项目。虽然我已经初步完成了该项目的硬件搭建和软件编程,但深知在代码实现和整体设计上仍有诸多待完善的地方。这个项目不仅是对我学习STM32应用的一次重要时间,也是对我的电子设计能力的一次全面挑战。在接下来的博客中,我将分享我在设计出租车计价器过程中遇到的问题,解决方案以及我的一些思考,同时也期待同行们的建议和指正。
## 为什么做出租车计价器
主要是因为老师让我们选的题目之一,我们小组就选择了出租车计价器,我主要负责硬件和软件的设计,其他小组成员帮我写ppt和查找资料。
# 一、项目文件说明
## 1.1 Firmware
Firmware文件夹是整个项目的固件,即包含了该项目的完整的代码,如果硬件设计一致,可以直接下载使用。非常方便。此外开发环境并不是cubeMX+keil,而是cubeMX+Clion,所以可能需要迁移项目至keil,或者直接像我一样使用Clion开发stm32。这里也给出用Clion开发stm32的一篇教程:[配置CLion用于STM32开发【优雅の嵌入式开发】](https://zhuanlan.zhihu.com/p/145801160)
具体的配置直接打开.ioc文件就知道了
## 1.2 Bootloader
Bootloader文件夹是项目的固件引导,即可以实现IAP升级的固件,但是由于时间和技术的原因,该文件夹的代码未能实现,只是创建了一个工程。同样也是使用Clion开发的。主要是我的Firmware编译出来的.bin文件大约有152KB,所以直接传输给STM32会溢出,所以要采用流式传输给STM32,这里还没有实现。
# 硬件架构
该项目的硬件使用的是STM32F103VET6作为控制器,因为有512KB的FLASH和64KB的RAM,可以说对于本项目来说是够用的,Firmware编译出来的固件达到了152KB,所以使用其他控制器时,应该大于152KB。
当然我并没有自己设计PCB,而是直接使用了现成的模块,所以我的STM32是使用了魔女的开发板(不是广告)。[链接](https://item.taobao.com/item.htm?id=665365360620&spm=a1z10.1-c-s.w4004-23093508104.7.776f5c0eRfbjRn&skuId=4969448682317)
![alt text](https://cdn.jsdelivr.net/gh/LittleFengSir/fengsir-imgs/image-1.png)
因为手头上有这个开发板,就使用这个开发板,只是为了能够完成课设。此外屏幕是是2.8寸的触摸屏,其主控芯片为ILI9341,使用FSMC来控制它。然后我的屏幕被同学压出了三条缝,所幸还可以正常显示,就是触摸没有了。
然后就是电机模拟出租车的正常行驶,我这里使用了马达和马盘以及光耦测速模块,这里可以替换成带有编码器的电机,再加上电机驱动。我这里是马达直接使用开发板的5V供电就没有使用电机驱动,但还是得注意电机的过流问题。
本项目还使用了SD卡,我使用的SD卡是32G容量的。
# 程序架构
系统初始化的时候,会创建一个以默认参数的config.txt,保存在system目录下,通过读取SD卡可以修改系统的相关参数。但也没啥参数,就保存了日期和价格,以及串口的用户名和密码(这个并没有实现,连接串口后直接发命令即可,无需验证用户名和密码)。
该项目的程序使用了cJSON库,所以编译的时候需要加入cJSON库的编译,并且使用了中间件FATFS文件系统,以及USB设备。USB设备根据.ioc就知道,是一个大容量的存储设备,主要是为了能够不拔卡就可以访问SD卡里的内容(这里不是很完善,有点小bug,有出现电脑识别不了USb设备的情况)。
当开始计价的时候,定时器4就会开始工作,每1s进行一次速度和里程的计算,然后计价结束后,定时器4的中断就会被关闭,然后创建一个订单文件以.txt形式保存,内容是以JSON格式进行保存,方便读取和存储。我也尝试了一下使用.json的拓展名,但是好像Fatfs文件系统并不支持,所以使用了.txt扩展名。
没有合适的资源?快使用搜索试试~ 我知道了~
课设基于STM32的出租车计价器源码+项目说明.zip
共404个文件
h:168个
c:94个
obj:30个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 189 浏览量
2024-05-06
11:03:47
上传
评论
收藏 2.56MB ZIP 举报
温馨提示
该项目的硬件使用的是STM32F103VET6作为控制器,因为有512KB的FLASH和64KB的RAM,可以说对于本项目来说是够用的,Firmware编译出来的固件达到了152KB,所以使用其他控制器时,应该大于152KB。 当然我并没有自己设计PCB,而是直接使用了现成的模块,所以我的STM32是使用了魔女的开发板
资源推荐
资源详情
资源评论
收起资源包目录
课设基于STM32的出租车计价器源码+项目说明.zip (404个子文件)
Firmware.bin 152KB
Bootloader.bin 15KB
stm32f1xx_hal_tim.c 245KB
stm32f1xx_hal_tim.c 245KB
ff.c 160KB
stm32f1xx_hal_uart.c 136KB
stm32f1xx_hal_uart.c 136KB
stm32f1xx_hal_spi.c 128KB
stm32f1xx_hal_sd.c 99KB
stm32f1xx_hal_tim_ex.c 80KB
stm32f1xx_hal_tim_ex.c 80KB
stm32f1xx_ll_usb.c 80KB
cJSON.c 79KB
stm32f1xx_hal_pcd.c 73KB
stm32f1xx_hal_rtc.c 59KB
stm32f1xx_ll_sdmmc.c 51KB
stm32f1xx_hal_rcc.c 49KB
stm32f1xx_hal_rcc.c 49KB
stm32f1xx_ll_fsmc.c 39KB
stm32f1xx_ll_fsmc.c 39KB
stm32f1xx_hal_flash_ex.c 36KB
stm32f1xx_hal_flash_ex.c 36KB
stm32f1xx_hal_sram.c 34KB
stm32f1xx_hal_sram.c 34KB
stm32f1xx_hal_rcc_ex.c 30KB
stm32f1xx_hal_rcc_ex.c 30KB
stm32f1xx_hal_flash.c 29KB
stm32f1xx_hal_flash.c 29KB
stm32f1xx_hal_dma.c 28KB
stm32f1xx_hal_dma.c 28KB
CMakeCCompilerId.c 27KB
usbd_ctlreq.c 21KB
stm32f1xx_hal_gpio.c 21KB
stm32f1xx_hal_gpio.c 21KB
stm32f1xx_hal_pwr.c 21KB
stm32f1xx_hal_pwr.c 21KB
stm32f1xx_hal.c 20KB
stm32f1xx_hal.c 20KB
usbd_msc_scsi.c 19KB
stm32f1xx_hal_cortex.c 19KB
stm32f1xx_hal_cortex.c 19KB
usbd_conf.c 19KB
ws_drive_tft.c 18KB
usbd_msc.c 17KB
stm32f1xx_hal_rtc_ex.c 16KB
ili9341.c 16KB
stm32f1xx_hal_exti.c 15KB
stm32f1xx_hal_exti.c 15KB
system_stm32f1xx.c 15KB
system_stm32f1xx.c 15KB
usbd_core.c 13KB
usbd_desc.c 10KB
usbd_msc_bot.c 9KB
meter.c 9KB
bsp_driver_sd.c 9KB
stm32f1xx_it.c 9KB
stm32f1xx_hal_pcd_ex.c 7KB
main.c 7KB
usbd_storage_if.c 7KB
sd_diskio.c 7KB
diskio.c 7KB
fsmc.c 6KB
fsmc.c 6KB
usart.c 6KB
stm32f1xx_it.c 6KB
ff_gen_drv.c 6KB
main.c 5KB
usbd_ioreq.c 5KB
stm32f1xx_hal_gpio_ex.c 4KB
stm32f1xx_hal_gpio_ex.c 4KB
menu.c 4KB
usart.c 4KB
syscall.c 4KB
rtc.c 4KB
gpio.c 3KB
spi.c 3KB
sdio.c 3KB
tim.c 3KB
sysmem.c 3KB
sysmem.c 3KB
usb_device.c 2KB
stm32f1xx_hal_msp.c 2KB
usbd_msc_data.c 2KB
stm32f1xx_hal_msp.c 2KB
command.c 2KB
syscalls.c 2KB
syscalls.c 2KB
gpio.c 2KB
fatfs.c 2KB
retarget.c 2KB
retarget.c 2KB
dma.c 2KB
dma.c 2KB
key.c 972B
led.c 660B
myInit.c 524B
cache-v2 0B
cache-v2 0B
Firmware.cbp 38KB
Bootloader.cbp 24KB
共 404 条
- 1
- 2
- 3
- 4
- 5
资源评论
FL1768317420
- 粉丝: 4500
- 资源: 4773
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功