久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3450|回復(fù): 5
打印 上一主題 下一主題
收起左側(cè)

C語言長整型變量long轉(zhuǎn)字符串發(fā)送問題

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:398219 發(fā)表于 2021-9-1 08:00 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
C語言定義長整型變量unsigned long count=123456;
我想通過串口,將這個(gè)變量上傳服務(wù)器,請問如何將這個(gè)long變量轉(zhuǎn)成字符串通過串口發(fā)送呢,程序中發(fā)送命令在POST(),請各位大神幫忙看看。

void POST(void)//POST數(shù)據(jù)函數(shù)
{
        int dataLen;
        uchar postData[150];
        char strLen[3];
        char strtemp[20];
        sprintf(strtemp,"%d",count);
        sprintf(postData,"uid=%s&topic=%s&msg=#%0x#\r\n",Uid,Topic,strtemp);
        dataLen = strlen(postData);             //計(jì)算數(shù)據(jù)長度
        sprintf(strLen,"%d",dataLen);                     //int類型轉(zhuǎn)char


        ESP8266_Set("AT+CIPMODE=1"); //開啟透明傳輸模式
        ms_delay(1000);
        ESP8266_Set("AT+CIPSTART=\"TCP\",\"api.bemfa點(diǎn)com\",80");  // 連接服務(wù)器和端口
        ms_delay(1000);
        ESP8266_Set("AT+CIPSEND"); //進(jìn)入透傳模式,下面發(fā)的都會無條件傳輸
        ms_delay(1000);
        ESP8266_Set_Only("POST /api/device/v1/data/1/ HTTP/1.1\r\nHost: api.bemfa點(diǎn)com\r\nContent-Type: application/x-www-form-        urlencoded\r\nConnection:close\r\nContent-Length:");//??device? ??sensor?
        ESP8266_Set(strLen);//數(shù)據(jù)長度(postData數(shù)據(jù)長度),一定要準(zhǔn)確
        ESP8266_Set("");//回車(發(fā)完數(shù)據(jù)長度后,有回車,不懂的百度http post 格式)
        ESP8266_Set(postData);//發(fā)送數(shù)據(jù)        
        ms_delay(2000);
        ESP8266_Set("+++"); //
        memset(strLen,'\0',3);  //重置數(shù)組
        memset(postData,'\0',sizeof postData);//重置數(shù)組

}

V3.1 - 測試無線通訊.rar

82.52 KB, 下載次數(shù): 3

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:624769 發(fā)表于 2021-9-1 19:04 | 只看該作者
傳數(shù)據(jù)給服務(wù)器,最好不要轉(zhuǎn)字符串,要轉(zhuǎn)也是服務(wù)器收到后,服務(wù)器端轉(zhuǎn),不知道現(xiàn)在編程都是什么思路,我們以前但凡牽涉到傳輸,恨不得把4個(gè)字節(jié)拼成1個(gè)字節(jié)傳,現(xiàn)在倒好各個(gè)都喜歡把一個(gè)字節(jié)拆成十幾個(gè)來傳.

Long 型 32位數(shù)據(jù),最長10位10進(jìn)制,最直接的辦法就是
SendByte_uart((count / 1000000000)+'0');
SendByte_uart(((count % 1000000000) / 100000000)+'0');
SendByte_uart(((count % 100000000) / 10000000)+'0');
SendByte_uart(((count % 10000000) / 1000000)+'0');
SendByte_uart(((count % 1000000) / 100000)+'0');
SendByte_uart(((count % 100000) / 10000)+'0');
SendByte_uart(((count % 10000) / 1000)+'0');
SendByte_uart(((count % 1000) / 100)+'0');
SendByte_uart(((count % 100) / 10)+'0');
SendByte_uart((count % 10)+'0');

這樣最直接,你要是覺得沒有For循環(huán)不夠高大上,可以做個(gè)循環(huán),每次求出與數(shù)存為下一次的被除數(shù),如果你覺得首位不要顯示0,可以加一個(gè)判斷,比如:
if((count / 1000000000) != 0)  SendByte_uart((count / 1000000000)+'0');
恩,差不多就是這樣。

評分

參與人數(shù) 1黑幣 +30 收起 理由
admin + 30 回帖助人的獎(jiǎng)勵(lì)!

查看全部評分

回復(fù)

使用道具 舉報(bào)

板凳
ID:401564 發(fā)表于 2021-9-1 22:04 | 只看該作者
unsigned long count=123456;
unsigned char,a;
char strtemp[20];
sprintf(strtemp,"%.0f",count);        //"%.0f"的0f表示小數(shù)點(diǎn)后再顯示位數(shù),不顯示小數(shù)就是0f,方便處理浮點(diǎn)型
                for(a=0;k[a]!='\0';a++)                          //字符串以'\0'結(jié)束,
                        {       
                                發(fā)送函數(shù); 這個(gè)實(shí)際上就發(fā)送了'0','2','3','4','5' 記錄了發(fā)送幾個(gè)字符                       
                        }
回復(fù)

使用道具 舉報(bào)

地板
ID:750420 發(fā)表于 2021-9-2 15:14 | 只看該作者
同意二樓說法,使用sprintf函數(shù)進(jìn)行發(fā)送,基本形式為
char chuan[100];
long a;
sprintf(chuan,"long:%ld",a);
樓主可以嘗試用下看看chuan數(shù)組內(nèi)的內(nèi)容
回復(fù)

使用道具 舉報(bào)

5#
ID:839835 發(fā)表于 2021-9-3 17:03 | 只看該作者
本帖最后由 xunzhaod 于 2021-9-3 17:10 編輯

直接用指針不就行啦?
char (*p)[4] =(char(*)[4] ) &count;
回復(fù)

使用道具 舉報(bào)

6#
ID:398219 發(fā)表于 2021-9-9 14:20 | 只看該作者
謝謝大家的分享,咨詢了管理員,只改了一個(gè)字母就行啦,可以上傳并被服務(wù)器識別。謝謝大家
回復(fù)

使用道具 舉報(bào)

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

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 伊人免费在线观看 | 亚洲欧美国产毛片在线 | 久久精品久久久久久 | 91在线精品秘密一区二区 | 久久久久久黄 | 欧美三级在线 | 国产精品视频网站 | 毛片在线免费 | 精品一区二区三区四区五区 | 亚洲国产精品久久久久秋霞不卡 | 国产精品美女久久久久aⅴ国产馆 | 中文字幕日韩一区 | www.99热| 日韩中文字幕一区 | 国产99久久精品一区二区300 | 精品中文字幕在线观看 | 久久国产精品网站 | 色桃网 | 成年免费大片黄在线观看岛国 | 欧美日韩国产在线观看 | 久久av网站 | 91精品国产高清久久久久久久久 | 91中文在线观看 | 国产ts人妖系列高潮 | 香蕉久久久久久 | 91一区二区 | 亚洲看片网站 | 男人av在线播放 | 影音av | 日韩国产欧美一区 | 国产最新精品视频 | 香蕉91| 精品国产一级 | 超碰在线人人 | 野狼在线社区2017入口 | 欧美日本亚洲 | 亚洲一区二区三区视频 | 欧美韩一区二区三区 | 国产精品久久久久一区二区 | 黄色毛片在线观看 | 91精品国产综合久久久久蜜臀 |