how to generate sms


Published on

Published in: Education
1 Like
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

how to generate sms

  1. 1. <ul><li>BY, </li></ul><ul><li>K SUMANT VENU GOPAL REDDY(05C01A04A4) </li></ul><ul><li>Y SUSHMA REDDY(05C01A04A7) </li></ul>DESIGN AND DEVELOPMENT OF SOFTWARE FOR SMS IN MOBILES Internal Guide: Amarnath
  2. 2. About The Project <ul><li>Regarding the size of the mobile, </li></ul><ul><li>SMS generation, </li></ul><ul><li>What is mobile? </li></ul><ul><li>First invention, </li></ul><ul><li>Operation of mobile previously, </li></ul><ul><li>Size of the mobile, </li></ul><ul><li>Working frequency, </li></ul>
  3. 3. <ul><li>LPC 2129 microprocessor </li></ul><ul><li>LCD </li></ul><ul><li>Wavecom modem </li></ul><ul><li>Keypad </li></ul><ul><li>JTAG debugger </li></ul><ul><li>Battery </li></ul><ul><li>SOFTWARE REQUIRED: </li></ul><ul><li>Embedded C </li></ul><ul><li>Keil development board </li></ul><ul><li>Embest IDE for ARM </li></ul>EQUIPMENTS REQUIRED:
  4. 4. <ul><li>What is embedded system? </li></ul><ul><li>Special purpose computer system, </li></ul><ul><li>Dedicated to specific task, </li></ul><ul><li>Combination of software and hardware, </li></ul><ul><li>Decreases size and cost of the product, </li></ul><ul><li>Increasing the reliability and performance </li></ul><ul><li>What is the difference between C and Embedded C? </li></ul><ul><li>C is for desktop computer and Embedded C is for microcontroller based, </li></ul><ul><li>C uses the total memory of the system like OS, etc. but Embedded C uses the limited memory of the system such as RAM, ROM, PORTS, etc…, </li></ul><ul><li>In C we have headers like <studio.h>, using which the system yields output file which is feasible to OS , but in Embedded C, everything is same except, a output file is loaded in to the controller. </li></ul>
  5. 5. INPUT CONTROL UNIT OUTPUT BLOCK DIAGRAM : signal input K e y p a d voltage LPC 2129 LCD 3310
  6. 6. Block Diagram : LPC 2129 On off switch LCD 3310 1.8 volts Generator Wavecom modem Mic & speaker Buzzer Antenna Battery SIM holder Level Converter 4*5 matrix keyboard JTAG debugger Serial Port for down loading software Charger input serial port
  7. 7. GSM: <ul><li>Global System For Mobile, originally was Groupe Special Mobile, </li></ul><ul><li>Working frequency, </li></ul><ul><li>more than 45 million cellular subscribers worldwide are using, and nearly 50 percent of those subscribers are located in the United States, </li></ul><ul><li>GSM was first invented by NMT in 1982, </li></ul><ul><li>In 1987 GSM started using narrowband time division multiple access (TDMA) </li></ul><ul><li>GSM allows network operators to offer roaming services so that subscribers can use their phones on GSM networks all over the world </li></ul>
  9. 9. LPC 2129 <ul><li>Philips product </li></ul><ul><li>Is an ARM7TDMI-S based high-performance 32-bit RISC Microcontroller with Thumb extensions </li></ul><ul><li>256KB on-chip Flash ROM with In-System Programming (ISP) and In-Application Programming (IAP) 16KB RAM, Vectored Interrupt Controller, </li></ul><ul><li>Collection of Two UARTs, I2C serial interface, 2 SPI serial interfaces Two timers (7 capture/compare channels), PWM unit with up to 6 PWM outputs, 4-channels 10bit ADC, 2 CAN channels. Real Time Clock, Watchdog Timer, General purpose I/O pins. </li></ul><ul><li>CPU clock up to 60 MHz, On-chip crystal oscillator and On-chip PLL. </li></ul><ul><li>Has competition from Samsung, Atmel, etc.. </li></ul>
  10. 10. Features Of LPC 2129 <ul><li>1. 0.18-micron CMOS embedded Flash process, enabling ultra-low. 2. 1.8V voltage operation, 3 .Up to 256K bytes of embedded Flash memory , 4 .popular communication peripherals including UARTs, SPI (Service Provider Interface), I2C Inter- </li></ul><ul><li>Integrated Circuit, CAN, </li></ul><ul><li>5 .Four channel 10-bit A/D converter 6 .Up to 112 general-purpose input/outputs , </li></ul><ul><li>7 .In-System Programming ISP and In-Application Programming, 8 .Vectored Interrupt Controller (VIC) with configurable priorities </li></ul><ul><li>and vector addresses , </li></ul><ul><li>9 .Configurable external memory interface with up to four banks, each up to 16 Mb and 8/16/32-bit data , </li></ul><ul><li>10 .Operating temperature range from -40 degrees C to +105 degrees, </li></ul>
  11. 11. ARM7TDMI-S : <ul><li>The ARM design was started in 1983 as a development project at Acorn Computers Ltd to build a compact RISC CPU. Led by Sophie Wilson and Steve Furber. </li></ul><ul><li>ARM7TDMI-S = ARM7 + TDMI </li></ul><ul><li>What is ARM7? </li></ul><ul><li>ARM7 is the heart of LPC 2129, </li></ul><ul><li>RISC makes ARM7 ideal for embedded systems, </li></ul><ul><li>High performance, </li></ul><ul><li>Low power consumption, </li></ul><ul><li>Takes small amount of available silicon diode area, </li></ul><ul><li>What is THUMB? </li></ul><ul><li>16-bit instruction set , </li></ul><ul><li>It is compressed form of the ARM instruction set., </li></ul><ul><li>Concept of Interworking, </li></ul>
  12. 12. THUMB Instruction set: REGISTERS: Set of registers consists of bank of 16 user registers R0-R15, each of 32-bit length, 16 bit Thumb code Instruction pipeline Thumb Decompressor ARM instruction Decoder MEMORY MEMORY SET OF REGISTERS
  13. 13. R0-R12 are general purpose registers, R13- stack pointer R14- link register R15- program counter In addition to the banks it consists of 32 bit wide register called “ current program status register(CPSR )” N,Z,C,V are the Conditional Code Flags For example: ARM Instruction THUMB Instruction ADD R0,R0,R1 ADD R0,R1 R0=R0+R1 M 0 M 1 M 2 M 3 T 4 F 5 I 6 V 28 C 29 Z 30 N 31
  14. 14. L C D Liquid Crystal Display
  15. 15. LCD Interfacing <ul><li>Generally we use 2x16 LCD. </li></ul><ul><li>It has 2 rows and 16 columns. </li></ul>
  16. 16. LCD Pin Description <ul><li>2x16 LCD has 16 pins. </li></ul><ul><li>Pin1 is Vss (Ground) </li></ul><ul><li>Pin2 is Vcc (Power supply) </li></ul><ul><li>Pin3 is Vee (Contrast) </li></ul><ul><li>Pin4 is RS (Register Select) </li></ul><ul><li>Pin5 is R/W (Read or Write) </li></ul><ul><li>Pin6 is E (Enable) </li></ul><ul><li>Pin7 - Pin14 are Data Pins. </li></ul><ul><li>7 th pin is D0 </li></ul><ul><li>… .. </li></ul><ul><li>14 th pin is D7 </li></ul><ul><li>Pin15 is Vcc (Back Light) </li></ul><ul><li>Pin16 is Ground. </li></ul><ul><li>If we not connect the Pins 15&16, the backlight of LCD will be OFF. </li></ul>
  17. 17. LCD Registers <ul><li>RS, register select </li></ul><ul><li>If RS = 0, the instruction command code register is selected, allowing the user to send a command. </li></ul><ul><li>If RS = 1, the data register is selected, allowing the user to send data to be displayed on the LCD. </li></ul><ul><li>R/W = 1, input allows the user to read from the LCD. </li></ul><ul><li>R/W = 1, input allows the user to read from the LCD. </li></ul><ul><li>E, enable </li></ul><ul><li>A high-to-low pulse must be applied to this pin in order to transmit the data to LCD </li></ul><ul><li>The Pulse must be a minimum of 450ns. </li></ul>
  18. 18. Keypad Interfacing
  19. 19. Keypad Interface <ul><li>Assign Ports for Columns and Rows. </li></ul><ul><li>Make columns as Input Port ( 0xFF ). </li></ul><ul><li>Connect rows to Output Port ( 0x00 ). </li></ul><ul><li>Define an array for the Key values </li></ul><ul><li>array [rows] [columns] </li></ul><ul><li>Mask unused bits, read values from columns. </li></ul><ul><li>Wait for any key is pressed... </li></ul><ul><li>First search in Row0 by making all the pins high and row0 pin low. </li></ul><ul><li>Read the column value, and check whether the pressed key is in that row or not. </li></ul><ul><li>If its not, repeat the same for Row1, 2, 3…. </li></ul><ul><li>Once you detect which row is detected then search for column by making the similar way as rows. </li></ul><ul><li>After detecting row and column, take the corresponding value from the array. </li></ul>
  21. 21. Serial Communication: <ul><li>Serial communication is a form of I/O in which the bits of byte is transferred one after the other in a timed sequence on a single wire. </li></ul><ul><li>Serial communication is often used to transmit or receive data from the embedded processor. </li></ul><ul><li>Steps To Do Serial Communication : </li></ul><ul><li>configure the TMOD register. </li></ul><ul><li>At which baud rate you are transmitting the data. </li></ul><ul><li>configure the SCON register. </li></ul><ul><li>start the timer . </li></ul><ul><li>send data to the serial buffer. </li></ul><ul><li>Monitor for the TI or RI flag. </li></ul>
  22. 22. THANK YOU!!!