# BusChargeSystem-IOT
## 项目介绍
基于 STM32F407+ESP8266+RFID 的模拟公交车刷卡收费系统(物联网)
STM32 通过 RFID 识别获取卡片数据并通过串口发送到 esp8266,esp8266 通过网络与服务端进行交互,服务端处理数据后存储到数据库中,方便后续的增删改查操作。
做这个小小的项目过程中参考了很多正点原子的资料,很多东西都是刚开始学习,所以只会简单的实现一个物联网项目。
项目示意图:
![项目示意图](./image/signal_communication.jpg)
## 1. 功能列表
| 功能 | 介绍 |
| :------- | :---------------------------------------------- |
| 添加用户 | 刷卡识别需要添加的用户 |
| 删除用户 | 刷卡识别需要删除的用户 |
| 刷卡消费 | 每次刷卡消费金额为 1 元,同一用户可连续刷卡消费 |
| 余额充值 | 通过按键选择充值金额并刷卡识别完成充值 |
## 2. 技术栈
### 2.1 环境
| 环境 | 版本 |
| :---------- | :------------ |
| 操作系统 | Windows/Linux |
| KeilMDK-ARM | 5.35 |
| Arduino | 1.8.15 |
| Jdk | 1.8 |
| Mysql | 8.0 |
### 2.2 硬件端
- STM32F407
- ESP8266
- RFID 模块
- TFT LCD 液晶屏模块
### 2.3 服务端
- Java
- Mysql
- JDBC
## 3. 项目开发
### 3.1 项目代码文件结构简介
```
- BusChargeSystem-IOT
- BusChargeSystem STM32F407代码
- BusChargeSystemService 服务端代码
- esp8266 ESP8266代码
- sql mysql数据库脚本
```
### 3.2 硬件端开发
#### 3.2.1 开发说明
- .\BusChargeSystem\为 STM32F407 开发板的代码,请使用 Keil uVision5 集成开发工具打开\USER\BusChargeSystem.uvprojx 文件
- .\esp8266\为 esp8266 开发板的代码,请使用 Arduino 开发工具打开,修改服务器 IP 地址和端口
```cpp
// 服务器IP地址 和 端口
const char *host = "192.168.137.1"; // 本地测试的IP 后期改成云服务器的IP
const uint16_t port = 8888;
```
注:如果本地测试接收不数据,关闭防火墙后再进行测试
#### 3.2.2 硬件接线方式
| STM32F407 | RFID 模块 |
| --------- | --------- |
| PA4 | SDA |
| PC10 | SCK |
| PC12 | MOSI |
| PC11 | MISO |
| GND | GND |
| PA6 | RST |
| 3.3V | VCC |
| STM32F407 | ESP8266 |
| --------- | ------- |
| 3.3V | VCC |
| GND | GND |
| PA9(TX) | RX |
| PA10(RX) | TX |
TFT LCD 液晶屏模块 --- STM32F407 开发板上固定位置插入
### 3.3 服务端开发
#### 3.3.1 开发说明
- .\sql\为数据库脚本,安装 mysql,导入 bus_charge_system.sql 脚本
- 数据库名称为:bus_charge_system
- 默认账号:BCSAdmin 密码:123456
- .\BusChargeSystem\为服务端代码,请使用 IntelliJ IDEA 打开此文件夹
- 启动服务端程序,默认监听端口为 8888
#### 3.3.2 数据库表
表名:user_tb
| 字段名 | 类型 | 注释 |
| :---------- | :------- | :------------------ |
| id | int | RFID 模块读卡的卡号 |
| name | varchar | 用户名 |
| sex | char | |
| age | int | |
| balance | double | 用户余额 |
| signup_time | datetime | 注册时间 |
## 4. 项目部署
### 4.1 硬件端部署
STM32F407:
- 使用 Keil uVision5 集成开发工具打开.\BusChargeSystem\USER\目录下的 BusChargeSystem.uvprojx 文件并编译
- 编译后会在.\BusChargeSystem\OBJ\目录下生成 BusChargeSystem.hex 文件,通过 FlyMcu 工具将此文件下载到开发板上 或 使用 DAP 仿真器
ESP8266:
- 用 Arduino 开发工具打开.\esp8266\目录下的 esp8266.ino 文件并将程序下载到开发板上
### 4.2 服务端部署
- 在数据库管理软件中导入./sql/目录下的 bus_charge_system.sql 脚本
- 将.\BusChargeSystemService 目录下的 Java 程序打包成 Jar 包并上传到云服务器
- 在云服务器上将 8888 端口加入安全组
- 在终端执行 Jar 包,命令如下:
```
java -jar BusChargeSystemService.jar
```
## 5. 参考资料
[硬件资料](http://www.openedv.com/docs/boards/stm32/zdyz_stm32f407_explorer.html)
[正点原子@ALIENTEK](http://www.alientek.com/)
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用问题欢迎随时与博主沟通,第一时间进行解答!该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用!有问题请及时沟通交流。 基于STM32、ESP8266、PHP、QT、应用软件开发、系统软件开发、移动应用开发、网站开发C++、Java、python、web、C#、单片机、EDA、proteus、RTOS、包括计算机硬件、服务器、网络设备、存储设备、移动设备、LInux、IOS、树莓派、安卓开发、微机操作系统、网络操作系统、分布式操作系统等。此外,还有嵌入式操作系统、智能操作系统等、数据集、大数据分析、人工智能、机器学习等各种项目 项目具有较高的学习借鉴价值,也适用于小白学习入门进阶。当然也可作为毕设项目、课程设计、大作业、初期项目立项演示等。如果基础还行,或者热爱钻研,亦可在此项目代码基础上进行修改添加,实现其他不同功能。欢迎下载,沟通交流,互相学习,共同进步!
资源推荐
资源详情
资源评论
收起资源包目录
毕设&课设&项目&实训-基于 STM32F407+ESP8266+RFID 的模拟公交车刷卡收费系统(物联网版).zip (179个子文件)
keilkilll.bat 372B
cc936.c 697KB
cc949.c 546KB
cc950.c 433KB
cc932.c 240KB
ff.c 148KB
stm32f4xx_tim.c 119KB
stm32f4xx_rtc.c 98KB
stm32f4xx_rcc.c 94KB
lcd.c 84KB
stm32f4xx_adc.c 66KB
sdio_sdcard.c 61KB
stm32f4xx_flash.c 60KB
stm32f4xx_can.c 57KB
stm32f4xx_usart.c 55KB
stm32f4xx_cryp_aes.c 55KB
stm32f4xx_fmc.c 54KB
stm32f4xx_i2c.c 52KB
stm32f4xx_dma.c 50KB
stm32f4xx_spi.c 50KB
system_stm32f4xx.c 46KB
stm32f4xx_sai.c 44KB
stm32f4xx_fsmc.c 40KB
stm32f4xx_ltdc.c 38KB
stm32f4xx_sdio.c 37KB
stm32f4xx_pwr.c 36KB
stm32f4xx_cryp.c 34KB
ccsbcs.c 29KB
stm32f4xx_dma2d.c 26KB
stm32f4xx_dac.c 25KB
stm32f4xx_hash.c 25KB
stm32f4xx_gpio.c 24KB
stm32f4xx_dcmi.c 18KB
main.c 16KB
RC522.c 15KB
usmart.c 15KB
stm32f4xx_rng.c 13KB
misc.c 11KB
usmart_str.c 11KB
stm32f4xx_cryp_tdes.c 10KB
stm32f4xx_wwdg.c 10KB
app4.c 10KB
stm32f4xx_exti.c 9KB
stm32f4xx_cryp_des.c 9KB
stm32f4xx_hash_sha1.c 9KB
stm32f4xx_syscfg.c 9KB
stm32f4xx_hash_md5.c 9KB
stm32f4xx_iwdg.c 9KB
w25qxx.c 8KB
sram.c 8KB
fontupd.c 7KB
fattester.c 7KB
rtc.c 7KB
stm32f4xx_dbgmcu.c 6KB
spi.c 6KB
diskio.c 6KB
malloc.c 5KB
stm32f4xx_flash_ramfunc.c 5KB
mycc936.c 5KB
usart.c 5KB
delay.c 5KB
syscall.c 4KB
stm32f4xx_it.c 4KB
text.c 4KB
exti.c 4KB
app3.c 4KB
exfuns.c 3KB
stm32f4xx_crc.c 3KB
usmart_config.c 2KB
timer.c 2KB
key.c 2KB
app2.c 1KB
beep.c 1KB
led.c 1KB
app1.c 1020B
sys.c 1007B
unicode.c 252B
css_j.css 4KB
css_e.css 3KB
.gitignore 72B
.gitignore 34B
stm32f4xx.h 679KB
core_cm4.h 105KB
stm32f4xx_tim.h 49KB
stm32f4xx_fmc.h 43KB
stm32f4xx_rtc.h 39KB
FONT.H 34KB
stm32f4xx_adc.h 31KB
stm32f4xx_i2c.h 30KB
stm32f4xx_rcc.h 29KB
stm32f4xx_dma.h 28KB
stm32f4xx_can.h 26KB
stm32f4xx_fsmc.h 26KB
stm32f4xx_sai.h 24KB
stm32f4xx_flash.h 23KB
stm32f4xx_gpio.h 23KB
stm32f4xx_sdio.h 22KB
core_cm4_simd.h 22KB
stm32f4xx_ltdc.h 20KB
stm32f4xx_spi.h 20KB
共 179 条
- 1
- 2
资源评论
- hacjer12024-07-09非常有用的资源,有一定的参考价值,受益匪浅,值得下载。
妄北y
- 粉丝: 2w+
- 资源: 1万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 【新增】-110 -食堂薪酬体系设计方案.doc
- 【新增】-112 -私立学校薪酬福利方案.doc
- 【新增】-113 -通用薪酬绩效管理制度方案.doc
- 【新增】-117 -外贸业务薪资及提成方案(暂行).doc
- 【新增】-118 -万科房地产公司全套销售薪酬管理制度 (1).doc
- 【新增】-116 -外贸薪酬制度原版.doc
- 【新增】-124 -物业公司薪酬体系方案(1).doc
- 【新增】-121 -物业公司绩效考核及薪酬方案.doc
- 【新增】-125 -物业公司组织架构与薪酬设计(修订版).doc
- 【新增】-129 -新华医院薪酬方案设计报告.doc
- 【新增】-134 -信托投资公司薪酬设计方案.doc
- 【新增】-137 -学校食堂员工薪资方案.doc
- 【新增】-139 -药店薪酬体系设计方案.doc
- 【新增】-138 -学校薪酬体系设计方案.doc
- 基于matlab 的ofdm仿真 具体点 想要加好友 不同调制方式ofdm误码率分析
- 【新增】-142 -油田公司薪酬制度与薪酬体系设计方案.doc
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功