OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 7322|回复: 17

430驱动不了SIM900A?原子大哥看看是什么问题???

[复制链接]

55

主题

199

帖子

0

精华

高级会员

Rank: 4

积分
628
金钱
628
注册时间
2014-2-24
在线时间
82 小时
发表于 2015-1-28 11:02:39 | 显示全部楼层 |阅读模式
5金钱
我用430的串口接上原子大哥的GPRS模块,数据传送接收好像有问题?我不明白是怎么回事,请原子大哥指点下,
完全是用的串口的写法,以为是写的不对,于是向上位机的串口调试助手上发送,这段程序向串口发送的是AT回车,
不知道这样给GPRS发送是不是格式不对呀,它一点回应也没有,430完全收不到

 

#include <msp430x14x.h>


typedef unsigned char uchar;
typedef unsigned int uint;


uchar len,Temp[40],txbuf[40];
void InitUart();
void PutString(uchar *ptr);

void sendata(uchar *Sbuf,uchar Slen)
{
  Slen=0;
  Sbuf[0]='A';
  Sbuf[1]='T';
  Sbuf[2]=13;
  Slen+=3;
}
main()
{
  P1DIR=0xFF1OUT=0xff;
  P2DIR=0xff2OUT=0xff;
  P3DIR=0xff3OUT=0xff;
  P4DIR=0xff4OUT=0xff;
  P5DIR=0xff5OUT=0xff;
  P6DIR=0xff6OUT=0xff;
 
  WDTCTL=WDTPW+WDTHOLD;
  BCSCTL1&=~XT2OFF;
  BCSCTL2=SELM_2+SELS;
  do
  {
    IFG1&=~OFIFG;
    for(uchar i=0xff;i>0;i--);
  }while(IFG1&OFIFG);
 
  InitUart();
  sendata(txbuf,len);
  PutString(txbuf);
  while(1)
  {
    IFG1|=URXIFG0;
    if(IFG1&URXIFG0)
    {
      if(len>30)len=0;
      Temp[len++]=RXBUF0;
    }
  }
}

/*
初始化串口,波特率为9600,数据传输8位
*/
void InitUart()
{
  P3SEL|=0x30;
  ME1 |= URXE0+UTXE0;
  UCTL0|=CHAR;
  UTCTL0|=SSEL0;
  UBR00=0x03;
  UBR10=0x00;
  UMCTL0=0x4A;
  UCTL0&=~SWRST;
}

/*
向串口发送数据
*/
void PutString(uchar *ptr)
{
  while(*ptr !='\0')
  {
    while(!(IFG1&UTXIFG0));
    TXBUF0=*ptr++;
  }
}

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165309
金钱
165309
注册时间
2010-12-1
在线时间
2108 小时
发表于 2015-1-28 23:08:21 | 显示全部楼层
直接用电脑模拟SIM900A的回复,单片机有反应么?
然后直接电脑接SIM900A,发送AT,有反应么?
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

55

主题

199

帖子

0

精华

高级会员

Rank: 4

积分
628
金钱
628
注册时间
2014-2-24
在线时间
82 小时
 楼主| 发表于 2015-1-29 09:01:30 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
用电脑的串口调试助手给SIM900A发指令有反应,
我这单片机可以接收串口的数据,
单片机和SIM900A是用交插线连接的(TX->RX,RX->TX,GND-GND),单片机的串口只用了TX,RX,
是不是我命令格式的问题?但是我看资料说的就是只发AT不需要加后缀,
不过我单步调试的时候有时候在RXbuf中会有反应,可是不是OK,也不是ERROR,也不是我发送的指令,所以请您看年是不是我程序哪不对啊,现在我只给SIM900A发一个AT,收不到相应的回复
回复

使用道具 举报

14

主题

338

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
464
金钱
464
注册时间
2013-6-15
在线时间
15 小时
发表于 2015-1-29 22:33:36 | 显示全部楼层
AT后面跟\r
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165309
金钱
165309
注册时间
2010-12-1
在线时间
2108 小时
发表于 2015-1-29 23:21:10 | 显示全部楼层
对了,要发\r\n,对应内码是0X0D,0X0A.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

55

主题

199

帖子

0

精华

高级会员

Rank: 4

积分
628
金钱
628
注册时间
2014-2-24
在线时间
82 小时
 楼主| 发表于 2015-1-30 11:39:57 | 显示全部楼层
回复【5楼】正点原子:
--------------------------------
试了,不行,而且430的电流还上去了,一会拍几张照片,原子哥给看下是什么问题
话说这里面怎么上传照片啊


