#include <cfg/os.h>#include <sys/timer.h>#include <dev/uart.h>#include <stdlib.h>#include <string.h>#include <io.h>#include <memdebug.h>#include <dev/chat.h>
Go to the source code of this file.
Functions | |
| void | NutTraceChat (FILE *stream, uint8_t flags) |
| Control chat tracing. | |
| int | NutChatExpectString (NUTCHAT *ci, char *str) |
| Wait for a specific string to appear. | |
| int | NutChatExpect (NUTCHAT *ci, char *str) |
| int | NutChatSend (NUTCHAT *ci, char *str) |
| Process a chat send argument. | |
| NUTCHAT * | NutChatCreate (int fd) |
| Create a NUTCHAT structure. | |
| void | NutChatDestroy (NUTCHAT *ci) |
| Destroy a previously created NUTCHAT structure. | |
| int | NutChat (int fd, CONST char *script) |
| Execute a conversational exchange with a serial device. | |
| int | NutChat_P (int fd, PGM_P script) |
| Execute a conversational exchange with a serial device. | |
Variables | |
| uint8_t * | chat_report |
| int NutChatExpectString | ( | NUTCHAT * | ci, |
| char * | str | ||
| ) |
Wait for a specific string to appear.
| ci | Pointer to a NUTCHAT structure, which must have been created by NutChatCreate(). |
| str | Expected string. May be empty if nothing is expected. |
Definition at line 131 of file chat.c.
References _read(), NUTCHAT::chat_abomat, NUTCHAT::chat_abort, NUTCHAT::chat_aborts, NUTCHAT::chat_fd, CHAT_MAX_REPORT_SIZE, NUTCHAT::chat_repmat, chat_report, NUTCHAT::chat_report_search, NUTCHAT::chat_report_state, fprintf(), fprintf_P, fputc(), fputs_P, and prog_char.
Referenced by NutChatExpect().

| int NutChatExpect | ( | NUTCHAT * | ci, |
| char * | str | ||
| ) |
Definition at line 357 of file chat.c.
References NUTCHAT::chat_arg, CHAT_ARG_ABORT, CHAT_ARG_REPORT, CHAT_ARG_TIMEOUT, NUTCHAT::chat_fd, NUTCHAT::chat_repmat, NUTCHAT::chat_report_state, NutChatExpectString(), and strcmp().

| int NutChatSend | ( | NUTCHAT * | ci, |
| char * | str | ||
| ) |
Process a chat send argument.
| ci | Pointer to a NUTCHAT structure, which must have been created by NutChatCreate(). |
| str | String containing the chat send argument. |
Definition at line 413 of file chat.c.
References _ioctl(), atol(), NUTCHAT::chat_abort, NUTCHAT::chat_aborts, NUTCHAT::chat_arg, CHAT_ARG_ABORT, CHAT_ARG_REPORT, CHAT_ARG_SEND, CHAT_ARG_TIMEOUT, CHAT_DEFAULT_TIMEOUT, NUTCHAT::chat_fd, CHAT_MAX_ABORTS, CHAT_MAX_REPORT_SIZE, chat_report, NUTCHAT::chat_report_search, malloc(), strlen(), and UART_SETREADTIMEOUT.

| NUTCHAT* NutChatCreate | ( | int | fd | ) |
| void NutChatDestroy | ( | NUTCHAT * | ci | ) |
Destroy a previously created NUTCHAT structure.
| ci | Pointer to a NUTCHAT structure, which must have been created by NutChatCreate(). |
Definition at line 533 of file chat.c.
References NUTCHAT::chat_abort, NUTCHAT::chat_aborts, and free().

| int NutChat | ( | int | fd, |
| CONST char * | script | ||
| ) |
Execute a conversational exchange with a serial device.
Its primary purpose is to establish a modem connection.
| fd | Descriptor of a previously opened device. |
| script | Pointer to a string containing the chat script. |
Definition at line 662 of file chat.c.
References free(), and strdup().

| int NutChat_P | ( | int | fd, |
| PGM_P | script | ||
| ) |
Execute a conversational exchange with a serial device.
Similar to NutChat() except that the chat string is located in program memory.
Definition at line 689 of file chat.c.
References free(), malloc(), strcpy_P, and strlen_P.

Definition at line 75 of file chat.c.
Referenced by NutChatExpectString(), and NutChatSend().