【立创开源】基于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

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
### 回答1: 您好,使用立创EDA画STM32F103C8T6,您可以按照以下步骤进行操作: 1. 打开立创EDA软件,选择新建工程,选择STM32F103C8T6芯片型号。 2. 在工程中添加所需的元件,例如晶振、电容、电阻等。 3. 连接元件,按照STM32F103C8T6的引脚图进行连接。 4. 进行电路图的布局和连线,确保电路图的正确性。 5. 进行PCB布局,将电路图转换为PCB布局图。 6. 进行PCB连线,确保PCB布局的正确性。 7. 导出Gerber文件,进行PCB制板。 以上是使用立创EDA画STM32F103C8T6的基本步骤,希望对您有所帮助。 ### 回答2: 首先,立创EDA是一款非常实用的电路设计软件,它为STM32F103C8T6这样的单片机设计提供了非常好的支持。使用立创EDA画STM32F103C8T6,需要进行以下步骤: 1. 在电路设计中,要根据STM32F103C8T6的规格书进行针脚的连接。首先,在立创EDA的元器件库中找到STM32F103C8T6,把它拖动到电路图中。这样,STM32F103C8T6就会以缩略图的形式呈现在电路图中。 2. 在STM32F103C8T6上添加必要的外围电路元件,如晶振、稳压器、电容和推挽电阻等。需要注意的是,在添加外围电路元件时,要了解ESTM32F103C8T6芯片的规格书和参考设计。 3. 连接所有元器件和导线。连接时一定要根据芯片规格书和参考设计,以确保电路工作的可靠性。在连接时可以使用EDA自带的自动走线功能,也可以手动连接导线。 4. 进行电路仿真。在完成电路设计后,使用立创EDA自带的仿真功能进行仿真。仿真可模拟器件在电路工作正常时的性能和特性,以便及时发现问题并解决。针对STM32F103C8T6的电路设计可以进行信号仿真和电源仿真。 5. 导出PCB图。当电路设计及其仿真都通过后,可以将电路图导出到PCB绘图软件中进行PCB设计。在完成PCB设计后,再次进行电路仿真以验证PCB设计的正确性。 总而言之,使用立创EDA对STM32F103C8T6进行电路设计,需要对芯片的规格书和参考设计有非常清晰的理解,并严格按照规格书和参考设计进行设计和仿真。同时,要熟练掌握立创EDA的使用方法,以便快速高效地完成电路设计任务。 ### 回答3: 立创EDA是一款非常实用的电路设计软件,可以帮助工程师快速完成各种电路设计和仿真工作,其中也包括了对STM32F103C8T6芯片的支持,下面我们就来讲一下如何使用立创EDA画STM32F103C8T6。 首先,我们需要先下载和安装立创EDA软件。安装完成后,我们需要导入STM32F103C8T6芯片的库文件,以便在设计中使用。在立创EDA的菜单栏中找到“元器件库管理”选项,然后选择STM32F1系列芯片库文件进行导入。 导入完成后,在立创EDA的主界面上方,可以看到“元器件库”按钮,点击后会弹出库文件列表,选择我们导入的STM32F1系列芯片库就可以看到其中包含了STM32F103C8T6芯片。 在设计中,需要用到的元器件可以通过拖动和放置的方式添加进电路图中。对于STM32F103C8T6芯片,我们需要先添加其封装为LQFP48或LQFP64的芯片元件,随后根据需要选择添加其他外围元器件,例如晶振、电容、电阻等等。 添加完元器件后,我们需要进行电路连接,将各个元器件之间的引脚进行连线,建立电路图的逻辑关系。可以通过直接拖动线条的方式或者使用连接工具进行连线。 完成电路连接后,我们需要进行仿真操作,检查电路图的正确性和性能。立创EDA内置了丰富的仿真工具,可以直接在软件中进行电路的测试和调试。使用仿真工具时,需要先进行仿真设置,定义仿真的参数、时钟频率等等。 最后,完成电路设计后,我们需要将其导出为PCB文件,并进行布线、元器件放置和生成制板文件等步骤,最终完成整个电路的设计和制造。 以上就是使用立创EDA画STM32F103C8T6的基本步骤,需要注意的是,需要参考官方文档和芯片资料手册,了解STM32F103C8T6芯片的规格和特性,才能保证电路设计的正确性和性能。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Gbn2333

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

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

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

打赏作者

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

抵扣说明:

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

余额充值