整体  SIM900A与430用串口连接的,分别供电,电平不批配的问题也想过,但是又感觉经过串口之后电平应该是一样的,是不是这里理解错了


电流表的值 量程500MA的是接的430,量程200MA的接的是SIM900A



回复

使用道具 举报

14

主题

338

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
464
金钱
464
注册时间
2013-6-15
在线时间
15 小时
发表于 2015-1-30 12:10:57 | 显示全部楼层
学会排除,把单片机连电脑上,看电脑能不能收到,先确认单片机能不能正常收发,再试试SIM900能不能正常收发,如果都能,接到一块不行的话,检查你的接线吧
回复

使用道具 举报

55

主题

199

帖子

0

精华

高级会员

Rank: 4

积分
628
金钱
628
注册时间
2014-2-24
在线时间
82 小时
 楼主| 发表于 2015-1-30 14:51:34 | 显示全部楼层
回复【7楼】as564335sa:
--------------------------------
是得好好找找
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165309
金钱
165309
注册时间
2010-12-1
在线时间
2108 小时
发表于 2015-1-30 23:06:16 | 显示全部楼层
回复【6楼】疯子韩:
---------------------------------
电流表好有喜感.
建议先做回环实验测试下,比如短接SIM900A模块的 RTXD和RRXD,这样,430发过来什么就应该自己收到什么
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

55

主题

199

帖子

0

精华

高级会员

Rank: 4

积分
628
金钱
628
注册时间
2014-2-24
在线时间
82 小时
 楼主| 发表于 2015-2-28 16:45:54 | 显示全部楼层
回复【9楼】正点原子:
-------------------------------
看前没弄出来放置了一段时间,现在重新写着但还是有些问题,原子哥再帮着看看吧谢谢
回复

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
21
金钱
21
注册时间
2015-4-9
在线时间
0 小时
发表于 2015-4-9 13:58:24 | 显示全部楼层
怀疑是时钟问题,我将430的MCLK设置为8M,SMCLK设置为1M,串口时钟选择选择SMCLK,波特率19200,就可以正常通信了。最初我串口使用ACLK作为时钟,SIM900就接收不到数据。还有就是试试430单片机AT指令后面加两个\r\n
回复

使用道具 举报

5

主题

15

帖子

0

精华

初级会员

Rank: 2

积分
55
金钱
55
注册时间
2014-10-27
在线时间
0 小时
发表于 2015-4-11 11:37:15 | 显示全部楼层
回复【11楼】咖啡猫的薛定谔:
---------------------------------
哥们  能不能把你的SIM900A+430程序发一份给我,我现在正在搞,谢谢!只是参考串口那块!
回复

使用道具 举报

5

主题

15

帖子

0

精华

初级会员

Rank: 2

积分
55
金钱
55
注册时间
2014-10-27
在线时间
0 小时
发表于 2015-4-11 11:37:36 | 显示全部楼层
回复【12楼】tiankun:
---------------------------------
邮箱979341713@qq.com谢谢
回复

使用道具 举报

0

主题

5

帖子

0

精华

新手上路

积分
25
金钱
25
注册时间
2015-5-7
在线时间
0 小时
发表于 2015-5-7 13:27:27 | 显示全部楼层
回复【12楼】tiankun:
---------------------------------
你好!可不可以给我也传一份  847728225@qq.com 非常感谢!!
回复

使用道具 举报

0

主题

2

帖子

0

精华

新手入门

积分
22
金钱
22
注册时间
2015-5-17
在线时间
0 小时
发表于 2015-5-17 20:41:09 | 显示全部楼层
回复【11楼】咖啡猫的薛定谔:
---------------------------------
哥们,能发给我一份吗?我参考参考。加我QQ531499820或者发邮箱531499820@qq.com。
希望能加QQ,有些想请教的。多谢啦
回复

使用道具 举报

0

主题

3

帖子

0

精华

新手入门

积分
27
金钱
27
注册时间
2015-9-21
在线时间
0 小时
发表于 2015-9-21 19:34:06 | 显示全部楼层
SIM900需要单独供电
回复

使用道具 举报

55

主题

199

帖子

0

精华

高级会员

Rank: 4

积分
628
金钱
628
注册时间
2014-2-24
在线时间
82 小时
 楼主| 发表于 2015-9-24 10:19:49 | 显示全部楼层
回复【16楼】kevin0016:
---------------------------------
是的,而且它对电源的要求比较高
回复

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
10
金钱
10
注册时间
2016-5-19
在线时间
1 小时
发表于 2016-5-19 11:06:47 | 显示全部楼层
哥们儿,我也在调这块,遇到的问题跟你一样,可以发代码给我吗,感激不尽。879476196@qq.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-22 17:13

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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