欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1086|回復(fù): 10
收起左側(cè)

如何將變量值轉(zhuǎn)字符串形式在上位機(jī)顯示?

[復(fù)制鏈接]
ID:322939 發(fā)表于 2024-12-19 20:54 | 顯示全部樓層 |閱讀模式
在不使用printf()函數(shù)情況下,用SBUF形式將變量值轉(zhuǎn)字符串在上位機(jī)顯示?第一次使用接觸,請各位大佬們指點(diǎn)下:例如:將ADC讀取的數(shù)字值在串口發(fā)上位機(jī)顯示
     unsigned int  temp=0;
    unsigned char sum=123;
      temp=ADC_read();
     SBUF=sum;
    while(!TI);
    TI=0;
    DelayMs(1000);
這樣在上位機(jī)顯示HEX格式“FB”,而不是123



回復(fù)

使用道具 舉報

ID:1109793 發(fā)表于 2024-12-20 07:30 | 顯示全部樓層
直接發(fā)個INT,讓上位機(jī)自己處理不行嗎?
回復(fù)

使用道具 舉報

ID:277550 發(fā)表于 2024-12-20 09:02 | 顯示全部樓層
上位機(jī)是電腦,功能強(qiáng)大,再將hex轉(zhuǎn)換成dec,就是了,,,,每種編程語言都可做到的,如java Integer.parseInt("hex string", 16)
回復(fù)

使用道具 舉報

ID:192020 發(fā)表于 2024-12-20 09:11 | 顯示全部樓層
轉(zhuǎn)換一下再打印,例如打印變量是123,轉(zhuǎn)字符串就要串口發(fā)3個數(shù)值'1''2''3'
    SBUF='1';while(!TI);TI=0;
    SBUF='2';while(!TI);TI=0;
    SBUF='3';while(!TI);TI=0;
也就是寫個函數(shù)把變量的百位十位個位提取出來轉(zhuǎn)ascii后再依次發(fā)送
回復(fù)

使用道具 舉報

ID:69038 發(fā)表于 2024-12-20 10:11 | 顯示全部樓層
mcu處理一些本地?cái)?shù)據(jù)是可以的,但上位機(jī)處理數(shù)據(jù)能力遠(yuǎn)勝M(fèi)CU,所以一些數(shù)值轉(zhuǎn)換還是放在上位機(jī)這邊更好。特別是與MCU已經(jīng)斷聯(lián)的數(shù)據(jù)。
回復(fù)

使用道具 舉報

ID:322939 發(fā)表于 2024-12-20 14:04 | 顯示全部樓層
有的是用sprintf函數(shù)轉(zhuǎn)成字符串后再從串口發(fā)送,如:unsigned char str[5];
unsigned char sum=123;
sprintf(str,"%d\r\n,sum);
sedstring(str);//從串口發(fā)送上位機(jī)
回復(fù)

使用道具 舉報

ID:322939 發(fā)表于 2024-12-20 20:40 | 顯示全部樓層

void UartSend(char dat)
{
    while (!TI);
    TI = 0;
    SBUF = dat/100;
         while (!TI);
    TI = 0;
        SBUF=dat/10%10;
         while (!TI);
    TI = 0;
        SBUF=dat%10;
}
UartSend(sum);
回復(fù)

使用道具 舉報

ID:322939 發(fā)表于 2024-12-21 08:05 | 顯示全部樓層
上位機(jī)顯示不對
回復(fù)

使用道具 舉報

ID:401564 發(fā)表于 2024-12-21 09:14 | 顯示全部樓層
單片機(jī)如果片上資源多的話
sprintf是相對好用的函數(shù)
對于要發(fā)送給上位機(jī)的數(shù)據(jù),是要處理一下的,要么是用協(xié)議,要么是自己加一個起始和結(jié)束符,不然,數(shù)據(jù)容易亂
直接發(fā)8位變量值是簡單,但如果是浮點(diǎn)型呢?16位數(shù)據(jù)燈呢?所以,還是用sprintf相對好點(diǎn)
回復(fù)

使用道具 舉報

ID:322939 發(fā)表于 2024-12-21 09:38 | 顯示全部樓層
串口助手顯示會亂碼
回復(fù)

使用道具 舉報

ID:322939 發(fā)表于 2024-12-21 20:29 | 顯示全部樓層
已經(jīng)弄好,多謝各位!
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表