【物联网】基于树莓派的物联网开发【23】——树莓派安装SQLite嵌入式数据库

场景介绍

安装本地数据库SQLite,进行存储数据

安装SQLite数据库

sudo apt install sqlite3 libsqlite3-dev -y

在这里插入图片描述

在树莓派上安装SQLite可视化工具:

安装DB Browser for SQLite形界面工具来管理和查看数据库

sudo apt-get install sqlitebrowser

在这里插入图片描述

### STM32与数据库的集成或使用方法 在嵌入式开发领域,STM32作为一款高性能微控制器,通常不直接连接到传统意义上的关系型数据库(如MySQL、PostgreSQL)。然而,可以通过间接方式实现STM32与数据库之间的交互。以下是几种常见的方式: #### 1. 使用中间设备或网关 一种常用的方法是通过中间设备(如树莓派、PC或其他服务器)来处理STM32与数据库之间的通信。STM32可以将采集的数据发送至该中间设备,而中间设备负责将这些数据存储到数据库中。 - **硬件架构**: STM32通过串口、UART或Wi-Fi模块(如ESP8266/ESP32)将数据传输给中间设备[^2]。 - **软件流程**: - 中间设备运行脚本程序(Python、Node.js等),监听来自STM32的消息。 - 接收到消息后,解析数据并将之写入本地或远程数据库。 ```python import mysql.connector def insert_data(temp, humidity): db = mysql.connector.connect( host="localhost", user="root", password="password", database="iot" ) cursor = db.cursor() sql = "INSERT INTO sensor_data (temperature, humidity) VALUES (%s, %s)" val = (temp, humidity) cursor.execute(sql, val) db.commit() print(cursor.rowcount, "record inserted.") ``` #### 2. 连接云端平台 另一种方案是利用物联网云平台(如阿里云IoT、AWS IoT Core、Azure IoT Hub等)作为中介。STM32可通过网络协议(MQTT、HTTP、CoAP等)将数据上传至云端,随后由云端应用程序完成数据入库的操作。 - **具体实现**: - 配置STM32F103C8T6与ESP8266 Wi-Fi模块配合工作,建立TCP/IP连接。 - 编写固件代码,使STM32定期向指定URL地址发起POST请求或将传感器读数发布到特定主题下。 ```c #include <stdio.h> #include <string.h> void send_http_request(const char *data) { printf("Sending HTTP request with data: %s\n", data); } ``` #### 3. 嵌入轻量级数据库引擎 如果目标应用不需要频繁访问外部资源,则可以在MCU内部部署小型化NoSQL解决方案——例如SQLite或者FatFS搭配文件系统模拟表结构。不过需要注意的是,这类做法可能受限于闪存容量以及性能瓶颈等问题。 综上所述,针对不同场景可以选择适合的技术路线达成目的;无论是借助第三方计算节点还是依托在线服务提供商均能有效解决实际工程难题[^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

程序猫A建仔

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

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

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

打赏作者

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

抵扣说明:

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

余额充值