我本设计介绍了一种基于STM32的多功能GSM通讯系统设计方案。系统以STM32单片机为核心,采用SIM900模块GSM通讯,利用μC/OS-
II与μC/GUI系统进行多任务与TFT彩屏的控制,并通过STM32的串口控制GSM模块STM900实现通讯。
系统通过STM32的SPI接口实现触控从而实现系统的输入、通过STM32的FSMC接口实现TFT显示从而实现系统的输出。通过STM32的串口可有效发送与接收GSM模块的信息。手机SIM900模块GSM通讯系统
OS_EVENT* Com1_MBOX;
OS_EVENT* Clock_SEM;
//ucosII任务堆栈设置
//设置任务优先级
#define START_TASK_PRIO 20
#define Clock_Updata_PRIO 3 //时钟秒中断更新任务
#define Task_Com1_PRIO 2 //串口更新任务
#define TOUCH_TASK_PRIO 5 //触控更新任务
#define USER_TASK_PRIO 6 //界面创建与更新任务
#define APP_TASK_USER_IF_PRIO 7 //时钟显示更新
#define PAINT_TASK_PRIO 9 //画刷APP
//设置任务堆栈大小
#define START_STK_SIZE 512 // 空间大小=128*4(字节)
#define USER_STK_SIZE 4000 // 空间大小=128*4(字节)
#define TOUCH_STK_SIZE 64 // 空间大小=128*4(字节)
#define PAINT_STK_SIZE 512 // 空间大小=128*4(字节)
#define Clock_Updata_STK_SIZE 64
#define APP_TASK_USER_IF_STK_SIZE 512
#define Task_Com1_STK_SIZE 2048
//创建任务堆栈空间
OS_STK START_TASK_STK[START_STK_SIZE];
OS_STK USER_TASK_STK[USER_STK_SIZE];
OS_STK TOUCH_TASK_STK[TOUCH_STK_SIZE];
OS_STK PAINT_TASK_STK[PAINT_STK_SIZE];
OS_STK Clock_Updata_Stk[Clock_Updata_STK_SIZE];
OS_STK AppTaskUserIFStk[APP_TASK_USER_IF_STK_SIZE];
OS_STK Task_Com1Stk[Task_Com1_STK_SIZE];
void RCC_Configuration(void);
void GPIO_Configuration(void);
void GUI_LED_Create(void);
void NVIC_Configuration(void);
void USART_Config(USART_TypeDef* USARTx,u32 baud);
void start_task(void *pdata);
void user_task(void *pdata);
void touch_task(void *pdata);
void paint_task(void *pdata);
void Task_Com1(void* p_arg);
int main(void)