sms.c-Dateireferenz

ermöglicht das Senden einer Textnachricht über ein Mobiltelefon Mehr ...

#include "sms.h"
#include "uart.h"

Include-Abhängigkeitsdiagramm für sms.c:


Funktionen

uint8_t str2int (char data)
void sms_init (void)
void sms_time (unsigned char *year, unsigned char *month, unsigned char *day, unsigned char *hour, unsigned char *minute, unsigned char *second)
void sms_send (char *zielnr, char *nachricht)
void sms_decode (char *pdu, SMS_DECODE_DATA_T *data)
void sms_display_text (char *nachricht)
uint8_t sms_check_nr (char *telnr_in)
SMS_MSG sms_state_machine (void)
uint8_t sms_cmdset (uint8_t dat)

Variablen

volatile SMS_DECODE_DATA_T sms_dec_data
SMS_TELNR_LIST_T sms_telnr_list [SMS_TELNR_LIST_MAX]
char sms_last_caller [SMS_TELNR_MAX_LEN+1] = {""}
uint8_t anz_klingeln = 0
const SMS_CMD_LIST_T sms_cmd_list []

Ausführliche Beschreibung

ermöglicht das Senden einer Textnachricht über ein Mobiltelefon

Autor:
Lars Neubert
Datum:
March 2010

Dokumentation der Funktionen

uint8_t str2int ( char  data  ) 

Wandelt ein Zeichen in eine Hexzahl um

Parameter:
data Zeichen, welches umgewandelt werden soll
Rückgabe:
Hexzahl equivalent von 'data'

void sms_init ( void   ) 

Initialisiert die serielle Schnittstelle und öffnet einen Kanal für Standard Ein-/Ausgabe (printf, gets, scanf,...)

Hier ist ein Graph der zeigt, was diese Funktion aufruft:

void sms_time ( unsigned char *  year,
unsigned char *  month,
unsigned char *  day,
unsigned char *  hour,
unsigned char *  minute,
unsigned char *  second 
)

Ließt Datum und Zeit aus dem Mobiltelefon aus

Parameter:
year Pointer auf Speicherstelle für Jahreszahl
month Pointer auf Speicherstelle für Monat
day Pointer auf Speicherstelle für Tag
hour Pointer auf Speicherstelle für Stunde
minute Pointer auf Speicherstelle für Minute
second Pointer auf Speicherstelle für Sekunde

Hier ist ein Graph der zeigt, was diese Funktion aufruft:

void sms_send ( char *  zielnr,
char *  nachricht 
)

Sendet eine SMS mit dem Inhalt "nachricht" an "zielnr"

Parameter:
zielnr Pointer auf Zielnummer der SMS
nachricht Pointer auf Nachricht der SMS an Zielnummer

void sms_decode ( char *  pdu,
SMS_DECODE_DATA_T data 
)

Decodiert eine SMS im PDU Format

Parameter:
pdu Pointer aud den komplette PDU-String (angefangen mit Länge des Headers, SMSC Nr, etc)
data Pointer auf Struktur vom Typ SMS_DECODE_DATA_TYPE (in sms.h definiert)
zum speichern der decodierten Daten (Nachricht in Klartext, Telefonnummer, Datum, Zeit)

Hier ist ein Graph der zeigt, was diese Funktion aufruft:

void sms_display_text ( char *  nachricht  ) 

Stellt eine Textnachricht auf dem Mobiltelefon-Display dar

Parameter:
nachricht Pointer auf darzustellende Nachricht auf dem Mobiltelefon-Display

Hier ist ein Graph der zeigt, was diese Funktion aufruft:

uint8_t sms_check_nr ( char *  telnr_in  ) 

Sucht nach Übereinstimmungen der übergebenen Telefonnummer in den gespeicherten Listen (sms_telnr_list oder SMS_TELNR)

Parameter:
telnr_in Vergleichsnummer zum Überprüfen
Rückgabe:
gibt an, ob eine entsprechende Nummer in sms_telnr_list oder SMS_TELNR gefunden wurde (0 - kein Fund, 1 - Fund)

SMS_MSG sms_state_machine ( void   ) 

State Machine zum auswerten der eingegangenen Daten vom Mobiltelefon

Rückgabe:
gibt an, ob ein entsprechender Eintrag in der State Machine gefunden wurde (entsprechend SMS_MSG)

Hier ist ein Graph der zeigt, was diese Funktion aufruft:

uint8_t sms_cmdset ( uint8_t  dat  ) 


Variablen-Dokumentation

anlegen der Struktur zum speichern der decodierten Daten der PDU Zeichenkette (Definition siehe sms.h)

SMS_TELNR_LIST_T sms_telnr_list[SMS_TELNR_LIST_MAX]

anlegen der Struktur zum speichern der Telefonnummernliste zur Anrufererkennung in sms_state_machine (Definition siehe sms.h)
Das Auffüllen des Arrays erfolgt in sms_init.

char sms_last_caller[SMS_TELNR_MAX_LEN+1] = {""}

globale Variable mit Telefonnummer des letzten Anrufers

uint8_t anz_klingeln = 0

Initialisierung:

 {
        {"set",sms_cmdset}
}
konkrete Zuordnung von Befehlsstrings zu einer Funktion vom Typ "uint8_t <fname> (uint8_t dat)"


Erzeugt am Mon May 24 14:41:58 2010 für Siemens_Handy von  doxygen 1.5.7.1