Mobile Phones and the related technologies are becoming more and more ubiquitous. Various technical arenas in the field of Telecommunication and Embedded Systems have come very near to the common people. The number of people with cell phones is on the rise. A day will come, somewhere in the near future, when a mobile phone is referred to in the same class of Food, clothing and shelter". Improvements in the Networking technologies have fostered growth of very dense networks. Land line telephones have been becoming less and less popular and people now prefer communicating while on the move.
A Remote Control is perhaps the most popular gadget today. Right from the intense creativity of remotely controlling laser chip markers to the highly destructive remotely ignitable bombs, from the pins to the planes, remote control is not only occupying a omnipresence state, but is also enhancing its scope and domains.
When people have a good connectivity at their disposal, with tremendous power of mobile computing to supplement the same, we can think of connecting their home appliances to a mobile phone wirelessly. With this, people would be able to turn on and off, and to some extent, control the appliances at their home even from a distant place. One of the very basic examples of an utility of this is switching on the air conditioner in the room just some time before reaching home, so that the room is sufficiently cool by then. The usefulness of a long range remote control to home appliances has no limits. A setup facilitating such a thing would be to connect the home appliances to a microcontroller interfaced to a GSM modem that receives the controls from the user, the means of sending signals to the appliances being a mobile phone.
This project is an implementation to the idea of the wireless communication between a mobile phone and a microcontroller.
1.1 WHAT MAKES SMS MESSAGING SO SUCCESSFUL WORLDWIDE
SMS is a success all over the world. The number of SMS messages exchanged every day is enormous. SMS messaging is now one of the most important revenue sources of wireless carriers. What is so special about SMS that makes it so popular worldwide Some of the reasons are discussed below.
SMS Messages can be Sent and Read at Any Time: Nowadays, almost every person has a mobile phone and carries it most of the time. With a mobile phone, you can send and read SMS messages at any time, no matter you are in your office, on a bus or at home.
SMS Messages can be Sent to an Offline Mobile Phone: Unlike a phone call, you can send an SMS message to your friend even when he/she has not switched on the mobile phone or when he/she is in a place where the wireless signal is temporarily unavailable. The SMS system of the mobile network operator will store the SMS message and later send it to your friend when his/her mobile phone is online.
SMS Messaging is Less Disturbing While You can Still Stay in Touch: Unlike a phone call, you do not need to read or reply an SMS message immediately. Besides, writing and reading SMS messages do not make any noise. While you have to run out of a theater or library to answer a phone call, you do not need to do so if SMS messaging is used.
SMS Messages are Supported by 100% GSM Mobile Phones and they can be exchanged between different wireless carriers: SMS messaging is a very mature technology. All GSM mobile phones support it. Not only that you can exchange SMS messages with mobile users of the same wireless carrier, but you can also exchange SMS messages with mobile users of many other wireless carriers worldwide.
SMS is a Suitable Technology for Wireless Applications to Build on: Here are some of the reasons that make SMS a suitable technology for wireless applications to build on:
Â¢ Firstly, SMS messaging is supported by 100% GSM mobile phones. Building wireless applications on top of the SMS technology can maximize the potential user base.
Â¢ Secondly, SMS messages are capable of carrying binary data besides text. They can be used to transfer ringtones, pictures, operator logos, wallpapers, animations, VCards, VCals (calendar entries), etc.
Â¢ Thirdly, SMS supports reverse billing, which enables payment to be made conveniently. For example, suppose you want to develop a commercial ringtone download application that charges a fee from the user for each ringtone downloaded. One way to accept payment is to use a reverse billing phone number obtained from a wireless carrier. To buy a ringtone, the user will write an ordinary SMS text message that contains the ID of the ringtone he/she wants to buy and send it to your SMS application's reverse billing phone number. Your SMS application will then send back one or more reverse billing SMS messages that carry the ringtone. The user will be charged a fee for the reverse billing SMS messages he/she received. The fee will be included in the user's monthly mobile phone bill or be deducted from his/her prepaid card credits. Depending on the agreement between you and the wireless carrier, all or part of the money received will be given to you.
1.2 CURRENT SCENARIO
Currently we rely on putting up notices on the notice boards using papers. This is time consuming since we need time for preparing notices. Also there is wastage of paper. If we need to renew the notice then we have to take a new hardcopy.
1.3 WHAT IS WIRELESS NOTICE BOARD
Wireless notice board is a means of wireless data transfer for quick display of messages in real time.
1.4 TRANSMISSION TECHNIQUES
GSM TECHNOLOGY: Global System for Mobile Communication is a globally accepted standard for digital cellular communication. GSM is the name of a standardization group established in 1982 to create a common European mobile telephone standard.
RF MODULES: An RF wireless communication system operating in the presence of a periodic noise environment, includes first and second wireless devices, each such device having, a source of power, a transceiver coupled to the power source, for transmitting and receiving wireless information and a controller/CPU for controlling the operation of the transceiver
BLUETOOTH: Bluetooth is an open wireless protocol for exchanging data over short distances from fixed and mobile devices, creating personal area networks (PANs). It was originally conceived as a wireless alternative to RS232 data cables. It can connect several devices, overcoming problems of synchronization.
GSM (Global System for Mobile communications: originally from Groupe SpÃƒÂ©cial Mobile) is the most popular standard for mobile phones in the world. Its promoter, the GSM Association, estimates that 80% of the global mobile market uses the standard. GSM is used by over 3 billion people across more than 212 countries and territories. Its ubiquity makes international roaming very common between mobile phone operators, enabling subscribers to use their phones in many parts of the world. GSM differs from its predecessors in that both signaling and speech channels are digital, and thus is considered a second generation (2G) mobile phone system. This has also meant that data communication was easy to build into the system.
2.1 TECHNICAL DETAILS
GSM is a cellular network, which means that mobile phones connect to it by searching for cells in the immediate vicinity.
There are five different cell sizes in a GSM networkâ€macro, micro, pico, femto and umbrella cells. The coverage area of each cell varies according to the implementation environment. Macro cells can be regarded as cells where the base station antenna is installed on a mast or a building above average roof top level. Micro cells are cells whose antenna height is under average roof top level; they are typically used in urban areas. Picocells are small cells whose coverage diameter is a few dozen meters; they are mainly used indoors. Femtocells are cells designed for use in residential or small business environments and connect to the service providerâ„¢s network via a broadband internet connection. Umbrella cells are used to cover shadowed regions of smaller cells and fill in gaps in coverage between those cells.
Cell horizontal radius varies depending on antenna height, antenna gain and propagation conditions from a couple of hundred meters to several tens of kilometres. The longest distance the GSM specification supports in practical use is 35 kilometres (22 mi). There are also several implementations of the concept of an extended cell, where the cell radius could be double or even more, depending on the antenna system, the type of terrain and the timing advance.
Indoor coverage is also supported by GSM and may be achieved by using an indoor picocell base station, or an indoor repeater with distributed indoor antennas fed through power splitters, to deliver the radio signals from an antenna outdoors to the separate indoor distributed antenna system. These are typically deployed when a lot of call capacity is needed indoors, for example in shopping centers or airports. However, this is not a prerequisite, since indoor coverage is also provided by in-building penetration of the radio signals from nearby cell.
The modulation used in GSM is Gaussian minimum-shift keying (GMSK), a kind of continuous-phase frequency shift keying. In GMSK, the signal to be modulated onto the carrier is first smoothed with a Gaussian low-pass filter prior to being fed to a frequency modulator, which greatly reduces the interference to neighboring channels (adjacent channel interference).
2.2 GSM FREQUENCIES
GSM networks operate in a number of different frequency ranges (separated into GSM frequency ranges for 2G and UMTS frequency bands for 3G). Most 2G GSM networks operate in the 900 MHz or 1800 MHz bands. Some countries in the Americas (including Canada and the United States) use the 850 MHz and 1900 MHz bands because the 900 and 1800 MHz frequency bands were already allocated. Most 3G GSM networks in Europe operate in the 2100 MHz frequency band.
2.3 NETWORK STRUCTURE
The network behind the GSM seen by the customer is large and complicated in order to provide all of the services which are required. It is divided into a number of sections and these are each covered in separate articles.
Â¢ The Base Station Subsystem (the base stations and their controllers).
Â¢ The Network and Switching Subsystem (the part of the network most similar to a fixed network). This is sometimes also just called the core network.
Â¢ The GPRS Core Network (the optional part which allows packet based Internet connections).
Â¢ All of the elements in the system combine to produce many GSM services such as voice calls and SMS.
2.4 SUBSCRIBER IDENTITY MODULE (SIM)
One of the key features of GSM is the Subscriber Identity Module, commonly known as a SIM card. The SIM is a detachable smart card containing the user's subscription information and phone book. This allows the user to retain his or her information after switching handsets. Alternatively, the user can also change operators while retaining the handset simply by changing the SIM. Some operators will block this by allowing the phone to use only a single SIM, or only a SIM issued by them; this practice is known as SIM locking, and is illegal in some countries.
2.5 GSM SECURITY
GSM was designed with a moderate level of security. The system was designed to authenticate the subscriber using a pre-shared key and challenge-response. Communications between the subscriber and the base station can be encrypted. The development of UMTS introduces an optional USIM, that uses a longer authentication key to give greater security, as well as mutually authenticating the network and the user - whereas GSM only authenticates the user to the network (and not vice versa). The security model therefore offers confidentiality and authentication, but limited authorization capabilities, and no non-repudiation. GSM uses several cryptographic algorithms for security. The A5/1 and A5/2 stream ciphers are used for ensuring over-the-air voice privacy. A5/1 was developed first and is a stronger algorithm used within Europe and the United States; A5/2 is weaker and used in other countries. Serious weaknesses have been found in both algorithms: it is possible to break A5/2 in real-time with a ciphertext-only attack, and in February 2008, Pico Computing, Inc revealed its ability and plans to commercialize FPGAs that allow A5/1 to be broken with a rainbow table attack. The system supports multiple algorithms so operators may replace that cipher with a stronger one.
3.1 BASIC MODEL OF THE SYSTEM
Fig 3.1: Block diagram of the system
3.2 PARTS OF THE SYSTEM
MICROCONTROLLER: The microcontroller forms the heart of the system. Its responsibilities include reading the message from the GSM modem and displaying it on LCD. Reading of message from the SIM card inserted into the modem is done by sending the appropriate AT command to the modem. Here we use the 8051 based AT89C52 manufactured by Atmel.
GSM MODEM: A GSM modem is a wireless modem that works with a GSM wireless network. A wireless modem behaves like a dial-up modem. The main difference between them is that a dial-up modem sends and receives data through a fixed telephone line while a wireless modem sends and receives data through radio waves. Like a GSM mobile phone, a GSM modem requires a SIM card from a wireless carrier in order to operate.
A GSM modem can be an external unit or a PCMCIA card (also called PC Card). An external GSM modem is connected to a PC through a serial cable, a USB cable, Bluetooth or Infrared. Like a GSM mobile phone, a GSM modem requires a SIM card from a wireless carrier in order to operate.
PC's use AT commands to control a modem.GSM modems and normal Hayes modems support a common set of AT commands.You can use a GSM modem just like a hayes compatible modem.GSM modems support an extended set of AT commands. These extended AT commands are defined in the GSM standards. With these we can:
Â¢ Send SMS messages.
Â¢ Monitor the signal strength.
Â¢ Monitor the charging status and charge level of the battery.
Â¢ Read, write and search phone book entries.
The number of SMS messages that can be processed by a GSM modem is pretty low, approximately six messages per minute.
RS-232 INTERFACE: For GSM modem which works on the RS-232 voltage levels, logic 1 varies from -3 to -15 volts and logic 0 from +3 to +15 volts. The microcontroller which works on TTL logic levels, logic 1 is +5 volts and logic 0 is 0 volts. Therefore to interface the two we use a MAX 232 driver IC manufactured by Maxim.
DISPLAY UNIT: To display messages received we are using a 20*4 alphanumeric LCD. If any new message arrives the current one is erased and new one is displayed.
Fig 3.2: Block diagram of power supply
The given block diagram includes following:
Transformer: A transformer is an electro-magnetic static device, which transfers electrical energy from one circuit to another, either at the same voltage or at different voltage but at the same frequency.
Rectifier: The function of the rectifier is to convert AC to DC current or voltage. Usually in the rectifier circuit full wave bridge rectifier is used.
Filter: The Filter is used to remove the pulsated AC. A filter circuit uses capacitor and inductor. The function of the capacitor is to block the DC voltage and bypass the AC voltage. The function of the inductor is to block the AC voltage and bypass the DC voltage.
Voltage Regulator: Voltage regulator constitutes an indispensable part of the power supply section of any electronic systems. The main advantage of the regulator ICs is that it regulates or maintains the output constant, in spite of the variation in the input supply.
4.1 MICROCONTROLLER - AT89C52
The AT89C52 is a low-power, high-performance CMOS 8-bit microcomputer with 4 Kbytes of Flash Programmable and Erasable Read Only Memory (PEROM). The device is manufactured using Atmelâ„¢s high density nonvolatile memory technology and is compatible with the industry standard MCS-51 instruction set and pin out. The on-chip Flash allows the program memory to be reprogrammed in-system or by a conventional nonvolatile memory programmer. By combining a versatile 8-bit CPU with Flash on a monolithic chip, the Atmel AT89C52 is a powerful microcomputer which provides a highly flexible and cost effective solution to many embedded control applications.
The AT89C52 provides the following standard features:
Â¢ 8 Kbytes of In-System Reprogrammable Flash Memory
Â¢ Endurance: 1,000 Write/Erase Cycles
Â¢ Fully Static Operation: 0 Hz to 24 MHz
Â¢ Three-Level Program Memory Lock
Â¢ 256 x 8-Bit Internal RAM
Â¢ 32 Programmable I/O Lines
Â¢ Three 16-Bit Timer/Counters
Â¢ Eight Interrupt Sources
Â¢ Programmable Serial Channel
Fig 4.1 Pin Diagram of 89C52
Fig4.2: Internal Architecture of AT89C52
4.2 MAX 232
The MAX220â€œMAX249 family of line drivers/receivers is intended for all EIA/TIA-232E and V.28/V.24 communications interfaces, particularly applications where Ã‚Â±12V is not available. These parts are especially useful in battery-powered systems, since their low-power shutdown mode reduces power dissipation to less than 5Ã‚ÂµW
Fig4.3: Pin diagram of MAX232
4.3 RS 232
Due to its relative simplicity and low hardware overhead (as compared to parallel interfacing), serial communications is used extensively within the electronics industry. Today, the most popular serial communications standard in use is certainly the EIA/TIAâ€œ232â€œE specification. This standard, which has been developed by the Electronic Industry Association and the Telecommunications Industry Association (EIA/TIA), is more popularly referred to simply as RSâ€œ232 where RS stands for recommended standard. In recent years, this suffix has been replaced with EIA/TIA to help identify the source of the standard. We use the common notation RSâ€œ232.
Fig 4.4 DB-9 Connector
A liquid crystal display (LCD) is a thin, flat display device made up of any number of color or monochrome pixels arrayed in front of a light source or reflector. Each pixel consists of a column of liquid crystal molecules suspended between two transparent electrodes, and two polarizing filters, the axes of polarity of which are perpendicular to each other. Without the liquid crystals between them, light passing through one would be blocked by the other. The liquid crystal twists the polarization of light entering one filter to allow it to pass through the other.
Fig 4.5 Pin Diagram of LCD
4.5 GSM MODEM
The GSM/GPRS Modem comes with a serial interface through which the modem can be controlled using AT command interface. An antenna and a power adapter are provided.
The basic segregation of working of the modem is as under:
1. Voice calls: Voice calls are not an application area to be targeted. In future if interfaces like a microphone and speaker are provided for some applications then this can be considered.
2. SMS: SMS is an area where the modem can be used to provide features like:
Â¢ Pre-stored SMS transmission.
Â¢ These SMS can be transmitted on certain trigger events in an automation system.
Â¢ SMS can also be used in areas where small text information has to be sent. The transmitter can be an automation system for machines like vending machines, collection machines or applications like positioning systems where the navigator keeps on sending SMS at particular time intervals.
Â¢ SMS can be a solution where GSM data call or GPRS services are not available.
3. GSM Data Calls: Data calls can be made using this modem. Data calls can be made to a normal PSTN modem/phone line also (even received). Data calls are basically made to send/receive data streams between two units either PCâ„¢s or embedded devices. The advantage of Data calls over SMS is that both parties are capable of sending/receiving data through their terminals.
4.6 POWER SUPPLY
Fig 4.6: Circuit diagram of power supply
Step down transformer
When AC is applied to the primary winding of the power transformer it can either be stepped down or up depending on the value of DC needed. In our circuit the transformer of 230v/15-0-15v is used to perform the step down operation where a 230V AC appears as 15V AC across the secondary winding . One alteration of input causes the top of the transformer to be positive and the bottom negative. The next alteration will temporarily cause the reverse. The current rating of the transformer used in our project is 2A. Apart from stepping down AC voltages, it gives isolation between the power source and power supply circuitries.
In the power supply unit, rectification is normally achieved using a solid state diode. Diode has the property that will let the electron flow easily in one direction at proper biasing condition. As AC is applied to the diode, electrons only flow when the anode and cathode is negative. Reversing the polarity of voltage will not permit electron flow.
A commonly used circuit for supplying large amounts of DC power is the bridge rectifier. A bridge rectifier of four diodes (4*IN4007) are used to achieve full wave rectification. Two diodes will conduct during the negative cycle and the other two will conduct during the positive half cycle. The DC voltage appearing across the output terminals of the bridge rectifier will be somewhat lass than 90% of the applied rms value. Normally one alteration of the input voltage will reverse the polarities. Opposite ends of the transformer will therefore always be 180 deg out of phase with each other.
For a positive cycle, two diodes are connected to the positive voltage at the top winding and only one diode conducts . At the same time one of the other two diodes conducts for the negative voltage that is applied from the bottom winding due to the forward bias for that diode. In this circuit due to positive half cycleD1 & D2 will conduct to give 10.8v pulsating DC. The DC output has a ripple frequency of 100Hz. Since each altercation produces a resulting output pulse, frequency = 2*50 Hz. The output obtained is not a pure DC and therefore filtration has to be done.
Filter circuits which are usually a capacitor acting as a surge arrester always follow the rectifier unit. This capacitor is also called as a decoupling capacitor or a bypassing capacitor, is used not only to Ëœshortâ„¢ the ripple with frequency of 120Hz to ground but also to leave the frequency of the DC to appear at the output. A load resistor R1 is connected so that a reference to the ground is maintained. C1R1 is for bypassing ripples. C2R2 is used as a low pass filter, i.e. it passes only low frequency signals and bypasses high frequency signals. The load resistor should be 1% to 2.5% of the load.
The voltage regulators play an important role in any power supply unit. The primary purpose of a regulator is to aid the rectifier and filter circuit in providing a constant DC voltage to the device. Power supplies without regulators have an inherent problem of changing DC voltage values due to variations in the load or due to fluctuations in the AC liner voltage. With a regulator connected to the DC output, the voltage can be maintained within a close tolerant region of the desired output. IC7812 and 7805 is used in this project for providing +12V and +5V supply.
Fig 4.7: Circuit diagram
INTRODUCTION TO AT COMMANDS
INTRODUCTION TO AT COMMANDS
AT commands are instructions used to control a modem. AT is the abbreviation of ATtention. Every command line starts with "AT" or "at". That's why modem commands are called AT commands. Many of the commands that are used to control wired dial-up modems, such as ATD (Dial), ATA (Answer), ATH (Hook control) and ATO (Return to online data state), are also supported by GSM/GPRS modems and mobile phones. Besides this common AT command set, GSM/GPRS modems and mobile phones support an AT command set that is specific to the GSM technology, which includes SMS-related commands like AT+CMGS (Send SMS message), AT+CMSS (Send SMS message from storage), AT+CMGL (List SMS messages) and AT+CMGR (Read SMS messages).
5.1 GENERAL SYNTAX
The starting "AT" is the prefix that informs the modem about the start of a command line. It is not part of the AT command name. For example, D is the actual AT command name in ATD and +CMGS is the actual AT command name in AT+CMGS. However, some books and web sites use them interchangeably as the name of an AT command.
5.2 TASKS PERFORMED
Here are some of the tasks that can be done using AT commands with a GSM/GPRS modem or mobile phone:
Â¢ Get basic information about the mobile phone or GSM/GPRS modem. For example, name of manufacturer (AT+CGMI), model number (AT+CGMM), IMEI number (International Mobile Equipment Identity) (AT+CGSN) and software version (AT+CGMR).
Â¢ Get basic information about the subscriber. For example, MSISDN (AT+CNUM) and IMSI number (International Mobile Subscriber Identity) (AT+CIMI).
Â¢ Get the current status of the mobile phone or GSM/GPRS modem. For example, mobile phone activity status (AT+CPAS), mobile network registration status (AT+CREG), radio signal strength (AT+CSQ), battery charge level and battery charging status (AT+CBC).
Â¢ Establish a data connection or voice connection to a remote modem (ATD, ATA, etc).
Â¢ Send and receive fax (ATD, ATA, AT+F*).
Â¢ Send (AT+CMGS, AT+CMSS), read (AT+CMGR, AT+CMGL), write (AT+CMGW) or delete (AT+CMGD) SMS messages and obtain notifications of newly received SMS messages (AT+CNMI).
Â¢ Read (AT+CPBR), write (AT+CPBW) or search (AT+CPBF) phonebook entries.
Â¢ Perform security-related tasks, such as opening or closing facility locks (AT+CLCK), checking whether a facility is locked (AT+CLCK) and changing passwords (AT+CPWD).(Facility lock examples: SIM lock [a password must be given to the SIM card every time the mobile phone is switched on] and PH-SIM lock [a certain SIM card is associated with the mobile phone. To use other SIM cards with the mobile phone, a password must be entered.])
Â¢ Control the presentation of result codes / error messages of AT commands. For example, you can control whether to enable certain error messages (AT+CMEE) and whether error messages should be displayed in numeric format or verbose format (AT+CMEE=1 or AT+CMEE=2).
Â¢ Get or change the configurations of the mobile phone or GSM/GPRS modem. For example, change the GSM network (AT+COPS), bearer service type (AT+CBST), radio link protocol parameters (AT+CRLP), SMS center address (AT+CSCA) and storage of SMS messages (AT+CPMS).
Â¢ Save and restore configurations of the mobile phone or GSM/GPRS modem. For example, save (AT+CSAS) and restore (AT+CRES) settings related to SMS messaging such as the SMS center address.
There are two types of AT commands: basic commands and extended commands.
Â¢ Basic commands are AT commands that do not start with "+". For example, D (Dial), A (Answer)
Â¢ Extended commands are AT commands that start with "+". All GSM AT commands are
extended commands. For example, +CMGS (Send SMS message), +CMGL (List SMS
messages) and +CMGD (DELETE SMS messages) are extended commands.
5.4 READING AND SENDING SMS USING AT COMMANDS
Reading Messages: To enable a computer / PC to read SMS messages from a message storage area, the GSM/GPRS modem or mobile phone has to support either of the AT commands +CMGR (command name in text: Read Messages) and +CMGL (command name in text: List Messages). The +CMGR AT command is used to read an SMS message at a certain location of the message storage area, while the +CMGL AT command is used to read SMS messages that have a certain status from the message storage area. The status can be "received unread", "received read", "stored unsent", "stored sent", etc. The +CMGL AT command also allows you to retrieve all SMS messages stored in the message storage area.
Following is an example for illustrating the difference between +CMGR and +CMGL. Suppose you want to use your computer / PC to read a text message from the message storage area and you know the index at which the SMS text message is located. In this case, you should use the +CMGR AT command. Here is the command line to be typed (assume the SMS text message is stored at index 3)
The GSM/GPRS modem or mobile phone should return something like this:
+CMGR: "REC READ","+85291234567",,"07/02/18,00:12:05+32"
Hello, welcome to our SMS tutorial.
Suppose you are now in another situation. You want to use your computer / PC to retrieve all inbound SMS messages that have not been read before. In this case, you should use the +CMGL AT command. In SMS text mode, the command line to be used should be:
The GSM/GPRS modem or mobile phone should return something like this:
+CMGL: 1,"REC UNREAD","+85291234567",07/02/18, 00:05:10+32"
Reading text messages is easy.
+CMGL: 2,"REC UNREAD","+85291234567",07/02/18, 00:07:22+32"
A simple demo of SMS text messaging.
The +CMGL AT command can also be used to read all SMS messages stored in the message storage area. To do so in SMS text mode, the command line should be: AT+CMGL="ALL". This time the response of the GSM/GPRS modem or mobile phone should be something like this:
+CMGL: 1,"REC READ","+85291234567",,"07/02/18,00:05:10+32"
Reading text messages is easy.
+CMGL: 2,"REC READ","+85291234567",,"07/02/18,00:07:22+32"
A simple demo of SMS text messaging.
+CMGL: 3,"REC READ","+85291234567",,"07/02/18,00:12:05+32"
Hello, welcome to our SMS tutorial.
As you can see above, the +CMGR AT command can only be used to read one SMS message at a time, while the +CMGL AT command can be used to read multiple SMS messages at a time.
Sending Messages: To send SMS messages, first place a valid SIM card from a wireless carrier into a mobile phone or GSM/GPRS modem, which is then connected to a computer. There are several ways to connect a mobile phone or GSM/GPRS modem to a computer. For example, they can be connected through a serial cable, a USB cable, a Bluetooth link or an infrared link. The actual way to use depends on the capability of the mobile phone or GSM/GPRS modem. For example, if a mobile phone does not support Bluetooth, it cannot connect to the computer through a Bluetooth link.
After connecting a mobile phone or GSM/GPRS modem to, you can control the mobile phone or GSM/GPRS modem by sending instructions to it. The instructions used for controlling the mobile phone or GSM/GPRS modem are called AT commands. (AT commands are also used to control dial-up modems for wired telephone system.) Dial-up modems, mobile phones and GSM/GPRS modems support a common set of standard AT commands. In addition to this common set of standard AT commands, mobile phones and GSM/GPRS modems support an extended set of AT commands. One use of the extended AT commands is to control the sending and receiving of SMS messages.
The following table lists the AT commands that are related to the writing and sending of SMS messages:
AT command Meaning
+CMGS Send message
+CMSS Send message from storage
+CMGW Write message to memory
+CMGD Delete message
+CMGC Send command
+CMMS More messages to send
6.1 INTRODUCTION TO KEIL
Keil MicroVision is an integrated development environment used to create software to be run on embedded systems (like a microcontroller). It allows for such software to be written either in assembly or C programming languages and for that software to be simulated on a computer before being loaded onto the microcontroller.
Ã‚ÂµVision3 is an IDE (Integrated Development Environment) that helps write, compile, and debug embedded programs. It encapsulates the following components:
Â¢ A project manager.
Â¢ A make facility.
Â¢ Tool configuration.
Â¢ A powerful debugger.
To create a new project in uVision3:
1. Select Project - New Project.
2. Select a directory and enter the name of the project file.
3. Select Project â€œSelect Device and select a device from Device Database.
4. Create source files to add to the project
5. Select Project - Targets, Groups, and Files. Add/Files, select Source Group1, and add the
source files to the project.
6. Select Project - Options and set the tool options. Note that when the target device is selected from the Device Database all-special options are set automatically. Default memory model settings are optimal for most applications.
7. Select Project - Rebuild all target files or Build target.
To create a new project, simply start MicroVision and select Project=>New Project from the pullâ€œdown menus. In the file dialog that appears, choose a name and directory for the project. It is recommended that a new directory be created for each project, as several files will be generated. Once the project has been named, the dialog shown in the figure below will appear, prompting the user to select a target device. In this lab, the chip being used is the AT89C52, which is listed under the heading Atmel.
Fig 6.1: Window for choosing target device.
Next, Micro Vision must be instructed to generate a HEX file upon program compilation. A HEX file is a standard file format for storing executable code that is to be loaded onto the microcontroller. In the Project Workspace pane at the left, rightâ€œclick on Target 1 and select Options for ËœTarget 1â„¢ .Under the Output tab of the resulting options dialog, ensure that both the Create Executable and Create HEX File options are checked. Then click OK.
Fig 6.2: Project Options Dialog
Next, a file must be added to the project that will contain the project code. To do this, expand the Target 1 heading, rightâ€œclick on the Source Group 1 folder, and select Add filesÂ¦ Create a new blank file (the file name should end in .asm), select it, and click Add. The new file should now appear in the Project Workspace pane under the Source Group 1 folder. Double-click on the newly created file to open it in the editor. All code for this lab will go in this file. To compile the program, first save all source files by clicking on the Save All button, and then click on the Rebuild All Target Files to compile the program as shown in the figure below. If any errors or warnings occur during compilation, they will be displayed in the output window at the bottom of the screen. All errors and warnings will reference the line and column number in which they occur along with a description of the problem so that they can be easily located. Note that only errors indicate that the compilation failed, warnings do not (though it is generally a good idea to look into them anyway).
Fig 6.3: Project Workspace Pane
Fig 6.4: Save All and Build All Target Files Buttons
When the program has been successfully compiled, it can be simulated using the integrated debugger in Keil MicroVision. To start the debugger, select Debug=>Start/Stop Debug Session from the pullâ€œdown menus.
At the left side of the debugger window, a table is displayed containing several key parameters about the simulated microcontroller, most notably the elapsed time (circled in the figure below). Just above that, there are several buttons that control code execution. The Run button will cause the program to run continuously until a breakpoint is reached, whereas the Step Into button will execute the next line of code and then pause (the current position in the program is indicated by a yellow arrow to the left of the code).
Fig 6.5: Ã‚ÂµVision3 Debugger window
The programmer used is a powerful programmer for the Atmel 89 series of microcontrollers that includes 89C51/52/55, 89S51/52/55 and many more.
It is simple to use & low cost, yet powerful flash microcontroller programmer for the Atmel 89 series. It will Program, Read and Verify Code Data, Write Lock Bits, Erase and Blank Check. All fuse and lock bits are programmable. This programmer has intelligent onboard firmware and connects to the serial port. It can be used with any type of computer and requires no special hardware. All that is needed is a serial communication port which all computers have.
All devices also have a number of lock bits to provide various levels of software and programming protection. These lock bits are fully programmable using this programmer. Lock bits are useful to protect the program to be read back from microcontroller only allowing erase to reprogram the microcontroller.
Major parts of this programmer are Serial Port, Power Supply and Firmware microcontroller. Serial data is sent and received from 9 pin connector and converted to/from TTL logic/RS232 signal levels by MAX232 chip. A Male to Female serial port cable, connects to the 9 pin connector of hardware and another side connects to back of computer. All the programming Ëœintelligenceâ„¢ is built into the programmer so you do not need any special hardware to run it. Programmer comes with window based software for easy programming of the devices.
1. The flowchart given below represents the working of the system.
6.4 SOURCE CODE
START: MOV P0,#0FFH
JN01: MOV @R1,A
LOP9: ACALL DELAY
LOOP: MOV A,#00H
RECV: JNB RI,$
NNT8: JC LOP99
JN21: CJNE A,#01H,JN22
JN22: CJNE A,#02H,JN23
JN23: CJNE A,#03H,JN24
JN24: CJNE A,#04H,JN25
JN25: AJMP LOP9
CHEK: MOV A,32H
KK11: MOV A,@R0
CHK4: MOV DPTR,#MES2
LOO1: MOV A,#00H
CSN1: MOV A,#00H
CO1T: MOV A,#00H
SEND: CLR TI
MOV SBUF, A
WAIT: JNB TI, WAIT
MOV TH1, #0FDH
MOV PCON, #00000000B
MOV SCON, #01010000B
MOV TMOD, #00100001B
MOV TCON, #01000000B
DISP: MOV R0,#00H
DDSP: MOV A,@R1
LCD: MOV A,#38H
HHR: CLR P1.3
MES1: DB 'AT+CMGL="REC UNREAD"'
MES2: DB 'AT+CMGD=2'
MES3: DB 'AT+CMGS="9844003618"'
MS11: DB 'MESSAGE HAS BEEN LOADED IN UNIT'
HHR2: MOV 09H,#0FFH
HHR1: MOV 08H,#0FFH
H1R: DJNZ 08H,H1R
Â¢ Educational Institutions and Organizations: Currently we rely on putting up papers on notice boards to inform people of events. This method can be discarded by using wireless notice boards to display information in real time.
Â¢ Crime Prevention: Display boards put up on roads will display tips on public security, accident prevention, information on criminals on the run. The board will help flash messages such as vehicle thefts as and when they occur.
Â¢ Managing Traffic: In metropolitan cities we frequently come across traffic jams. One way to avoid this would be inform people beforehand to take alternate routes. A wireless notice board serves well for this purpose.
Â¢ Advertisement: In shopping malls we get to hear the offers on various products from time to time. Instead we continuously display the information regarding the products and related offers on electronic display boards.
Â¢ Railway Station: Instead of announcing the delay in arrival of trains we can display the information.
Â¢ User friendly: Messages are only to be typed on a mobile or a computer, which in turn are displayed wirelessly on the display unit.
Â¢ Eliminates use of printers: Since we donâ„¢t use papers to display information, printers are also of no use in this system.
Â¢ Faster means of transferring information: There is no delay in transmission of information. Messages are displayed in a matter of seconds after typing.
Â¢ Long Range: As long as we have the required network coverage we can send messages from any part of the world.
Â¢ Dependent on signal strength: Messages are not transmitted if there is weak network coverage.
Â¢ Volatile memory used for message storage: Messages last only as long as power is ON.
7.4 FUTURE ENHANCEMENTS
Â¢ A commercial model should be able to display more than one message at a time. Currently in our project we are using onboard RAM memory to save a single message. To overcome this shortcoming we can interface an EEPROM to save messages. This not only allows more than one message to be displayed at a time but also allows us to retrieve messages from the EEPROM even after a power failure.
Â¢ Alphanumeric LCDs have a limitation on size as well as no of characters. These can be replaced with large LED display boards which are not only eye catching but display characters in a moving fashion one after the other.
Â¢ In our project we are sending messages via GSM network and displaying on a LCD by utilizing AT commands. The same principle can be applied to control electrical appliances at a distant location.
Â¢ Robots can be controlled in a similar fashion by sending the commands to the robots. These commands are read by using AT commands and appropriate action is taken. This can be used for spy robots at distant locations, utilized by the military to monitor movement of enemy troops.
Â¢ Currently farmers have to manually put on or off pumps, drippers etc by using electric switches. Using the principle of AT commands we can put on or off these appliances remotely.
Now a days every advertisement is going to be digital. The big shops and shopping centers are using the digital moving displays now. In Railway station and bus stands everything from ticket information to platform number etc is displayed on digital moving displays. But in these displays if they want to change the message they have to go to the place of the display and connect the display to PC or laptop.
Suppose the same message is to be displayed in main centers of cities to display critical messages then we have to go there with a laptop and change the message by connecting it to the display board. This project can be used mainly for police or army to display something crucial within a matter of seconds So keeping this in mind we are designing a new display system which we can access remotely, thus utilizing GSM technology.
This project is a remote notice board with modem connected to it, so if the user wants to display some messages, he will send the messages in SMS format. The modem in the display system will receive the message and update the display according to the message. For every message received, the system will check for the source number and if the source number is correct the controller will display the message.
The outcome of this project is an embedded system providing wireless transmission from one point to the other via a GSM network. This system not only eliminates the shortcomings of the previous methods used to inform the masses but also is a reliable and fast medium for data transmission. Apart from the wide applications already mentioned, it has wide scope for further enhancements in the field of embedded systems where telecommunication is a vital part of the system and thereby holds the power to change the face of present communication systems.
1. The 8051Microcontroller by Kenneth J. Ayala
2. The 8051 Microcontroller and Embedded Systems by Muhammad Ali Mazidi.
3. Principles and Applications of GSM by Vijay Garg.