搜索
bottom↓
回复: 77

关于51控制tc35的一些问题,希望好心大侠帮忙看看

[复制链接]

出0入0汤圆

发表于 2012-5-10 23:26:17 | 显示全部楼层 |阅读模式
tc35板子是按这原理图连的.最后调试能进入;联网模式了。但是一直发不出短信。卡没有欠费。然后串口通信的线也保证对了。去论坛一些地方看。都说是软件原因。。但是我感觉软件没问题。想请问各大侠。还有其他的硬件原因吗?希望得到您们的指点。。谢谢

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

阿莫论坛20周年了!感谢大家的支持与爱护!!

曾经有一段真挚的爱情摆在我的面前,我没有珍惜,现在想起来,还好我没有珍惜……

出0入0汤圆

发表于 2012-5-10 23:30:25 | 显示全部楼层
不懂 围观一下 呵呵

出0入0汤圆

 楼主| 发表于 2012-5-11 09:34:35 | 显示全部楼层
坐等高手啊

出0入0汤圆

发表于 2012-5-11 09:39:32 | 显示全部楼层
问题肯定存在的,那用于数据流控制的引脚可以短接处理

出0入0汤圆

发表于 2012-5-11 09:40:55 | 显示全部楼层
一个简单的办法,把所有的AT指令和收到的对应回复都打印出来,看看那一条和应得的不一样

出0入0汤圆

发表于 2012-5-11 09:44:33 | 显示全部楼层
可以看下我发的资料。MODEM的电平转换我没有用232芯片,用的是什么忘记了。需要把串口的引脚都接上。要么就在板子上把对应的引脚短接

出0入0汤圆

发表于 2012-5-11 09:59:15 | 显示全部楼层
发AT指令有反应吗?要是不打印回来OK或AT就是串口不通呗,看你原理图232与TC35接线反了哦

出0入0汤圆

发表于 2012-5-11 10:03:18 | 显示全部楼层
本帖最后由 hzpyj 于 2012-5-11 10:05 编辑
centrineer 发表于 2012-5-11 09:59
发AT指令有反应吗?要是不打印回来OK或AT就是串口不通呗,看你原理图232与TC35接线反了哦 ...


楼上的不了解吗?模块TXD就接RS232 TXD

出0入0汤圆

发表于 2012-5-11 10:09:58 | 显示全部楼层
hzpyj 发表于 2012-5-11 10:03
楼上的不了解吗?模块TXD就接RS232 TXD

嗯,你接的是R1 OUT啊,不是IN

出0入0汤圆

 楼主| 发表于 2012-5-11 12:17:35 | 显示全部楼层
hzpyj 发表于 2012-5-11 09:44
可以看下我发的资料。MODEM的电平转换我没有用232芯片,用的是什么忘记了。需要把串口的引脚都接上。要么就 ...

我也是直接用单片机和tc35相连的。tc35用调试软件发现at指令都对了。单片机和tc35连还需要注意什么问题吗。也共地了。。

出0入0汤圆

 楼主| 发表于 2012-5-11 12:18:53 | 显示全部楼层
centrineer 发表于 2012-5-11 09:59
发AT指令有反应吗?要是不打印回来OK或AT就是串口不通呗,看你原理图232与TC35接线反了哦 ...

232是和电脑通信调试用的咯。我的是用单片机直接和模块直接连的。。也共地了额,您看还有其他原因吗

出0入0汤圆

 楼主| 发表于 2012-5-11 12:21:19 | 显示全部楼层
hzpyj 发表于 2012-5-11 09:44
可以看下我发的资料。MODEM的电平转换我没有用232芯片,用的是什么忘记了。需要把串口的引脚都接上。要么就 ...

去哪看您发的资料呢,我好像现在没有权限吧

出0入0汤圆

发表于 2012-5-11 12:26:58 | 显示全部楼层
我的名字叫洪辉 发表于 2012-5-11 12:17
我也是直接用单片机和tc35相连的。tc35用调试软件发现at指令都对了。单片机和tc35连还需要注意什么问题吗 ...

