STM32與BC26基礎控制篇 從云主機購買到MQTT服務器安裝
引言
在物聯網(IoT)項目開發中,STM32微控制器與BC26 NB-IoT模塊的組合是常見的通信方案。為了實現遠程控制和數據傳輸,搭建一個MQTT服務器是許多開發者的首選。本文將詳細介紹從購買云主機到安裝MQTT服務器軟件的基礎流程,幫助初學者快速構建自己的物聯網通信環境。
1. 云主機選購指南
1.1 云服務商選擇
國內主流云服務商(如阿里云、騰訊云、華為云)均提供適合個人和中小企業的云主機。建議選擇輕量應用服務器或入門級ECS實例,配置至少1核2G,操作系統推薦Ubuntu 20.04或CentOS 7.x。
1.2 購買與初始化
- 注冊賬號并完成實名認證。
- 選購云主機,選擇按量付費或包年包月。
- 配置安全組:開放22端口(SSH)、1883端口(MQTT)、80/443端口(可選Web管理)、8080端口(備用)。
- 獲取公網IP、登錄用戶名和密碼。
2. 連接云主機
使用SSH工具(如PuTTY、Xshell或終端)通過公網IP登錄云主機:`
ssh root@你的公網IP`
輸入密碼完成登錄。
3. 安裝MQTT服務器軟件
3.1 Mosquitto簡介
Mosquitto是一款輕量級開源MQTT代理,支持MQTT 3.1/3.1.1/5.0,適合資源受限的環境。以下是安裝步驟。
3.2 安裝Mosquitto
- Ubuntu/Debian系統:
`
sudo apt update
sudo apt install mosquitto mosquitto-clients
`
- CentOS系統:
`
sudo yum install epel-release
sudo yum install mosquitto mosquitto-clients
`
3.3 配置Mosquitto
編輯配置文件/etc/mosquitto/mosquitto.conf,添加以下內容:`
listener 1883
allow_anonymous true
# 如需用戶認證,取消注釋并配置密碼文件
password_file /etc/mosquitto/passwd
啟動并設置開機自啟:
sudo systemctl start mosquitto
sudo systemctl enable mosquitto
`
3.4 防火墻配置
確保云主機安全組已開放1883端口,如系統防火墻也有開啟,放行端口:
- Ubuntu:
sudo ufw allow 1883 - CentOS:
sudo firewall-cmd --add-port=1883/tcp --permanent && sudo firewall-cmd --reload
4. 測試MQTT服務器
4.1 本地測試
- 訂閱主題:
mosquitto_sub -h localhost -t test - 發布消息:
mosquitto_pub -h localhost -t test -m "hello",若訂閱端收到消息則成功。
4.2 遠程測試
使用MQTT客戶端工具(如MQTT.fx、mqttx)或命令行連接服務器公網IP:`
mosquitto_sub -h 你的公網IP -t test`
并發布消息驗證。
5. STM32+BC26連接MQTT要點
- BC26模塊需配置APN并激活網絡。
- 通過AT命令建立TCP連接:
AT+QMTOPEN=0,"你的公網IP",1883 - 連接MQTT Broker:
AT+QMTCONN=0,"client1" - 訂閱和發布主題:
AT+QMTSUB=0,1,"test",1,AT+QMTPUB=0,0,0,0,"test","hello" - 注意消息長度和緩沖區處理。
6.
本文介紹了基于云主機搭建MQTT服務器的完整流程,包括選購、配置、安裝、測試,以及STM32與BC26通過MQTT通信的基礎要點。下一步可研究TLS加密、用戶認證和STM32端具體代碼實現。希望這篇基礎篇能幫助你順利開啟物聯網開發之旅。
如若轉載,請注明出處:http://www.51e3.cn/product/52.html
更新時間:2026-11-09 17:22:41