#include "sms.h"
#include "uart.h"
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 [] |
uint8_t str2int | ( | char | data | ) |
Wandelt ein Zeichen in eine Hexzahl um
data | Zeichen, welches umgewandelt werden soll |
void sms_init | ( | void | ) |
Initialisiert die serielle Schnittstelle und öffnet einen Kanal für Standard Ein-/Ausgabe (printf, gets, scanf,...)
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
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 |
void sms_send | ( | char * | zielnr, | |
char * | nachricht | |||
) |
Sendet eine SMS mit dem Inhalt "nachricht" an "zielnr"
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
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) |
void sms_display_text | ( | char * | nachricht | ) |
Stellt eine Textnachricht auf dem Mobiltelefon-Display dar
nachricht | Pointer auf darzustellende Nachricht auf dem Mobiltelefon-Display |
uint8_t sms_check_nr | ( | char * | telnr_in | ) |
Sucht nach Übereinstimmungen der übergebenen Telefonnummer in den gespeicherten Listen (sms_telnr_list oder SMS_TELNR)
telnr_in | Vergleichsnummer zum Überprüfen |
SMS_MSG sms_state_machine | ( | void | ) |
State Machine zum auswerten der eingegangenen Daten vom Mobiltelefon
uint8_t sms_cmdset | ( | uint8_t | dat | ) |
volatile SMS_DECODE_DATA_T sms_dec_data |
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 |
const SMS_CMD_LIST_T sms_cmd_list[] |
Initialisierung:
{ {"set",sms_cmdset} }