打印

求救MC55开机不了,附程序和PCB及原理图

[复制链接]
4007|12
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
xiaostream|  楼主 | 2010-3-19 13:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
1、讨教一下,MC55模块开机不了,看了论坛里面的帖子说是电源问题,或者是EMERGEOFF没有给周期信号,但是测试过电源引脚电压为4.067V,纹波为300mV,采用的电源模块是LT1805,输出最大电流是3A,满足MC55最大电流2A的要求。
2、PCB布线时的电源引脚部分,采用的分割电源层走电源线,在电源进入到MC55电源引脚处未放置滤波电容,是不是这个问题呢?滤波电容只是使纹波更小,300mV的纹波满足最大400mV的纹波要求呀! GPRS模块原理图和PCB.rar (228.46 KB)

3、软件部分:
#include "system.h"
#include "alt_types.h"
#include "altera_avalon_pio_regs.h"
#include "sys/alt_alarm.h"
#include <stdio.h>

static unsigned char emergeoff = 0xff;
void initpio(void)
{
IOWR_ALTERA_AVALON_PIO_DIRECTION(PIO_EMERGEOFF_BASE,0xff);//PIO_EMERGEOFF为
输出
IOWR_ALTERA_AVALON_PIO_IRQ_MASK(PIO_EMERGEOFF_BASE,0x00);
IOWR_ALTERA_AVALON_PIO_EDGE_CAP(PIO_EMERGEOFF_BASE,0x00);
}
int main()
{ unsigned int m,n;
  unsigned char gtt = 0xff;
unsigned int kong;
initpio();
IOWR_ALTERA_AVALON_PIO_DATA(PIO_EMERGEOFF_BASE,0xff);

   gtt = 0x00;  //高阻>10ms
   IOWR_ALTERA_AVALON_PIO_DATA(PIO_IGT_BASE,gtt);
   for(m=0;m<150;m++)
    for(n=0;n<10000;n++)
    { ;}
    gtt = 0xff;  //低电平>100ms
    IOWR_ALTERA_AVALON_PIO_DATA(PIO_IGT_BASE,gtt);
   for(m=0;m<1500;m++)
    for(n=0;n<10000;n++)
    { ;
  gtt = 0x00;  //一直高阻
  IOWR_ALTERA_AVALON_PIO_DATA(PIO_IGT_BASE,gtt);
  while(1)
  {
   for(m=0;m<10000;m++)
    for(n=0;n<10000;n++)
    { ;}
if(emergeoff == 0xff) emergeoff = 0x00;
else emergeoff = 0xff;
IOWR_ALTERA_AVALON_PIO_DATA(PIO_EMERGEOFF_BASE,emergeoff);
}
  return 0;        
}

采用的时钟是50MHz,但是用示波器测得的EMERGEOFF周期不是2s,大概差10倍的关系(200ms)。然后对程序相应的添零,还是触发不了!问题会出在什么地方呢??

相关帖子

沙发
chunyang| | 2010-3-19 15:30 | 只看该作者
300mV的纹波大了点,先试试加大电源滤波,然后手工触发上电。模块不启动的原因主要来自3个方面:电源、启动时序、SIM卡及外围电路,用示波器最好是存储示波器查看模块启动瞬间电源的变化情况,如果此时电源波动过大模块就不会启动,模块手册中对此有详细描述。启动时序不对当然无法启动,这个无需多说,同样去看模块手册,务必保证启动时序满足手册的要求。至于SIM卡及其它外电路方面的问题,在电源、启动时序方面的问题排出后重点详查。

使用特权

评论回复
板凳
mohanwei| | 2010-3-19 15:42 | 只看该作者
把电源断开,换一个可靠的直流稳压电源接上去测一下。
只要电源做好了,硬件调试可以避免90%的弯路……

使用特权

评论回复
地板
xiaostream|  楼主 | 2010-3-19 16:31 | 只看该作者
2# chunyang
非常感谢!有个问题,transmit burst时电压波动不能大于400mV,是上电瞬间VDD亮的时候,还是说是发送数据的时候呢??之前有一次把.SOF文件下载到FPGA中后,不运行NIOS II中的程序时,MC55应该是触发了(VDD灯一直亮,接着SYNC灯一亮一灭,亮灭时间一致),但是测试IGT和EMERGEOFF都是周期信号,我们以为是错的,搞不明白为什么触发脉冲没给,就会正常工作?然后运行程序,MC55就关闭了,就更糊涂了,然后就重新做了一遍,再重新编译下载运行程序后,VDD就亮不到一秒就灭了。很是郁闷!!不知道问题出在什么地方!!!

使用特权

评论回复
5
chunyang| | 2010-3-19 16:50 | 只看该作者
所有时候电源纹波都不能超限,从楼上情况来看,就是电源问题。

使用特权

评论回复
6
浪子007| | 2010-3-22 09:52 | 只看该作者
模块电源输入部分加个大电容试试,可能是瞬态电流达不到

使用特权

评论回复
7
xiaostream|  楼主 | 2010-3-22 13:30 | 只看该作者
5# chunyang
今天,我们用的是直流稳压电源给MC55供电,但是还是触发不了!!触发的时候,SIM卡是不用装的吧??

使用特权

评论回复
8
xiaostream|  楼主 | 2010-3-22 13:31 | 只看该作者
3# mohanwei
按照你说的那样,还是触发不了,发现纹波还更大些!!又改回来了!

使用特权

评论回复
9
xiaostream|  楼主 | 2010-3-22 16:25 | 只看该作者
虽然问题没解决!!但是还是非常感谢各位的帮助!!我再检查一下!!希望能够解决问题!!!

使用特权

评论回复
10
chunyang| | 2010-3-23 13:18 | 只看该作者
必须装SIM卡。

使用特权

评论回复
11
xiaostream|  楼主 | 2010-3-24 20:11 | 只看该作者
10# chunyang
谢谢春阳大哥的耐心指导!今天终于开机了。但还是有两个疑问:
1、没有加SIM卡,也没有加滤波电容,就是手动将MC55的IGT拉低大概2---3s的样子,VDD灯亮,SYNC一闪一灭(亮600ms,灭600ms),也就是说MC55启动了,这事为什么呢?因为软件部分已经按照时序要求改写了,难道时序是要求EMERGEOFF为周期信号后,再将IGT由高阻拉低2s的样子,再拉为高阻才能触发吗??
2、在上述MC55开机的情况下,为什么SIM卡的输入电压引脚CCVCC电压为零呢??检查了SIM卡的外围电路,没有问题呀!有一次无意中触发的时候,测得CCVCC电压为2.89V。

使用特权

评论回复
12
yoghen| | 2012-11-6 16:41 | 只看该作者
11# xiaostream 悲剧啊,楼主。我这也遇到CCVCC没有电压的情况,你是怎么解决的,拉我一吧吧,非常非常感谢

使用特权

评论回复
13
yoghen| | 2012-11-12 13:38 | 只看该作者
已经解决,电阻一个脚没焊加电路不完全正确

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

95

帖子

1

粉丝