单片机和tc35也是交叉线连接

出0入0汤圆

发表于 2012-5-11 12:29:25 | 显示全部楼层
通讯时,要把模块当modem使用,所以要将硬件的数据流控制引脚处理下,这样更稳定。
模块与电脑的通讯 我想应该成功了。

单片机与模块的通讯可以通过串口监听的方式,确认下,单片机的指令是否正常,模块的反馈是否正常

出0入0汤圆

发表于 2012-5-11 12:29:48 | 显示全部楼层
模块是否设置成波特率自适应

出0入0汤圆

发表于 2012-5-11 12:32:35 | 显示全部楼层
老论坛的信息下载不了了

出0入0汤圆

发表于 2012-5-11 12:33:20 | 显示全部楼层
TC35实际是比较好弄的 电平也不须转换就可与5V单片机连了

出0入0汤圆

发表于 2012-5-11 12:37:37 | 显示全部楼层
IGT是如何控制的?

出0入0汤圆

发表于 2012-5-11 12:37:58 | 显示全部楼层
在单片机通讯端增加上拉

出0入0汤圆

发表于 2012-5-11 12:41:37 | 显示全部楼层
因为单位不能用protell .刚才看了下板子 ,我是将LS07接在单片机与模块间的. 当时可能是单片机的驱动不足导致模块无响应, 时间太久了,想不起来了

出0入0汤圆

 楼主| 发表于 2012-5-11 12:44:34 | 显示全部楼层
hzpyj 发表于 2012-5-11 12:41
因为单位不能用protell .刚才看了下板子 ,我是将LS07接在单片机与模块间的. 当时可能是单片机的驱动不足导 ...

您太热情了,谢谢您。我再根据您说的情况再研究一下。再告诉您。。

出0入0汤圆

发表于 2012-5-11 12:46:18 | 显示全部楼层
加了07肯定是单片机的问题 ,所以你们也查下,先加上拉,看下电平,如果还低,就需加驱动

出0入0汤圆

 楼主| 发表于 2012-5-11 19:29:48 | 显示全部楼层
hzpyj 发表于 2012-5-11 12:29
通讯时,要把模块当modem使用,所以要将硬件的数据流控制引脚处理下,这样更稳定。
模块与电脑的通讯 我想 ...

您好。您说的将数据流控制引脚短接是怎么个回事啊?能详细说下吗

出0入0汤圆

 楼主| 发表于 2012-5-11 21:23:10 | 显示全部楼层
hzpyj 发表于 2012-5-11 12:37
在单片机通讯端增加上拉




您看下。这样子单片机和tc35直接连没什么问题吧

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2012-5-11 21:42:00 | 显示全部楼层
我的名字叫洪辉 发表于 2012-5-11 21:23
您看下。这样子单片机和tc35直接连没什么问题吧

这是个电平转换,看电路似乎没有问题,但建议看下到单片机的电平电压到底是多少。
电平不对依然不行,这个问题我很注意的。
我采用的也类似,不过是单片机5v到模块3.3V

出0入0汤圆

 楼主| 发表于 2012-5-11 21:44:48 | 显示全部楼层
hzpyj 发表于 2012-5-11 21:42
这是个电平转换,看电路似乎没有问题,但建议看下到单片机的电平电压到底是多少。
电平不对依然不行,这 ...

单片机就是txd和rxd都是4.07v...然后tc35的rxd和txd是3.5v.  您看有问题吗?如果有问题能有啥措施?

出0入0汤圆

发表于 2012-5-11 21:57:37 | 显示全部楼层
我的名字叫洪辉 发表于 2012-5-11 19:29
您好。您说的将数据流控制引脚短接是怎么个回事啊?能详细说下吗



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2012-5-11 21:59:00 | 显示全部楼层
DTR0  DSR0  CTS0 RTS0

出0入0汤圆

 楼主| 发表于 2012-5-11 22:06:45 | 显示全部楼层
