Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Help me to use sim900DevIde to implement users application in SIM900

Status
Not open for further replies.

rahulbhor024

Newbie level 3
Newbie level 3
Joined
Dec 22, 2013
Messages
4
Helped
0
Reputation
0
Reaction score
0
Trophy points
1
Visit site
Activity points
30
I am using sim900a GSM MODEM to implement vehicle tracking system. For that I want to use internal controller of the SIM900 chip. I have already installed SIM900DevIDE, compiled sample code and downloaded it into the module but I am not getting any output from it. If anyone knows the solution for my problem then please help me. Thanks in advance.
 

@rahulbhor024,

1. Are you talking about Embedded AT Module?

2. How did you check the output?? Pls explain the methodology you had followed...

3. If possible share your application 'C' file that you had written...
 

@rahulbhor024,

1. Are you talking about Embedded AT Module?

2. How did you check the output?? Pls explain the methodology you had followed...

3. If possible share your application 'C' file that you had written...

@kgshankar1980, Thanks for response. I am talking about SIM900A GSM Modem.

I am checking output on serial and debug port with the help of terminal window application.

And the C code I am using is present in the root directory of the SIM900DevIDE.

View attachment code.txt
 

@kgshankar1980, Thanks for response. I am talking about SIM900A GSM Modem.

I am checking output on serial and debug port with the help of terminal window application.

And the C code I am using is present in the root directory of the SIM900DevIDE.

View attachment 114305

@rahulbhor24,

There are two ways to access the SIM900A GSM Modem.

1. By connecting an external MCU(Microcontroller) to the Modem and access the modem through the MCU.
2. Writing and downloading the application code in the SIM900A GSM modem itself.

Your requirement falls into the second category. The second category based SIM900A GSM module is called as EMBEDDED - AT Module.

For this module, there are two files required. 1. The SIM900A core file-- *.cla file 2. The application file - *.cla

Generation of the application.cla can be done using the SIM900DevIDE.

And you need a SIM900A EAT downloader to download the both the files to the module. Pls avail it from www.sim.com

Once both the files are downloaded to the module on power up, you can see the output in the debug port as per your coding.

The debug port always has a default baud rate - 11200,8,N,1.

Note: The application is based on RTOS multitasking.
 

@rahulbhor24,

There are two ways to access the SIM900A GSM Modem.

1. By connecting an external MCU(Microcontroller) to the Modem and access the modem through the MCU.
2. Writing and downloading the application code in the SIM900A GSM modem itself.

Your requirement falls into the second category. The second category based SIM900A GSM module is called as EMBEDDED - AT Module.

For this module, there are two files required. 1. The SIM900A core file-- *.cla file 2. The application file - *.cla

Generation of the application.cla can be done using the SIM900DevIDE.

And you need a SIM900A EAT downloader to download the both the files to the module. Pls avail it from www.sim.com

Once both the files are downloaded to the module on power up, you can see the output in the debug port as per your coding.

The debug port always has a default baud rate - 11200,8,N,1.

Note: The application is based on RTOS multitasking.

@kgshankar1980 : I am following exactly same procedure as you said and I am referring the SIM900DevIDE User's Manual. I am successfully downloading the core file and users file. But not getting any output. There may be problem in .cla file generation. Can you please send me sample user code .cla file to check output on either serial or debug port. Please help me to find the bottleneck
 

@rahulbhor24,

OK fine..After you had downloaded the 2 .cla files and on powering up again...what is the output you are seeing in debug port...i.e on powering on again..
 

@rahulbhor24,

OK fine..After you had downloaded the 2 .cla files and on powering up again...what is the output you are seeing in debug port...i.e on powering on again..

Here I have attached image showing debug output. I am getting nothing other than this. Please help me. debug output.jpg
 

@rahulbhor024,

As per the image attached you had selected the 'Debug' option.

1. Pls show the 'Build' option.
2. In the 'Debug' option you cannot see anything.

This is just compilation of your code with the IDE.

In order to see the output...Download the code and connect the hardware to hyperterminal and see the output.
 

