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

專注電子技術學習與研究
當前位置:單片機教程網 >> STM32 >> 瀏覽文章

單片機關于關于圖像傳輸問題

作者:龍麗嫦   來源:本站原創   點擊數:  更新時間:2014年05月07日   【字體:
     關于單片機關于關于圖像傳輸的幾個問題。雖然是單片機,但是也希望能給在使用4412開發板的朋友們一些思路。
 
 
      問題1:正在嘗試用STM32控制GPRS發送數據到互聯網。目前已經可以發送簡單數據,并在服務器接收。由于GPRS模塊每次最多發送1K的內容,所以,在發送靜態圖像時遇到問題。使用透傳的話,如何將一個5K左右的圖像發送出去呢?現在手頭有一個小于5K圖像做測試,為16進制的數組。
主函數中有:send_gprs_data(pic[4051],1);
調用函數 void send_grps_data(char * bufp, unsigned int count){}
pic[4051]就是圖片數組,16進制。定義是u8 pic[]={}
編譯時報錯:
main.c(106): error:  #167: argument of type "u8" is incompatible with parameter of type "char *"
 
      原因:
send_gprs_data((char*)pic,1);
1參數類型不對,需要強制轉換
2參數是個數組的話后面不能帶[4051]
 
      問題2:單步調試,一次可以發送數組中一個字節。我的困惑是,1,原先的pic[]數組內裝的16進制數據,每次發送的是AE,73這樣的數據,我在接收 端是否還要進行轉換?2,在發送控制部分,我用的是strlen(),但是有些人說要用sizeof(),這里,在強制轉換(char*)pic后,是否 在末尾添加了"\0",用strlen()行嗎?3,我在查看pic.c文件時,發現里面有好多空格,有8058個16進制數據(自己數的),但是用 strlen()得出結果4516。
 
      原因:每次發送的是AE,73這樣的數據,在接收端不需要進行轉換,進制不是問題。
不能在末尾添加了"\0"。strlen原理是查找結束符來判斷長度的,你需要發送的是"數據"不是字符串,所以需要用sizeof強制轉換不會改變"數值"僅僅改變類型,所以不會末尾給你添加"\0"
關閉窗口
主站蜘蛛池模板: 毛片久久久 | 日韩精品一区二区三区 | 三级在线视频 | 91不卡在线 | 国产极品车模吞精高潮呻吟 | 亚洲最大的成人网 | 久久男人| 欧美精品日韩 | 国产91久久精品一区二区 | 国产精品久久久久久久白浊 | 亚洲精品乱码久久久久久按摩 | 日韩视频免费在线 | 欧美一区二区三区在线 | 在线观看第一页 | 久久网站免费视频 | 99精品亚洲国产精品久久不卡 | 免费观看成人鲁鲁鲁鲁鲁视频 | 色狠狠一区 | 国产午夜三级一区二区三 | 91新视频| 天堂一区二区三区 | 精品久久久999| 五月激情综合 | 99tv| 91pao对白在线播放 | 91久久精品一区二区二区 | 国内自拍偷拍 | 免费av直接看 | 国产一二三区免费视频 | 国产精品一区二区在线观看 | 狠狠色综合网站久久久久久久 | 精品九九 | 欧美一区二区三区视频在线观看 | 久久在线精品 | 亚洲黄色在线 | 日韩一级一区 | 欧美激情精品久久久久久变态 | 狠狠爱一区二区三区 | 国产免费一区二区三区 | 欧美精品一区二区在线观看 | 中文字幕高清一区 |