【E2295】基于STM32的电子秤设计

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

【E2295】基于STM32的电子秤设计

【E2295】基于STM32的电子秤设计

【E2295】基于STM32的电子秤设计

目录│文件列表:

 └ 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

TAG电子秤
  • 8 次
  • 2 分