网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
09月03日漏签0天
delphi吧 关注:17,476贴子:81,701
  • 看贴

  • 图片

  • 吧主推荐

  • 视频

  • 游戏

  • 4回复贴,共1页
<<返回delphi吧
>0< 加载中...

关于通过GPRS的TCP/IP 与单片机的 通讯

  • 只看楼主
  • 收藏

  • 回复
  • 暗血_狼
  • 初级粉丝
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
我用INDY做    server 来监听GPRS 模块的连接,用的是TCP/IP协议,可是连接上以后,接收数据的部分出现了问题,我用 integer 收数据,是很大的数,或者是负数!
理论上讲,发送的数据应该是    68 00 00 00 01 68 。。。这类的数据,用串口通讯时候就是用 buffer 来完成的,可是到这里我不知道该怎么接收和发送了!有做过类似东西的朋友还请指点一下,谢了



  • renzhumin2
  • 初级粉丝
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
你先做个简单的TCP/IP通讯的例子.先搞明白TCP/IP通讯的收发数据.你这个GPRS模块就是一个TPC/IP的client,你做这个SERVER的时候,你就认为这个模块是一个client.


2025-09-03 19:10:04
广告
不感兴趣
开通SVIP免广告
  • 暗血_狼
  • 初级粉丝
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
回复:2楼
这个我知道。。。。但是接收数据时候是有数据类型的。。不对应显示的不对


  • renzhumin2
  • 初级粉丝
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
你管他什么显示方式,你要明白hex,ascii,他们在内存中都是同一个指针.搞数据通讯的,搞不明白16进制与ascii,那.....
//16进制转数组
procedure HexToPbyte(var vBuf:array of byte;HexStr : String);
var
     I:Integer;
begin
     for I := 1 to Length(HexStr)div 2 do
       vBuf[i-1]:= StrToInt('$'+Copy(hexStr,i*2-1,2));
end;
//数组转16进制
function PbyteToHex(mbuf:array of byte;stlen:word):string;
var
     I:Integer;
begin
     Result:='';
     for I := 0 to stlen-1 do
     begin
         if mbuf[i]=0 then
             Result:=Result+'00'
         else
         Result:=Result+IntToHex(mbuf[I],2);
     end;
end;



  • 暗血_狼
  • 初级粉丝
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
回复:4楼
谢了,圣诞节快乐,但是这个我会转换,我想问的是 indyserver 发送和接收用哪个方法,用 athread.Connection.ReadBuffer(); ??


登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 4回复贴,共1页
<<返回delphi吧
分享到:
©2025 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示