物联网毕设 -- 基于K210的瓶子识别(STM32+K210)

目录

一 连线图

1 原理图

2 PCB效果(面包板)

3 实物效果

4 APP效果(无)

5 功能概括

(1)硬件端

(2)演示视频

二 底层代码使用方式

1 使用说明

2 下载程序

三 APP使用方式(无需查看)

四 程序架构及修改(通用)


前言

这段话描述了一个系统,该系统包括一个OLED显示屏,用于实时显示设备状态;一个K210设备,用于进行图像识别并将识别结果通过串口发送给主控芯片STM32F103C8T6;以及主控芯片,负责接收识别结果并显示出来。整个系统协同工作,将设备状态和图像识别结果实时显示在屏幕上。

关注微信公众号--星之援工作室 发送关键字(项目清单)
可获取项目清单资料

➡️🫡🫡🫡🫡🫡🫡🫡🫡➡️


⚠️⚠️(本文章仅提供思路和实现方法,并不包含代码,需要代码的同学请自行联系博主)

⚠️⚠️(有疑问或需要定制或者技术支持等,也请自行联系博主)⚠️⚠️


一 连线图

1 原理图

2.   开发板本身自带一个LED ,这个LED作为我们查看网络连接状态和获取数据状态的说明

(1),若MCU上面的的LED处于闪烁状态,则说明我们的设备处于正常运行,若LED灯不再闪烁,请按复位键将程序手动复位一次

2 PCB效果(面包板)

3 实物效果

4 APP效果(无)

5 功能概括

(1)硬件端

  1. OLED显示屏:将设备状态实时显示到屏幕中;
  2. K210:进行图像识别,将识别结果通过串口发生给主控芯片;
  3. STM32F103C8T6:作为主控进行识别结果显示

(2)演示视频

链接:演示视频icon-default.png?t=N7T8https://pan.baidu.com/s/12imm4z3x5B4Ow3UlYnzoTw?pwd=XZY0

提取码:XZY0

二 底层代码使用方式

1 使用说明

(1) 使用的时候设备会自动连接WIFI

(2) 当设备处于正常状态的时候,开发板上面的LED会处于闪烁的状态。

(多看视频,视频中有完整功能演示)

(多看视频,视频中有完整功能演示)

(多看视频,视频中有完整功能演示)

2 下载程序

  1. 先根据原理图进行连线,连接好以后在做后面的操作
  2. 打开程序(硬件由工作室出的可以忽略下载程序这部分)

三 APP使用方式(无需查看)

  1. 下载APP

(1)操作方式:

使用Android手机安装APK进行操控

安装Android studio导入项目使用模拟器

安装包链接:

百度网盘 请输入提取码

安装教程

全网最全最细Android Studio 安装和使用教程 - 知乎

(2)使用说明

打开APP后设备会自动订阅MQTT主题,等待1-5秒APP会自动获取到设备上的数据,若5秒内没有获取到设备数据,则请检测设备是否在线,若在线,则请重新打开APP进行数据的获取

(多看视频,视频中有完整功能演示)

(多看视频,视频中有完整功能演示)

(多看视频,视频中有完整功能演示)

四 程序架构及修改(通用)

链接:

框架讲解icon-default.png?t=N7T8https://pan.baidu.com/s/1TZkvdEOp-ERgi-2A1o-KWw?pwd=XZY0

提取码:XZY0

APP参数修改

### STM32K210开发资料异同点对比 #### 一、架构差异 STM32基于ARM Cortex-M系列内核构建,主要面向嵌入式应用领域,提供丰富的外设接口和支持多种通信协议的能力[^1]。相比之下,K210是一款由 Kendryte 设计的人工智能协处理器,采用RISC-V指令集架构并内置神经网络加速引擎DNPU,特别适合于边缘计算场景下的AI推理任务处理。 #### 二、集成开发环境(IDE) 对于STM32而言,开发者通常会使用诸如Keil MDK这样的专业级IDE来进行项目创建、编译链接以及在线调试等工作流程;而对于搭载了Kendryte K210芯片的产品来说,则可以借助MaixPy IDE完成类似的软件编写工作,该IDE专门为支持MicroPython脚本语言而优化设计,允许用户快速上手进行原型验证和功能测试。 #### 三、编程模型区别 当涉及到具体的应用程序实现时,在STM32平台上往往需要依赖标准库函数或者HAL层驱动来操作硬件资源,并通过C/C++这类静态类型的语言编写源码文件;而在针对K210平台开展研发活动期间,除了能够继续沿用传统方式之外,还可以利用解释型的MicroPython动态地控制设备行为,简化某些特定场合下代码逻辑的设计复杂度。 ```c // C code example for STM32 GPIO toggle using HAL library #include "stm32f4xx_hal.h" int main(void){ HAL_Init(); __HAL_RCC_GPIOA_CLK_ENABLE(); // Enable clock access to port A GPIO_InitTypeDef GPIO_InitStruct = {0}; /* Configure pin as output */ GPIO_InitStruct.Pin = GPIO_PIN_5; GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; GPIO_InitStruct.Pull = GPIO_NOPULL; GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); while (1) { HAL_GPIO_TogglePin(GPIOA, GPIO_PIN_5); // Toggle LED connected at PA5 HAL_Delay(500); // Delay of half a second } } ``` ```python # MicroPython code snippet demonstrating how easy it is to interact with hardware on Maix Bit board based on K210 SoC. from machine import Pin import time led = Pin(Pin.PB17, mode=Pin.OUT) while True: led.value(not led.value()) # Toggle the state of an onboard LED time.sleep_ms(500) # Wait for 500 milliseconds before toggling again ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿柒学起来

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值