Sending AT commands and receiving the reply from them using microcontroller is basically the same as implementing any serial port communications with a microcontroller.
Here are some pointers to more information:
AT commands from microcontroller to a mobile phone DISCUSSION
http://discussion.forum.nokia.com/forum ... php?t=9389
SMS Data Dissected
how to interpret TPU information read from a GSM cellphone
http://www.riccibitti.com/tinyplanet/tiny_sidebar.htm
"An SMS message, according to ETSI specification, can be up to 140 bytes long (octets in ETSI terminology). The usual GSM alphabet requires only 7 bits per character (a septet), allowing for the packing of up to 140 * 8 / 7 = 160 characters."
Tiny Planet: a planet-wide, wireless I/O port
http://www.riccibitti.com/tinyplanet/tiny_article.htm
"Control takes place by means of SMS (Short text Messages Service). When the mobile receives a predefined text message, like "Activate burglar alarm" or "Start backup pump", the circuit automatically recognizes it as a command, and switches the output accordingly. Besides switching the port on or off, the user can pulse it for a short period (e.g. "Reboot remote server")."
"To start with, similar to modems, GSM cellular phones can accept AT commands (more precisely an extension of the AT command set)."
"But the real surprise was to discover that the rules [1] [2] that standardize GSM cell phones (including the AT modem command set extension) derive from a European Institute (ETSI, European Telecommunication Institute), which published them on-line!"
First, tell the phone which memory to use for successive commands:
AT+CPMS="ME","ME" +CPMS: 7,15,7,15,7,15
OK
Next, a message can be read from that memory specifying its number:
AT+CMGR=4
+CMGR: 1,,27 0791934329005000040C9193433728501400001060314104350809D02A735A043DAB54
OK
This is the fourth message, 1= received and read, 27 bytes long text, in PDU (Protocol Description Unit) format.
The PDU format is quite complex, as it contains many subfields packed together using different encodings.
The next command frees precious mobile memory deleting the seventh message:
AT+CMGD=7
OK
The last step is to send an SMS message.
a simple command is all that is required to resend the message from memory:
AT+CMSS=1
+CMSS :96
OK
Besides being simple for the microcontroller, this technique is simple for the user too.
I like to call it setup by example: to setup the system which text to send, which phone numbers to use, and which command to recognise, just send them once manually (as usual, using the mobile itself), then press the CONFIGURATION button to make the machine learn them automatically.
Circuit diagram from article: