IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 嵌入式 -> 【立创开源】基于N32/STM32物联网终端设备 -> 正文阅读

[嵌入式]【立创开源】基于N32/STM32物联网终端设备

1、项目功能介绍


STM32终端控制器,设计的初衷是做一款拥有蓝牙BLE与LORA传输功能的室内外传感控检测控制的产品。

该项目基于目前DIY爱好者经常使用的STM32F103C8T6型号,通过LORA或BLE,从而实现远程主控的实时显示。该系统最大特色在于拥有远程控制与后备电源系统。

部分代码已支持国民技术N32G430C8L7方案芯片,详见底部说明。

基于N32/STM32物联网终端设备,支持lora网络 嘉立创EDA开源硬件平台icon-default.png?t=M85Bhttps://oshwhub.com/gbn2333/ji-yustm32

*2、项目属性


此项目完全原创,首次公开,代码、自制代码、PCB以及原理图完全开源,禁止资料倒卖否则后果自负。此项目前后历时2个月,PCB打样两版,遵循GPL3.0协议。也请“嘉”人们多多支持开源,共同维护国内开源环境。

* 3、开源协议


GPL3.0开源协议
原理图、PCB、代码完全开源,但不允许个人制作出售以及倒卖资料,如需使用,请标明来源。
首先,感谢杜洋老师的“STM32入门30步”,详细的教程资料带我入门STM32CubeIDE,代码参考于此,希望大家致敬开源精神。其次,感谢立创开源平台中开源的各种工程,为我提供了创新的想法和理论支持。最后,感谢立创EDA提供此次难能宝贵的机会,也十分感激立创EDA为开源建设所付出的一切,相信在立创开源平台的带领下,国内开源环境会越来越好,我们一起加油!

*4、硬件部分


?产品名:基于STM32物联网终端设备?
?主要功能:?
1.可读出环境的温湿度值,在设置的温度时通过继电器打开/关闭用电器;
2.可通过手机蓝牙BLE连接设备,连接后显示温湿度值,亮度,电压值,连接状态,控制LED,系统重启、继电器开关等功能;
3.可通过LORA 模块扩频调制进行无线串口多机通讯(型号:A39C-T400A22D1A),实测极复杂传输距离最远可达 1000 米(官方宣传无遮挡5000米)。通过使用该模块的主从模式、自动中继、传输方式。实现超低功耗,可广泛应用于各种环境下,轻松实现低频无线数据传输。请注意:该项目在USART2使用9600波特率,其余均为115200;
4.在系统出现故障时蜂鸣器报警,并将报警事件上传用户,继电器异常自动断电;
5.从机包含HLK-5G人体传感器,可实时判断当前人员存在状态;
6.从机包含BH1750光照传感器,可准确、实时判断当前环境亮度;
7.从机包含0.96寸OLED屏幕,使得调试更加方便,数据更为直观;
8.从机包含CH340N串口芯片,可实现与PC端通信调试;
9.从机与接收机均使用充放电一体电路,检测到电池电量低于极限电压时,强制MCU进入待机状态降低功耗;
10.利用双路ADC检测,实现外置电源与电池供电检测。预留MQ-X传感器接口(当外置电源5V输入时正常工作);
11.接收机搭载1.44TFT显示屏幕,实时显示接收到的温湿度、光照、电压等数据。

V1.0版本照片:

V1.1版本照片:

(1)从机-正面

(2)从机-背面

(3)从机-工作状态

(4)从机-工作状态

(5)接收器-工作状态

(6)主从机-工作状态

国民技术N32G430C8L7方案芯片:

如您使用的是该系列芯片。请自行更改ADC部分的代码,其余部分(蓝牙,串口,I2C,按键等)可不做修改,直接使用由CUBE IDE编辑器完成的代码

最新完整版本已更新,详见附件,效果如下:

*5、软件部分


从机(传感器端)代码使用STM32CubeIDE 1.8.0编辑;接收端代码使用Keil5 MDK编辑。
STM32Cube端部分代码如下:

while (1)
? {
? ? ? HAL_NVIC_DisableIRQ(DMA1_Channel1_IRQn);//关DMA中断
? ? ? DHT11_ReadData(DHT11_BUF);//读出DHT11传感器数据(参数是存放数据的数组指针)
? ? ? HAL_NVIC_EnableIRQ(DMA1_Channel1_IRQn);//开DMA中断

? ? ? bh1750_lux = Get_BH1750_Value();


? ? ? if(USART2_RX_STA&0x8000){//判断中断接收标志位(蓝牙模块BT,使用USART2)

? ? ? ? ?if((USART2_RX_STA&0x7FFF) == 1) ? ?//判断接收数量1个(手机控制程序)
? ? ? ? ?{
? ? ? ? ? ? ?switch (USART2_RX_BUF[0]){//判断接收数据的内容
? ? ? ? ? ? ? ? case 0x41:
? ? ? ? ? ? ? ? ? ? RELAY_1(1);继电器的控制程序(0继电器放开,1继电器吸合)
? ? ? ? ? ? ? ? ? ? BT_printf("Relay ON");//返回数据内容,在手机APP上显示
? ? ? ? ? ? ? ? ? ? break;
? ? ? ? ? ? ? ? case 0x44:
? ? ? ? ? ? ? ? ? ? RELAY_1(0);继电器的控制程序(0继电器放开,1继电器吸合)
? ? ? ? ? ? ? ? ? ? BT_printf("Relay OFF");//返回数据内容,在手机APP上显示
? ? ? ? ? ? ? ? ? ? break;
? ? ? ? ? ? ? ? case 0x42:
? ? ? ? ? ? ? ? ? ? LED_2(1);//LED2控制
? ? ? ? ? ? ? ? ? ? BT_printf("LED1 ON");//返回数据内容,在手机APP上显示
? ? ? ? ? ? ? ? ? ? break;
? ? ? ? ? ? ? ? case 0x45:
? ? ? ? ? ? ? ? ? ? LED_2(0);//LED2控制
? ? ? ? ? ? ? ? ? ? BT_printf("LED1 OFF");//返回数据内容,在手机APP上显示
? ? ? ? ? ? ? ? ? ? break;
? ? ? ? ? ? ? ? case 0x43:
? ? ? ? ? ? ? ? ? ? BUZZER_SOLO1();//蜂鸣器输出单音的报警音
? ? ? ? ? ? ? ? ? ? BT_printf("BEEP");//返回数据内容,在手机APP上显示
? ? ? ? ? ? ? ? ? ? break;
? ? ? ? ? ? ? ? case 0x46:
? ? ? ? ? ? ? ? ? ? BT_printf("CPU Reset");//返回数据内容,在手机APP上显示
? ? ? ? ? ? ? ? ? ? HAL_Delay(1000);//延时
? ? ? ? ? ? ? ? ? ? NVIC_SystemReset();//系统软件复位函数
? ? ? ? ? ? ? ? ? ? break;
? ? ? ? ? ? ? ? default:
? ? ? ? ? ? ? ? ? ? //冗余语句
? ? ? ? ? ? ? ? ? ? break;
? ? ? ? ? ? ? }
? ? ? ? ?}
? ? ? ? ?USART2_RX_STA=0;//标志位清0,准备下次接收
? ? ? }

? ? ? if(dmaadc[0]<3200){
? ? ? ? ? BT_printf("进入停机状态!\n\r");
? ? ? ? ? HAL_PWR_EnterSTOPMode(PWR_LOWPOWERREGULATOR_ON,PWR_STOPENTRY_WFI);
? ? ? ? ? SystemClock_Config();
? ? ? ? ? BT_printf("退出停机状态!\n\r");
? ? ? }

*6、BOM清单


BOM参考原理图即可,与商城元件编号基本一致

下图分别为从机、接收机BOM表

如您对该项目使用的LORA模块有兴趣,请点击AS15-USB-T3串口模块转接板项目,内附有购买链接。

*7、大赛LOGO验证


* 8、演示您的项目并录制成视频上传


请点击:https://www.bilibili.com/video/BV1PW4y1U7hx/

蓝牙控制演示视频:STM32终端传感器-蓝牙演示_哔哩哔哩_bilibili

  嵌入式 最新文章
基于高精度单片机开发红外测温仪方案
89C51单片机与DAC0832
基于51单片机宠物自动投料喂食器控制系统仿
《痞子衡嵌入式半月刊》 第 68 期
多思计组实验实验七 简单模型机实验
CSC7720
启明智显分享| ESP32学习笔记参考--PWM(脉冲
STM32初探
STM32 总结
【STM32】CubeMX例程四---定时器中断(附工
上一篇文章      下一篇文章      查看所有文章
加:2022-09-21 00:44:29  更:2022-09-21 00:46:27 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/19 14:55:29-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码