hzpyj 发表于 2012-5-11 21:57

单片机就是txd和rxd都是4.07v...然后tc35的rxd和txd是3.5v.  您看有问题吗?如果有问题能有啥措施?

出0入0汤圆

发表于 2012-5-11 22:08:26 | 显示全部楼层
本帖最后由 hzpyj 于 2012-5-11 22:18 编辑

搞错了

出0入0汤圆

 楼主| 发表于 2012-5-11 22:11:24 | 显示全部楼层
hzpyj 发表于 2012-5-11 22:08
tc35是5v电平的 你完蛋了,datasheet也没看懂

我看到很多人都说不是5v啊。。是2点多将近3v。。而且我用5v也不行哦

出0入0汤圆

发表于 2012-5-11 22:18:16 | 显示全部楼层



贴图实在

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2012-5-11 22:27:09 | 显示全部楼层
其中因为要用到04所以就把07换04了

出0入0汤圆

发表于 2012-5-11 22:31:15 | 显示全部楼层
看下低电平跌落情况,波特率都是正常的话,除了查它就没招了。
运气不好的可以看到单片机低电平跌落情况不好,这个问题我碰到过。

出0入0汤圆

 楼主| 发表于 2012-5-11 23:42:58 | 显示全部楼层
hzpyj 发表于 2012-5-11 22:31
看下低电平跌落情况,波特率都是正常的话,除了查它就没招了。
运气不好的可以看到单片机低电平跌落情况不 ...

总结来说,就是单片机t线和r线加个驱动是吧

出0入0汤圆

发表于 2012-5-12 08:19:47 | 显示全部楼层
本帖最后由 hzpyj 于 2012-5-12 08:21 编辑

你采用的是分压的方式进行电平转换,电平的高低都与分压电阻很有关系,电阻的误差直接会导致电平不符合要求,而导致通讯失败,明白不
所以我一直要求你查下电平的情况

出0入0汤圆

 楼主| 发表于 2012-5-12 21:48:25 | 显示全部楼层
hzpyj 发表于 2012-5-12 08:19
你采用的是分压的方式进行电平转换,电平的高低都与分压电阻很有关系,电阻的误差直接会导致电平不符合要求 ...

我们查了啊。。没发射时单片机就是txd和rxd都是4.07v...然后tc35的rxd和txd是3.5v。。但是一发射的时候。单片机的txd就会降到0点几伏。那什么结果符合啊。。。应该采取什么措施啊

出0入0汤圆

 楼主| 发表于 2012-5-12 21:48:46 | 显示全部楼层
hzpyj 发表于 2012-5-12 08:19
你采用的是分压的方式进行电平转换,电平的高低都与分压电阻很有关系,电阻的误差直接会导致电平不符合要求 ...

麻烦您了。。万分感激

出0入0汤圆

发表于 2012-5-12 23:28:58 | 显示全部楼层
我是直接用PC的COM口调试的。

出0入0汤圆

 楼主| 发表于 2012-5-13 08:57:04 | 显示全部楼层
lu0718 发表于 2012-5-12 23:28
我是直接用PC的COM口调试的。

我今天用pc给模块发命令。结果发现握手成功,也能能使它打电话。却不能使它发短信。。

出0入0汤圆

 楼主| 发表于 2012-5-13 10:18:23 | 显示全部楼层
lu0718 发表于 2012-5-12 23:28
我是直接用PC的COM口调试的。

发送短信时老是回错误。我后面加ctrl_z了。。另外我直接按ctrl_z是快捷键撤销的功能。所以我人为后面给他加ctrl_z了。。希望大家帮帮忙

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

 楼主| 发表于 2012-5-13 10:19:19 | 显示全部楼层
我的名字叫洪辉 发表于 2012-5-12 21:48
麻烦您了。。万分感激

发送短信时老是回错误。我后面加ctrl_z了。。另外我直接按ctrl_z是快捷键撤销的功能。所以我人为后面给他加ctrl_z了。。希望大家帮帮忙

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2012-5-13 10:42:02 | 显示全部楼层
发短信前需用AT命令指定信息格式才行

出0入0汤圆

发表于 2012-5-13 10:44:06 | 显示全部楼层
我怎么没那么多问题?前期的功课做足没有

出0入0汤圆

发表于 2012-5-13 10:47:17 | 显示全部楼层
你可以把单片机的发送接出来,转到pc上看下,命令发送情况,如果没有,但确定单片机在发信息,就把RXD转过来看下.
首先先确定单片机的发送端与模块的连接是否正常.
最初我也是乱在那,TXD接TXD,晕的

出0入0汤圆

发表于 2012-5-13 10:52:39 | 显示全部楼层
我给你截张图就会发现端倪了

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

 楼主| 发表于 2012-5-13 10:55:37 | 显示全部楼层
hzpyj 发表于 2012-5-13 10:42
发短信前需用AT命令指定信息格式才行

指定了啊。text格式啊。。

出0入0汤圆

发表于 2012-5-13 10:57:00 | 显示全部楼层
uchar TransmitText(uchar *text)  
{
        uchar i=50,j=10;
        unsigned char *p;
//        Send_AT();
        if(TelNum[0] == 0)
                {
                        return 0;
                }
        nop();
        ReceDataClr(0x00);
        Conect_Led = 0;
        SendString("AT+CMGS=",sizeof("AT+CMGS=")-1);                                        //信息发送指令 AT+CMGS=""
        SendASC('"');
        SendString(TelNum,11);                                         //号码
        SendASC('"');
        SendASC(0x0d);                                                        //回车
        RxPoint=0;                                                                  //buffer指针清0
        while(i--)
        {
                delay_ms(200);               
                p=LookFor_Str(ReceData,">");                        //">"
                if(p!=0)                                                        //如果接受到 >  发送text
                {       
                        //i=strlen(text);
                        SendString(text,i);                                //发送短信内容
                        SendASC(0x1a);
                        SendASC('\r');                        //'\x1a'结束符(相当CTRL+Z) '\r'回车符

出0入0汤圆

发表于 2012-5-13 11:00:50 | 显示全部楼层
我猜你是这里有点问题,另外你最好把你的AT指令发送程序帖出来,大家才能帮你解决.

还有GSM模块最主要的就是AT指令,你在调试的时候用PC串口去监测AT的指令情况,看GSM有没有收到指令,如果有问题,你再把串口收到的数据贴出来,大家再帮你分析.

还有,一定要注意单片机的波特率.

我现在能想到的就是这些.看看对你有没有帮助.

出0入0汤圆

 楼主| 发表于 2012-5-13 11:15:36 | 显示全部楼层
cn520 发表于 2012-5-13 11:00
我猜你是这里有点问题,另外你最好把你的AT指令发送程序帖出来,大家才能帮你解决.

还有GSM模块最主要的就是 ...

#include "common.h"

char RxBuf[RxBuf_N]={0};                                        //定义串口接收数据缓冲区
uchar RxPoint;                                                                //Rx缓冲区指针
bit flag=0;                                                                        //用来等待发送信息结束后,接收TC35响应的标志
uchar PhoneNum[15]="+8615122930645";                //手机号码
const uchar *MsContent="I Love You !";                //短信内容


//查找字符串,在s中查找t
//返 回 值: s_temp(t在s中的位置)成功 ,0失败
char *LookFor_Str(uchar *s, uchar *t)
{
        uchar    *s_temp;      
        uchar    *m_temp;      
        uchar    *t_temp;     
        if (s == 0 ||t == 0) return 0;
        for (s_temp = s; *s_temp != '\0'; s_temp++)
        {
                m_temp = s_temp;
                for (t_temp = t; *t_temp == *m_temp; t_temp++, m_temp++);
                if (*t_temp == '\0') return s_temp;
        }
        return 0;
}


//发送"AT"联机指令,测试是否连接正确
void Send_AT(void)
{
        uchar *p;
        uchar i=10;
        while(i--)                                                                //测试10次,在某一次成功就退出
        {
                RxPoint=0;                                                        //buffer指针清0
                SendString("AT\r");                                        //发送AT回车
            ES=1;                                                            //必须中断 串口中断应许 等待应答"OK"
            //delay_ms(100);                                                //等待接受数据完成
                while(flag==0);
                flag=0;
                delay_ms(300);
            p=LookFor_Str(RxBuf,"OK");                   //接收到的数据存在RsBuf
            if(p!=0)                                                         //接收到"OK"
                {
                        PutStr(0,0,"GSM 模块正常  ");
                        delay_ms(1000);
                        break;
                }
                PutStr(0,0,"没检测到GSM 模块");
                delay_ms(500);
        }
}

//设置短信模式 1:text模式 0:PDU模式
//串口发送数组命令到TC35,AT+CMGF=1
void Set_Mode(uchar mode)
{
          uchar *p,i=10;
        while(i--)                                                                //测试10次,在某一次成功就退出
        {
                RxPoint=0;                                                        //buffer指针清0
                if(mode) SendString("AT+CMGF=1\r");        //设置短消息模式  1 TEXT
                else           SendString("AT+CMGF=0\r");        //设置短消息模式  PDU模式               
            ES=1;                                                            //必须中断 串口中断应许 等待应答"OK"
            //delay_ms(300);                                                //等待接受数据完成
                while(flag==0);
                flag=0;
                delay_ms(300);
            p=LookFor_Str(RxBuf,"OK");                   //接收到的数据存在RsBuf
            if(p!=0)                                                         //接收到"OK"
                {
                        PutStr(1,0,"短信模式:text");
                        delay_ms(1000);
                        break;
                }
                PutStr(1,0,"短信模式设置失败");
                delay_ms(500);
        }
}

//发送号码
void Send_PhoneNum(uchar *str)       
{
        uchar i=0;
        while(*str)                                                               
        {
                SendASC(*str) ;
                str++;
                i++;
                if(i==14) break;                                        //只发送14个
        }
}

//发送TEXT短信 AT+CMGS="+8615122930645"
//*dialnum 目的号码    *text短信内容
//返回:1 发送成功  0 发送失败               
uchar TransmitText(uchar *dialnum,uchar *text)  
{
        uchar i=10,j=10;
        uchar *p;
        while(i--)
        {
                RxPoint=0;                                                                  //buffer指针清0
                SendString("AT+CMGS=");                                        //信息发送指令 AT+CMGS="+8613760602242"
                SendASC('"');
                Send_PhoneNum(dialnum);                                 //号码
                SendASC('"');
                SendASC('\r');                                                        //回车
                while(flag==0);
                flag=0;
                delay_ms(300);
                p=LookFor_Str(RxBuf,">");                                //">"
                if(p!=0)                                                                        //如果接受到 >  发送text
                {       
                        RxPoint=0;                                                                  //清空接收缓冲区
                        SendString(text);                                                //发送短信内容
                        SendString("\x1a\r");                                        //'\x1a'结束符(相当CTRL+Z) '\r'回车符                                       
                        while(flag==0);
                        flag=0;
                        delay_ms(5000);                                                //这里要延时足够长时间,否则会读取错误
                        p=LookFor_Str(RxBuf,"OK");                        //查找OK
                        if(p!=0)                                                        //发送成功
                        {
                                PutStr(2,0,"To: ");
                                PutStr(2,2,dialnum+3);
                                PutStr(3,0,"发送成功 ^_^");
                                return 1;
                        }
                        else
                        {
                                PutStr(2,0,"发送失败");
                                delay_ms(1000);
                                PutStr(2,0,"正在重发");
                        }
                }
        }
        PutStr(2,0,"多次重发失败");
        return 0;
}

//完整的短信发送函数       
//dialnum:手机号码 text:短信内容
void Send_Message(uchar *dialnum,uchar *text)
{
        Send_AT();                                                        //发送AT
        Set_Mode(1);                                                //设置短信模式:text
        TransmitText(dialnum,text);        //设置
}


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

 楼主| 发表于 2012-5-13 11:16:19 | 显示全部楼层
cn520 发表于 2012-5-13 11:00
我猜你是这里有点问题,另外你最好把你的AT指令发送程序帖出来,大家才能帮你解决.

还有GSM模块最主要的就是 ...

谢谢您了啊。。。。。

出0入0汤圆

发表于 2012-5-13 11:39:15 | 显示全部楼层
你的号码前面不要用+86看看

出0入0汤圆

 楼主| 发表于 2012-5-13 12:21:27 | 显示全部楼层
cn520 发表于 2012-5-13 11:39
你的号码前面不要用+86看看

也还是一样啊。。。

出0入0汤圆

 楼主| 发表于 2012-5-13 12:26:46 | 显示全部楼层
cn520 发表于 2012-5-13 11:39
你的号码前面不要用+86看看

打电话的指令行,都能打通电话了,但是却发不出去短信。。

出0入0汤圆

发表于 2012-5-13 12:27:43 | 显示全部楼层
你上面图片的AT指令是PC发的还是MCU发的?

出0入0汤圆

发表于 2012-5-13 12:39:10 | 显示全部楼层
最后发0x1A/00D,

有十六进制方式发送

出0入0汤圆

发表于 2012-5-13 12:39:48 | 显示全部楼层
如果能打电话不能发短信肯定是发短信的指令出错了.

出0入0汤圆

 楼主| 发表于 2012-5-13 13:11:28 | 显示全部楼层
cn520 发表于 2012-5-13 12:39
最后发0x1A/00D,

有十六进制方式发送

是用pc发的。。内容为thank you.在输入手机号码后该怎么发。你把完整的内容都写出来。我照着发下咯

出0入0汤圆

发表于 2012-5-13 15:47:53 | 显示全部楼层
指令有误

出0入0汤圆

发表于 2012-5-13 15:53:47 | 显示全部楼层
最后以0x1A结束 非CTRL_Z

出0入0汤圆

发表于 2012-5-13 15:54:38 | 显示全部楼层
发送格式你得好好学习下

出0入0汤圆

发表于 2012-5-13 15:59:16 | 显示全部楼层
你用的是TXT格式 我用的是PDU格式,这是我使用TC35前的代码分析

短消息PDU数据模式
短消息的内容可以是中文或者其他字符,下面是对PDU 数据的分析。
由于SMS报文是以8bit字节序列传输的,因此当用户数据为十六进制数时,不需要编码可直接发送。但当用户数据是ASCII码序列时,需进行编码,将7bit的ASCII码值序列压缩成8bit
的字节序列。下面介绍ASCII码序列的编码过程

SMS信息        C        L        O        S        E
ASCII码值        43        4C        4F        53        45
二进制表示        100 0011        100 1100        100 1111        101 0011        100 0101
压缩码过程        0100 0011        1110 0110        0111 0011        0101 1010        0000 0100
目标字节串        43        E6        73        5A        04
SMS信息        O        P        E        N        1
ASCII码值        4F        50        45        4E        31
二进制表示        100 1111        101 0000        100 0101        100 1110        011 0001
压缩码过程        0100 1111        0110 1000        1101 0001        0001 1001        0000 0011
目标字节串        4F        68        D1        19        03
SMS信息        O        P        E        N        2
ASCII码值        4F        50        45        4E        32
二进制表示        100 1111        101 0000        100 0101        100 1110        0110010
压缩码过程        0100 1111        0110 1000        1101 0001        0010 1001        0000 0011
目标字节串        4F        68        D1        29        03
        O        P        E        N        3
目标字节串                                       

出0入0汤圆

发表于 2012-5-13 16:01:59 | 显示全部楼层
例:如向13912345678发送SMS信息‘CLOSE’,其过程如下:
        首先发送AT+CMGS=20<CR>
然后等待ASCII字符“>”。然后输入
> 0891 683108806105F0 11000D91 683119325476F8 000000 0543E6735A04 <ctrl-Z>

① 08=TON/NPI+SCA的长度,按字节计。
        91=TON/NPI
② 683108806105F0=SCA,此例中为绵阳地区服务中心号码8613800816500,编码方式为:每二位取反,奇数位补F
③ 11=8bit:MIT,RD,RPF,UDHI,RP,MMS,SRI
        00=MR(消息参考值)
        0D=目标SIM卡号码长度
        91=TON/NIP
④ 683119325476F8=目标SIM卡号码,此例中为8613912345678
⑤ 00=PID(协议ID)
        00=DCS(数据译码配置)
        00=VP(有效周期)
⑥ 05=用户数据长度(按字节计)
43E6735A04=用户数据’COLSE’
注意:<SCA>=①+⑵,<TPDU>=③+④+⑤+⑥

出0入0汤圆

发表于 2012-5-13 16:03:19 | 显示全部楼层
<ctrl-Z>用0x1a(16进制)

出0入0汤圆

发表于 2012-5-13 16:10:05 | 显示全部楼层
发个软件给你 你可以通过监听看到相应的握手信息及收发短信的通讯过程,在好好理解下发送短信的过程及代码

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2012-5-13 16:10:55 | 显示全部楼层
n年前 我的基础就是用这通讯软件对AT指令进行分析的

出0入0汤圆

发表于 2012-5-13 16:13:38 | 显示全部楼层
只要通讯正常,这软件能识别TC35模块。用好这工具,保你迅速入门

出0入0汤圆

发表于 2012-5-13 16:16:33 | 显示全部楼层
调试模块用这个,用其他软件比较繁
用它很容易上手

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2012-5-13 16:18:01 | 显示全部楼层
我的监听数据都不在了,不能提供参考。

出0入0汤圆

 楼主| 发表于 2012-5-14 22:41:56 | 显示全部楼层
hzpyj 发表于 2012-5-13 16:18
我的监听数据都不在了,不能提供参考。

嗯嗯。。好人。。谢谢你!!!

出0入0汤圆

发表于 2012-5-14 23:56:25 | 显示全部楼层
需要电平转换,我用的是4只9018管子,用ASM1117产生3.3V电压

出0入0汤圆

发表于 2012-5-15 22:22:18 | 显示全部楼层
同意60楼的。短信内容完了以后紧接着发0x1A

出0入0汤圆

 楼主| 发表于 2012-5-16 17:54:54 | 显示全部楼层
hzpyj 发表于 2012-5-11 10:03
楼上的不了解吗?模块TXD就接RS232 TXD

您好。那电路是pcb的。店主说用单片机的串口直接连模块的T和R就能实现通信。但是我连了还是不能啊。。您帮我看下是什么原因啊。。pcb的电路已经是固定的了。需要在单片机的串口做什么工作吗?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2012-5-16 20:26:53 | 显示全部楼层
从截图可见 串口通讯是正常的 只是指令错误

出0入0汤圆

发表于 2012-5-16 20:27:50 | 显示全部楼层
遗憾的是 TXT模式发送的监听信息全没保存 否则你可参考下

出0入0汤圆

发表于 2012-5-16 20:29:50 | 显示全部楼层
我的老电脑上可能有 帮你找下。当时项目存在无故的乱码现象,拿来监听的N天的信息,应该有保存

出0入0汤圆

发表于 2012-5-16 21:38:34 | 显示全部楼层
用串口调试助手V2.2分二步:
1)PC串口模拟MCU调TC35是否能完成收发功能。
2)PC串口调模拟TC35检测MCU能否实现
注意点:波特率设置,串口电平设置。

出0入0汤圆

发表于 2012-5-16 21:42:40 | 显示全部楼层
发完后加发16进制1A。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-6-3 01:42

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表