2021-11-18 16:43:29 索炜达电子 624
项目编号:E2295
文件大小:101M
源码说明:带中文注释
开发环境:C编译器
简要概述:
智能电子秤
一、简介
此系统采用STM32F103C8T6或STM32H750XB为下位机主控芯片,单片机处理来自HX711称重传感器模块的数据来达到称重的目的,本系统称重范围0~5KG,称重精度经校准后可达1g,系统具备称重、去皮、报警等功能。此系统还配备一个上位机,上位机采用PyQt5编写,上下位机之间通过串口通信。
二、使用说明
系统上电自动归零,所以上电前请不要在称重台上放置物体。同时按住A、B键去皮,同时长按A、B键进入称重报警值设置界面,报警值的设置范围为1~5000g。
系统通过USB线与电脑相连,双击上位机程序运行,选择串口win1点击连接按钮即可进入主界面,主界面如图所示:
三、目录结构
DianZiChen
├─HardWare 下位机硬件相关
│ └─stm32f103c8t6_dzc 基于stm32f103的下位机工程文件夹
│ │
│ ├─cmake-build-debug 编译输出文件夹,包含.hex及.bin烧录文件
│ │
│ ├─Core 用户核心文件夹,包含各类驱动
│ │ ├─Inc .h文件存放文件夹
│ │ ├─Src .c文件存放文件夹
│ │ └─Startup 存放启动文件
│ └─Drivers st官方驱动
│ └─stm32h750xb_dzc 基于stm32H750的下位机工程文件夹
│ └─Accessory 附件,串口屏工程
| |
| └─CLion_Prj 基于stm32H750的下位机CLion工程
| |
| └──cmake-build-debug 编译输出文件夹,包含.hex及.bin烧录文件
│ |
│ ├─Core 用户核心文件夹,包含各类驱动
│ | ├─Inc .h文件存放文件夹
│ | ├─Src .c文件存放文件夹
│ | └─Startup 存放启动文件
│ └─Drivers st官方驱动
│
├─Doc 存放一些文档及图片,非工程文件
│
└─PyQt5GUI 上位机工程文件夹
├─.idea
│ └─inspectionProfiles
├─build 存放pyinstaller打包时编译生成的文件啊
│
├─communication 串口驱动
│
├─dist 存放.exe文件
│
├─PyQt5Ui 界面文件
│
└─resource 资源文件
四、开发环境
下位机
MinGW:工具链
Clion 2020.3.x:代码编写及编译工具
STM32CubeMX:代码自动生成工具
secureCRT 8.3:串口调试助手
编码:utf-8
上位机
Pycharm 2020.3.x:代码编辑器
QtDesigner:可视化界面设计工具
所依赖的三方库:PyQt5、pyserial
目录│文件列表:
└ DianZiChen
├ Doc
│ │ win1.jpg
│ │ win2.jpg
│ └ win3.jpg
├ HardWare
│ ├ stm32f103c8t6_dzc
│ │ │ .cproject
│ │ │ .mxproject
│ │ │ .project
│ │ │ CMakeLists.txt
│ │ │ CMakeLists_template.txt
│ │ │ stm32f103c8t6_zhsx.ioc
│ │ │ STM32F103C8TX_FLASH.ld
│ │ ├ .idea
│ │ │ │ encodings.xml
│ │ │ │ misc.xml
│ │ │ │ modules.xml
│ │ │ │ stm32f103c8t6_zhsx.iml
│ │ │ │ vcs.xml
│ │ │ │ workspace.xml
│ │ │ ├ inspectionProfiles
│ │ │ │ └ Project_Default.xml
│ │ │ └ runConfigurations
│ │ │ └ OCD_stm32f103c8t6_zhsx.xml
│ │ ├ cmake-build-debug
│ │ │ │ CMakeCache.txt
│ │ │ │ cmake_install.cmake
│ │ │ │ Makefile
│ │ │ │ stm32f103c8t6_zhsx.bin
│ │ │ │ stm32f103c8t6_zhsx.cbp
│ │ │ │ stm32f103c8t6_zhsx.elf
│ │ │ │ stm32f103c8t6_zhsx.hex
│ │ │ │ stm32f103c8t6_zhsx.map
│ │ │ └ CMakeFiles
│ │ │ │ clion-environment.txt
│ │ │ │ clion-log.txt
│ │ │ │ cmake.check_cache
│ │ │ │ CMakeDirectoryInformation.cmake
│ │ │ │ CMakeError.log
│ │ │ │ CMakeOutput.log
│ │ │ │ Makefile.cmake
│ │ │ │ Makefile2
│ │ │ │ progress.marks
│ │ │ │ TargetDirectories.txt
│ │ │ ├ 3.17.5
│ │ │ │ │ CMakeASMCompiler.cmake
│ │ │ │ │ CMakeCCompiler.cmake
│ │ │ │ │ CMakeCXXCompiler.cmake
│ │ │ │ │ CMakeDetermineCompilerABI_C.bin
│ │ │ │ │ CMakeDetermineCompilerABI_CXX.bin
│ │ │ │ │ CMakeSystem.cmake
│ │ │ │ ├ CompilerIdC
│ │ │ │ │ │ CMakeCCompilerId.c
│ │ │ │ │ └ CMakeCCompilerId.o
│ │ │ │ └ CompilerIdCXX
│ │ │ │ │ CMakeCXXCompilerId.cpp
│ │ │ │ └ CMakeCXXCompilerId.o
│ │ │ └ stm32f103c8t6_zhsx.elf.dir
│ │ │ │ ASM.includecache
│ │ │ │ build.make
│ │ │ │ C.includecache
│ │ │ │ cmake_clean.cmake
│ │ │ │ depend.internal
│ │ │ │ depend.make
│ │ │ │ DependInfo.cmake
│ │ │ │ flags.make
│ │ │ │ link.txt
│ │ │ │ progress.make
│ │ │ ├ Core
│ │ │ │ ├ Src
│ │ │ │ │ │ bsp_Buzzer.c.obj
│ │ │ │ │ │ bsp_delay.c.obj
│ │ │ │ │ │ bsp_hx711.c.obj
│ │ │ │ │ │ bsp_i2c.c.obj
│ │ │ │ │ │ bsp_InnerFlash.c.obj
│ │ │ │ │ │ bsp_key.c.obj
│ │ │ │ │ │ bsp_oled.c.obj
│ │ │ │ │ │ main.c.obj
│ │ │ │ │ │ stm32f1xx_hal_msp.c.obj
│ │ │ │ │ │ stm32f1xx_it.c.obj
│ │ │ │ │ │ syscalls.c.obj
│ │ │ │ │ │ sysmem.c.obj
│ │ │ │ │ └ system_stm32f1xx.c.obj
│ │ │ │ └ Startup
│ │ │ │ └ startup_stm32f103c8tx.s.obj
│ │ │ └ Drivers
│ │ │ └ STM32F1xx_HAL_Driver
│ │ │ └ Src
│ │ │ │ stm32f1xx_hal.c.obj
│ │ │ │ stm32f1xx_hal_cortex.c.obj
│ │ │ │ stm32f1xx_hal_dma.c.obj
│ │ │ │ stm32f1xx_hal_exti.c.obj
│ │ │ │ stm32f1xx_hal_flash.c.obj
│ │ │ │ stm32f1xx_hal_flash_ex.c.obj
│ │ │ │ stm32f1xx_hal_gpio.c.obj
│ │ │ │ stm32f1xx_hal_gpio_ex.c.obj
│ │ │ │ stm32f1xx_hal_pwr.c.obj
│ │ │ │ stm32f1xx_hal_rcc.c.obj
│ │ │ │ stm32f1xx_hal_rcc_ex.c.obj
│ │ │ │ stm32f1xx_hal_tim.c.obj
│ │ │ │ stm32f1xx_hal_tim_ex.c.obj
│ │ │ └ stm32f1xx_hal_uart.c.obj
│ │ ├ Core
│ │ │ ├ Inc
│ │ │ │ │ bsp_Buzzer.h
│ │ │ │ │ bsp_delay.h
│ │ │ │ │ bsp_hx711.h
│ │ │ │ │ bsp_i2c.h
│ │ │ │ │ bsp_InnerFlash.h
│ │ │ │ │ bsp_key.h
│ │ │ │ │ bsp_oled.h
│ │ │ │ │ codetab.h
│ │ │ │ │ main.h
│ │ │ │ │ stm32f1xx_hal_conf.h
│ │ │ │ └ stm32f1xx_it.h
│ │ │ ├ Src
│ │ │ │ │ bsp_Buzzer.c
│ │ │ │ │ bsp_delay.c
│ │ │ │ │ bsp_hx711.c
│ │ │ │ │ bsp_i2c.c
│ │ │ │ │ bsp_InnerFlash.c
│ │ │ │ │ bsp_key.c
│ │ │ │ │ bsp_oled.c
│ │ │ │ │ main.c
│ │ │ │ │ stm32f1xx_hal_msp.c
│ │ │ │ │ stm32f1xx_it.c
│ │ │ │ │ syscalls.c
│ │ │ │ │ sysmem.c
│ │ │ │ └ system_stm32f1xx.c
│ │ │ └ Startup
│ │ │ └ startup_stm32f103c8tx.s
│ │ └ 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