| 请问:如何通过串口发送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、如果能读到数据,那么需要另外一个串口上,先直接发送看看。
数据读取到一个数组里,然后循环发送下看看。
实际上,需要开一个中断, 然后监控上面数组是否有数据,有就发送。
回复
我要赚赏金打赏帖 |
|
|---|---|
| 基于ArduinoUNO开发板的AT24C02读写测试被打赏¥16元 | |
| TCS3472S传感器及其色彩检测被打赏¥19元 | |
| 【S32DS】S32K3 RTD7.0.1 HSE 组件配置报错问题解决被打赏¥27元 | |
| 【S32K3XX】MCME 启动 CORE1被打赏¥23元 | |
| AG32VH407下温度大气压传感器及其检测被打赏¥20元 | |
| AG32VH407下光照强度传感器BH1750及其检测被打赏¥22元 | |
| AT32VH407下使用温湿度传感器DHT22进行检测被打赏¥20元 | |
| DIY一个婴儿澡盆温度计被打赏¥34元 | |
| 【FreeRtos】FreeRtos+MPU region 配置规则被打赏¥23元 | |
| 【分享开发笔记,赚取电动螺丝刀】三分钟快速上手驱动墨水屏(ArduinoIDE)被打赏¥28元 | |
我要赚赏金