I am trying to program SIM900 using SIM900DEVIDE. I am using RVCT COmpiler. I am facing trouble in compiling sample Programs given by SIMCOM.. Some programs get compiled and make the .CLA File.. But programs which use sprintf function I am getting Error in loading ARM Libraries… Has anyone used the Embedded programs in SIM900.. My application is : On getting RING the Modem should Pick up i.e. give ATA command. Then it should Play a file “WELCOME.AMR”.After that It should wait for DTMF Digits o be dialled.. If It gets # ( “DTMF:#”) then the SIM900 should give 1 to GPIO12. Again it should go on expecting a DTMF Tone..If It gets * ( “DTMF:*”) then the SIM900 should give 0 to GPIO12. I have used a Microcontroller and programmed for this application using AT Commands they work fine.. But I understand the SIM900 has sufficient power to execute a program like this internally.. Can anyone who has worked on this.. Help… Thanks
 

I have done similar thing. I used gpio sample program.. I am trying to switch on the GPIO12 i.e pin no 68. I have connected LED with resistor to Pin 68. The GPIO is working fine when i am connected to SIM900 through Hyperterminal and give at command 'AT+sgpio=0,12,1,1" the led gets switched on and if i give "AT+sgpio=0,12,1,0" the led gets switch off.

Now I am having a simple program in the Function fl_entry to switch the LED ON :


Code C - [expand]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
void fl_entry()
{
    u16 i;
    ebdat7_01DebugTrace((const char *)"\r\n<<<Entry Customer Task Work>>>\r\n");    
 
    ebdat9_03SetModemdataToFL(TRUE);
    ebdat9_01SendToModem((u8*)"AT+ICF=3,3;+IPR=115200\r",strlen("AT+ICF=3,3;+IPR=115200\r"));
 
    p1=9;
    p2=3;
    p3=68;//4;
    p4=5;
    p5=1;
    fl_memset(ByteBuf, 0x00, 20);
    //i = sprintf(ByteBuf, "AT+CRWP=%d,%d,%d",p1, p2, p3);
    //ebdat7_01DebugTrace((const char *)"Sprintf %d : %d, %d, %d\r\n", p1, p2, p3);
    
//  SysTick = ebdat8_08GetSystemTickCounter( );
//  SysTick += 20;
//  while(ebdat8_08GetSystemTickCounter( )<=SysTick);
    
    //i = sscanf(ByteBuf, "AT+CRWP=%d,%d,%d",&p1, &p2, &p3);
    //ebdat7_01DebugTrace((const char *)"sscanf %d para: %d, %d, %d\r\n", i, p1, p2, p3);
    
    
    //ebdat7_01DebugTrace((const char *)"<<<<<<<EAT Task Work Loop begin>>>>>>>");
if (ebdat6_08pinConfigureToUnused((FlPinName)p3) == FL_OK) /*set pin to UNUSED status successfully*/
{
    if(ebdat9_05GetSerialPortTxStatus())
    {
        ebdat9_02SendToSerialPort((char *)"\r\nset PIN to UNUSED status successfully\r\n", sizeof("\r\nset PIN to UNUSED status successfully\r\n"));
    }
    while(!ebdat9_05GetSerialPortTxStatus());
    fl_memset(ByteBuf, 0x00, sizeof(ByteBuf));
    if (ebdat6_02GpioSubscribe((FlPinName)p3, (FlGpioDirection)p4, (bool)p5) == FL_OK)/*set GPIO to UNUSED status successfully*/
    {
        if(ebdat9_05GetSerialPortTxStatus())
        {
            ebdat9_02SendToSerialPort((char *)"\r\nset PIN successfully\r\n", sizeof("\r\nset PIN successfully\r\n"));
        }
    }
    else
    {
    if(ebdat9_05GetSerialPortTxStatus())
    {
        ebdat9_02SendToSerialPort((char *)"\r\nset PIN failed\r\n", sizeof("\r\nset PIN failed\r\n"));
    }
}
else
{
    if(ebdat9_05GetSerialPortTxStatus())
    {
        ebdat9_02SendToSerialPort((char *)"\r\nset PIN to UNUSED status failed\r\n", sizeof("\r\nset PIN to UNUSED status failed\r\n"));
    }
}



I have created the application .cla file and then downloaded the core and the application file..

But when i switch on the modem.. the AT commands work.. But the GPIO LED does not get switched ON..
How does the Embedded Program works.. On switching does it go directly to fl_entry... If it had been so then the LED would have got switched ON..

Where I am going wrong.. CAn somebody give a Simple Embedded Program which works...

Thanks
 
Last edited by a moderator:

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top