Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
main.cpp
- Committer:
- Vanger
- Date:
- 2014-07-24
- Revision:
- 0:d9fd19c8ca39
- Child:
- 1:1f5c9497a125
File content as of revision 0:d9fd19c8ca39:
#include "mbed.h"
#include "mtsas.h"
int main(){
//Modify to match your apn if you are using an HSPA radio with a SIM card
const char APN[] = "";
//Input the phone number below that you want to send the SMS messages to.
//Send the AT command AT+CNUM to the radio to obtain the phone number of the radio.
const char PHONE_NUMBER[] = "";
/** STMicro Nucelo F401RE
* The supported jumper configurations of the MTSAS do not line up with
* the pin mapping of the Nucleo F401RE. Therefore, the MTSAS serial TX
* pin (JP8 Pin 2) must be manually jumped to Serial1 RX (Shield pin D2)
* and the MTSAS serial RX pin (JP9 Pin 2) pin must be manually jumped to
* Serial1 TX (Shield pin D8).
* Uncomment the following line to use the STMicro Nuceleo F401RE
*/
MTSSerialFlowControl* io = new MTSSerialFlowControl(D8, D2, D3, D6);
/** Freescale KL46Z
* To configure the pins for the Freescale KL46Z board, use configuration B
* for the SocketModem. The TX pin should be jumped to pin D2 (JP8), and the
* RX pin should be jumped to pin D9 (JP9).
* Uncomment te following line to use the Freescale KL46Z board
*/
//MTSSerialFlowControl* io = new MTSSerialFlowControl(D2, D9, D3, D6);
/** Freescale KL64F
* To configure the pins for the Freescale KL46Z board, use configuration A
* for the SocketModem. The TX pin should be jumped to pin D1 (JP8), and the
* RX pin should be jumped to pin D0 (JP9).
* Uncomment te following line to use the Freescale KL46F board
*/
//MTSSerialFlowControl* io = new MTSSerialFlowControl(D1, D0, D3, D6);
//Sets the baudrate for communicating with the radio
io->baud(115200);
Cellular* radio = CellularFactory::create(io);
radio->setApn(APN);
wait(15);
//Delete all SMS messages
radio->sendBasicCommand("AT+CMGD=1,4", 1000);
//Setup commands and settings
radio->sendBasicCommand("AT+CMGF=1", 1000);
/** If the radio is and H5 type (MTSMC_H5, MTSMC_H5_IP) then
* uncomment the first line. Otherwise, uncomment the second line.
*/
radio->sendBasicCommand("AT+CSMP=17,167,0,0", 1000);
//radio->sendBasicCommand("AT+CSMP=,4098,0,2", 1000);
//Format message and send to radio
char command[100] = {0};
sprintf(command, "AT+CMGS=\"%s\"", PHONE_NUMBER);
radio->sendCommand(command, 1000);
radio->sendCommand("Hello from MultiTechSystems!", 5000, CTRL_Z);
wait(5);
//Read all messages received
std::string received = radio->sendCommand("AT+CMGL=\"ALL\"", 2000);
printf("Messages received:\n%s", received.c_str());
//Delete all messages
radio->sendBasicCommand("AT+CMGD=1,4", 1000);
printf("End of example code\n");
return 0;
}