单片机连接MySQL数据库 |
您所在的位置:网站首页 › 数据库怎么上传 › 单片机连接MySQL数据库 |
功能介绍: stm32单片机通过串口将温度数据在上位机软件中显示,上位机软件可以将温度数据保存在mysql数据库中,同时能对数据进行增删改查。 前期准备: 1、安装Visual Stdio 2013 2、安装MySQL数据库 安装教程 3、下载、安装mysql odbc驱动,mysql-connector-odbc-8.0.28-win32.msi 硬件准备: 1、单片机,32、51都行 2、温度传感器DS18B20 3、USB转TTL模块,保证能够实现串口通信 4、ST-LINK下载器,用于下载32单片机程序 功能演示: 上位机软件 代码实现: 32代码: main.c文件 #include "system.h" #include "SysTick.h" #include "led.h" #include "usart.h" #include "ds18b20.h" int main() { float temper; SysTick_Init(72); NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); //中断优先级分组 分2组 LED_Init(); USART1_Init(9600); while(DS18B20_Init()) { printf("DS18B20检测失败,请插好!\r\n"); delay_ms(500); } printf("DS18B20检测成功!\r\n"); while(1) { temper=DS18B20_GetTemperture(); printf("Temp:%.1fC\r\n",temper); delay_ms(1500); } }上位机软件代码: 关注博主,并且有礼貌地问我拿就行了。 关于数据库的一些操作: 使用管理员身份运行cmd命令 e: //我的数据库在e盘 //把当前路径修改为:…\mysql-8.0.18-winx64\bin。 cd E:\DataBase\mysql-8.0.25-winx64\bin //启动服务,名字是localmysql net start localmysql //登陆数据库,用户名root mysql -u root -p //输入密码 123456 // 新建数据库uartdb_csdn create database uartdb_csdn; //连接数据库uartdb_csdn use uartdb_csdn; //新建数据表 create table mytable(id int primary key, data varchar(10), time varchar(30)); //插入数据 insert into mytable(id,data,time) values(1,26, '2022-3-26 20:06:30'); //查看mytable表中所有数据 select * from mytable; //删除mytable表 drop table mytable; //现在不删通过以上操作,我们就创建了一个mytable的数据表,接下来就是通过上位机软件将温度数据存储在这张表中。 修改上位机代码: 拿到我的代码后,如果想要将别的数据存储到自己的数据库,可以这样操作。 1、先移除/删除mytable的源文件和头文件 继续注释掉/删掉重复的 在ThreadComm.cpp文件中从81行到93行就是将串口发送来温度数据截取出来,然后将数据赋值给gData这个全局变量,因为再32代码中有printf(“Temp:%.1fC\r\n”,temper);故我们可以定位到温度数据。 完毕 需要注意的几点: 1、我的串口是COM3,你们的串口号不一定是这个 2、数据表的名字最好用mytable,不然得多改几处地方 为了让别人的电脑也可以运行我们的上位机软件,可以这样做: 1、选中项目名称-》右击-》配置属性-》常规-》MFC的使用-》在静态库中使用MFC-》应用 2、C/C+±》代码生成-》运行库-》多线程(/MT)-》确定 鉴于博主比较忙,需要代码的请自取 链接:https://pan.baidu.com/s/1nzRv5vD_WZZkSZh1mrfDUA?pwd=q69t 提取码:q69t |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |