| 请问:如何通过串口发送DS18B20数据至电脑?求助,上位机通过C#接收并且处理数据 我当前MCU的主要代码如下: void UART_Init() { SM0 = 0; SM1 = 1;//串口工作方式1,8位UART波特率可变 TR1 = 1;//启动定时器1 TMOD |= 0x20;//定时器1,工作模式2 8位自动重装 TH1 = 0xfd; TL1 = 0xfd;//设置比特率9600 } void main() { uint i; uchar L, M; UART_Init(); //串口初始化 TI = 1;//使用printf()puts()前都应软件置位TI = 1; ds_init();//初始化DS18B20 write_byte(0xcc);//发送跳跃ROM指令 write_byte(0x44);//发送温度转换指令 Delay_Ms(1000); while(1) { ds_init();//初始化DS18B20 write_byte(0xcc);//发送跳跃ROM指令 write_byte(0x44);//发送温度转换指令 ds_init();//初始化DS18B20 write_byte(0xcc);//发送跳跃ROM指令 write_byte(0xbe);//读取DS18B20暂存器值 L = read_byte(); M = read_byte(); i = M; x[0]=M; x[1]=L; i <<= 8; i |= L; i = i * 0.625 + 0.5; Display(i); //数码管显像 SBUF=M; while(TI==0); TI=0; SBUF=L; while(TI==0); TI=0; } } |
如何通过串口发送DS18B20数据至电脑?
关键词: DS18B20 串口 上位机
10楼
//此处代码怎么可以设置定时发送
SBUF=M;
while(TI==0);
TI=0;
SBUF=L;
while(TI==0);
TI=0;
1、如果能读到数据,那么需要另外一个串口上,先直接发送看看。
数据读取到一个数组里,然后循环发送下看看。
实际上,需要开一个中断, 然后监控上面数组是否有数据,有就发送。
回复
我要赚赏金打赏帖 |
|
|---|---|
| 一种有效完成脚本程序测试的方法被打赏¥28元 | |
| WorkBuddy搭配SolidCraft给开发板做两件式外壳被打赏¥33元 | |
| 开箱一块k230被打赏¥33元 | |
| 【瑞萨RA8D1测评】RA8D1+lwIP网络验证与TCPOTA的实验记录被打赏¥33元 | |
| 28BYJ-48机械臂实现人脸跟随被打赏¥24元 | |
| 基于RK3506B的片温识读功能的实现被打赏¥25元 | |
| 【瑞萨RA8D1测评】基于FreeRTOS的lvgl移植教程被打赏¥29元 | |
| 电子价签墨水屏开发被打赏¥35元 | |
| 【Ozone】RTT 打印终端使用被打赏¥29元 | |
| BMS保护板绝缘检测功能-不平衡电桥技术绝缘电阻检测设计与实现被打赏¥34元 | |
我要赚赏金
