Copyright (c) 2014 苏州大学飞思卡尔实验室(版权声明)
All rights reserved.

《AMQXFW_LWMessage》工程说明
时          间：2014-08-12  
版          本：V3.0
作          者：王磊

1. 工程概述
(1)本工程为K60微控制器MQX系统应用工程，提供MQX轻量级消息队列的使用样例
(2)工程中使用了两个轻量级消息队列：server_queue与client_queue，分别用于服务器端任务与客户端任务的消息收发
(3)初始化串口4作为默认通信设备与外界通信，波特率为9600，1位停止位，无校验
(4)客户端任务向服务器端任务发送消息并等待服务器端任务的应答；服务器端任务等待客户端任务的消息，接收后将消息回发作为应答
(5)5个任务：
    task_main:开总中断，系统自启动任务，打印欢迎信息，创建其它任务
    task_A:闪烁小灯1，每1秒切换一次亮暗状态
    task_B:闪烁小灯2，每2秒切换一次亮暗状态
    task_server:服务器端任务。等待等待客户端任务的消息，接收后将消息回发作为应答
    task_client:客户端任务。向服务器端任务发送消息并等待服务器端任务的应答
(6)系统使用外部扩展48M有源晶振，工作时钟总线频率为96M

2. 软件环境
(1)Freescale Kinetis Design Studio v1.1.0
(2)Freescale MQX 4.1.0

3. 硬件环境
(1)K60-C型板
(2)串口4发送引脚为PTE24,接收引脚为PTE25
(3)串口5发送引脚为PTD9,接收引脚为PTD8
(4)串口转USB接线：白色：发送线(Tx,Transmitter);绿色：接收线(Rx,Receive);黑色：地线

4. 实验现象
(1)3个客户端任务向服务器端任务发送消息，服务器端收到消息后将收到的消息回发给相应的客户端，执行过程通过串口4显示出来，如：
Client Task 0 sended message to server.
Client Task 1 sended message to server.
Client Task 2 sended message to server.
Server received message:A 
Server post the message back.
Client Task 0 received postback message.
Client Task 0 sended message to server.
Server received message:B 
Server post the message back.
Client Task 1 received postback message.
Client Task 1 sended message to server.
Server received message:C 
Server post the message back.
Client Task 2 received postback message.
Client Task 2 sended message to server.
(2)指示灯1每1秒闪烁1次，指示灯2每2秒闪烁1次

5. 备注
(1)本工程使用的是MQX自带的设备驱动如，GPIO和UART,并使用指示灯应用构件light。
(2)若要修改设备驱动的属性可以在工程目录bsp下的init_gpio.c和init_uart.c文件中修改相关的结构体变量
(3)可以通过使用config目录下的宏定义来添加和删除相关的设备驱动，如"#define BSPCFG_ENABLE_ITTYE      1",
为MQX系统添加带有中断的串口设备4
(4)在任务运行时需要使用MQX的驱动设备时,可以使用"fp=fopen("ittye:",IO_SERIAL_RAW_IO);"这样的形式
(5)用户自定义的ISR放在isr.h中声明,在isr.c中实现