📄 iar-
字号:
/****************************************Copyright (c)****************************************************
** Guangzhou ZHIYUAN electronics Co.,LTD.
**
** http://www.embedtools.com
**
**--------------File Info---------------------------------------------------------------------------------
** File Name: Main.c
** Last modified Date: 2007.09.18
** Last Version: v1.0
** Description: 应用层任务
**
**--------------------------------------------------------------------------------------------------------
** Created By: Cai Chubin
** Created date: 2007.09.20
** Version: v1.0
** Descriptions: The original version 初始版本
**
**--------------------------------------------------------------------------------------------------------
** Modified by: Kang qinhua
** Modified date: 2008.01.02
** Version: v1.1
** Description: The second version 第二版
**
*********************************************************************************************************/
#include "includes.h"
/*********************************************************************************************************
CONSTANTS
*********************************************************************************************************/
#define TASK_START_ID 0 /* Application tasks */
#define TASK_1_ID 1
#define TASK_2_ID 2
#define TASK_3_ID 3
#define TASK_4_ID 4
#define TASK_5_ID 5
#define TASK_6_ID 6
#define TASK_START_PRIO 0 /* Application tasks priorities*/
#define TASK_1_PRIO 2
#define TASK_2_PRIO 3
#define TASK_3_PRIO 4
#define TASK_4_PRIO 5
#define TASK_5_PRIO 6
#define TASK_6_PRIO 7
#define MSG_QUEUE_SIZE 20 /* Size of message queue used
in example */
uint16 flag_send=0;
OS_EVENT *RecPackedFlag;
OS_EVENT *RecBufOverFlowFlag;
OS_EVENT *RecTcpPackedFlag;
OS_EVENT *RecPingPackedFlag;
#define task0stck 1000
#define task1stck 512
#define task2stck 512
#define task3stck 1000
#define task4stck 1000
OS_STK task0_stack[task0stck];
OS_STK task1_stack[task1stck];
OS_STK task2_stack[task2stck];
OS_STK task3_stack[task3stck];
OS_STK task4_stack[task4stck];
uint8 httpweb[] = {
"HTTP/1.0 200 OK\r\n"
"Date: Mon, 24 Nov 2003 01:24:17 GMT\r\n"
"Server: microHttp/1.0 Zlgmcu Corporation\r\n"
"Accept-Ranges: bytes\r\n"
"Connection: Keep-Close\r\n"
"Content-Type: text/html\r\n"
"\r\n"
};
uint8 web[] = {
"<HTML>\r\n"
"<HEAD>\r\n"
"<TITLE>ARM_NET演示网页(周立功单片机)</TITLE>\r\n"
"<BODY aLink=blue background=/100.bmp bgColor=#f1f1dd link=red\r\n"
"vLink=#321afd>\r\n"
"<H1>HELLO WELCOME TO Easy8962 WEBSERVER</H1>\r\n"
"<UL>\r\n"
"<LI> <A HREF=\"http://www.zlgmcu.com/\">周立功单片机网站 </A>\r\n"
"<LI> <A HREF=\"http://www.zlg.cn/\">周立功单片机内部BBS </A>\r\n"
"<LI> <A HREF=\"http://www.zlgmcu.cn/\">周立功单片机 </A>\r\n"
"</UL>\r\n"
"</BODY>\r\n"
"</HTML>\r\n"
};
uint8 httpgif[] = {
"HTTP/1.0 200 OK\r\n"
"Date: Mon, 24 Nov 2003 01:24:17 GMT\r\n"
"Server: microHttp/1.0 Zlgmcu Corporation\r\n"
"Accept-Ranges: bytes\r\n"
"Connection: Keep-Close\r\n"
"Content-Type: image/bmp\r\n"
"\r\n"
};
uint8 bmp[442] = {
0x42,0x4d,0xb6,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x76,0x00,0x00,0x00,0x28,0x00,
0x00,0x00,0x1a,0x00,0x00,0x00,0x14,0x00,0x00,0x00,0x01,0x00,0x04,0x00,0x00,0x00,
0x00,0x00,0x40,0x01,0x00,0x00,0xc4,0x0e,0x00,0x00,0xc4,0x0e,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x00,0x00,0x80,
0x00,0x00,0x00,0x80,0x80,0x00,0x80,0x00,0x00,0x00,0x80,0x00,0x80,0x00,0x80,0x80,
0x00,0x00,0xc0,0xc0,0xc0,0x00,0x80,0x80,0x80,0x00,0x00,0x00,0xff,0x00,0x00,0xff,
0x00,0x00,0x00,0xff,0xff,0x00,0xff,0x00,0x00,0x00,0xff,0x00,0xff,0x00,0xff,0xff,
0x00,0x00,0xff,0xff,0xff,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
0xff,0xff,0xff,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
0xff,0xff,0xff,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
0xff,0xff,0xff,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
0xff,0xff,0xff,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf6,0x66,0xff,
0xff,0xff,0xff,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x6f,
0xff,0xff,0xff,0x00,0x00,0x00,0xff,0xff,0xff,0x66,0x66,0x6f,0x6f,0xff,0x66,0x66,
0xff,0xff,0xff,0x00,0x00,0x00,0xff,0xff,0xff,0xf6,0xff,0xff,0x6f,0xf6,0xff,0xf6,
0xff,0xff,0xff,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0x6f,0xff,0x6f,0xf6,0xff,0xf6,
0xff,0xff,0xff,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xf6,0xff,0xf6,0xf6,0xff,0xff,
0x6f,0xff,0xff,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0x6f,0xf6,0xff,0x6f,0xff,
0x6f,0xff,0xff,0x00,0x00,0x00,0xff,0xff,0xff,0xf6,0x66,0x66,0xf6,0xff,0xf6,0x66,
0x6f,0xff,0xff,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x6f,0xff,0xff,
0xff,0xff,0xff,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x6f,0xff,0xff,
0xff,0xff,0xff,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x6f,0xff,0xff,
0xff,0xff,0xff,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
0xff,0xff,0xff,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
0xff,0xff,0xff,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
0xff,0xff,0xff,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
0xff,0xff,0xff,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
0xff,0xff,0xff,0x00,0x00,0x00
};
/*********************************************************************************************************
** Function name: TaskB
** Descriptions: 等待UDP的信号量
** input parameters: 无
** output parameters: 无
** Returned value: 无
*********************************************************************************************************/
void TaskB (void *pdata)
{
void * UdpTemp;
uint8 eer;
while (1) {
UdpTemp = OSQPend(RecUdpQFlag, 0, &eer);
if (eer == OS_NO_ERR) {
Udp_Process((Rec_Ptr *)UdpTemp);
eer = eer;
}
}
}
/*********************************************************************************************************
** Function name: TaskC
** Descriptions: 等待TCP的信号量
** input parameters: 无
** output parameters: 无
** Returned value: 无
*********************************************************************************************************/
void TaskC (void *pdata)
{
void * TcpTemp;
uint8 err;
while (1) {
TcpTemp = OSQPend(RecTcpQFlag,0,&err);
if (err == OS_NO_ERR) {
Process_Tcp1((Rec_Ptr *) TcpTemp);
TcpTemp = TcpTemp;
}
}
}
/*********************************************************************************************************
** Function name: TaskD
** Descriptions: UDP协议数据接收和发送任务
** input parameters: 无
** output parameters: 无
** Returned value: 无
*********************************************************************************************************/
void TaskD (void *pdata)
{
uint8 rec_buffer[100]; /* 发送缓存区 */
SOCKET s;
int rec_coute, send_coute;
uint16 iii;
struct sockaddr servaddr, clientaddr;
OSTimeDly(60);
servaddr.sin_family = 0; /* 设置客户机IP地址 */
servaddr.sin_addr[0] = 192;
servaddr.sin_addr[1] = 168;
servaddr.sin_addr[2] = 0;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -