Lire les SMS en Utilisant le GSM900 Module Read et le PIC16F877A micro-controlleur
By Bernice Zuiya
En utilisant un micro-contrôleur qui a un UART (Universal Asynchrone trans-receiver module), il est facile d'interface directe avec le module GSM900 sans intervention d'un convertisseur USB vers série, dans ce projet, je vais donner un code court écrit en incrusté Langage C en utilisant le compilateur mikroC pour PIC
Introduction
Working :
Un PIC16F877A est utilisé pour envoyer ATs Commande au module GSM900 lire et afficher le message à un module d'affichage à cristaux liquides, la connexion entre le module et le contrôleur doit être respecté en ce qui concerne la terre commune, nous pouvons rappeler que le Rx et Tx des deux Partie sont croisées; Ce qui signifie que RX du module est attaché au TX du contrôleur et à l'inverse pour le TX du module mais le sol doit être commun, après le processus d'envoi des commandes AT le message sera affiché sur l'écran LCD
Circuit Diagram
Le diagramme de circuit ci-dessous est le diagramme de base très nécessaire pour le module GSM900 lire les SMS Utilisation du microcontrôleur 16F877A Et afficher le message sur un écran LCD, vous devez respecter les connexions pour obtenir le meilleur résultat.
-
Une résistance de valeur 4k7 ohm est connectée en série avec +5 volt et la broche de réinitialisation (1ère broche)
-
Q1 est l'oscillateur de cristal dans ce cas la fréquence d'oscillation est de 20 MHz.
-
Alimentation: le circuit est connecté à une tension maximale égale à 5 volts
-
C1 & C2 are of 22pF.
Code :
sbit LCD_RS at RB4_bit;
sbit LCD_EN at RB5_bit;
sbit LCD_D4 at RB0_bit;
sbit LCD_D5 at RB1_bit;
sbit LCD_D6 at RB2_bit;
sbit LCD_D7 at RB3_bit;
sbit LCD_RS_Direction at TRISB4_bit;
sbit LCD_EN_Direction at TRISB5_bit;
sbit LCD_D4_Direction at TRISB0_bit;
sbit LCD_D5_Direction at TRISB1_bit;
sbit LCD_D6_Direction at TRISB2_bit;
sbit LCD_D7_Direction at TRISB3_bit;
char txt_1[60];
char coke;
unsigned int i,j;
char *txt1;
void main(void){
UART1_Init(9615);
LCD_Init();
LCD_Cmd(_LCD_Clear);
LCD_Cmd(_LCD_Cursor_off);
Delay_ms(100);
txt_1[59]='\0';
UART1_Write_Text("AT+CMGR=1");
UART1_Write(13);
UART1_Write(10);
while(1){
if(UART1_Data_Ready())
{for(i=0;i<73;){if(UART1_Data_Ready()){coke=UART1_Read();i++;}}
for(i=0;i<58;) // 58 characters should be inserted in txt_1 array
{
if(UART1_Data_Ready())
{
txt_1[i] = UART1_Read();
i++;
}
} // end loop for(i=0;i<58;)
LCD_Out(1,1,txt_1);
for(j=0;j<60;j++){
LCD_Cmd(_LCD_SHIFT_RIGHT);
LCD_Out(2,1," ");
Delay_ms(800);
}
for(j=0;j<60;j++){
LCD_Cmd(_LCD_SHIFT_LEFT);
LCD_Out(2,1," ");
Delay_ms(800);
}
}
}
}
Ce code a été écrit à l'aide du logiciel de compilateur mikroC, vous pouvez le copier et le compiler ou le modifier aussi, ceci est utilisé pour GSM 900 Lire les SMS en utilisant PIC16F877A
Download the full project here