⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 c_entry.c

📁 ~{WwU_J9SC5D~}ucos~{T4Bk#,1`RkA4=S5wJT>y?IRT#,4x~}uart~{2bJT~}
💻 C
字号:
#include "netstart.h"
#include "isr.h"
#include "uart.h"
#include "timer.h"
#include "../ucosii/source/includes.h"


/*
 * 任务堆栈
 */
//static OS_STK	gs_LedTaskStk[128];
//static OS_STK	gs_Led7TaskStk[128];
static OS_STK	gs_StartupTaskStk[256];

/*
* 初始化中断向量, 设置TIMER0中断服务函数, 及开中断 的任务
*/
void InitHW(void)
{
	TM_PARAM	tp;
	SERIAL_DEV	sd;

	ARMDisableInt();

	/* 初始化中断向量 */
	InitInterrupt();

	/* 初始化定时器0 */
	tmReset(TIMER_DEV0);
	tp.TIMER_Lisr = OSTickISR;
	tp.TM_CHANNEL = TIMER_DEV0;
	tp.TM_DATA = t_data_ms(1000/OS_TICKS_PER_SEC);
	tp.TM_MODE = TM0_TOGGLE;
	tp.TM_OUT_PORT = 0;
	tmCntr(&tp);

	/* 初始化串行口 */
	UART_Initialize();
	sd.baud_rate = 9600;
	sd.clk_sel   = 0;
	sd.com_port  = SERIAL_DEV0;
	sd.data_bits = ULCON_WL8;
	sd.data_mode = (UCON_RXM_INTREQ|UCON_TXM_INTREQ|UCON_RXSTAT_INT);
	sd.stop_bits = 0;
	sd.parity    = ULCON_PMD_NO;
	UART_Init(&sd);
}



/*
 *  启动提示, 初始化网络任务
 */
void StartupTask(void *pdata)
{

	/* 启动定时器 */
	TimerStart(TIMER_DEV0);
	/* 开中断 */
	Enable_Int(nGLOBAL_INT);
	ARMEnableInt();
//	OSTimeDly(200);

	while(1)
	{
		put_string("\n\r");
//		OSTimeDly(50);
		put_string("********************************************************\n\r");
//		OSTimeDly(50);
		put_string("**************   **************\n\r");
//		OSTimeDly(50);
		put_string("********************************************************\n\r");
		put_string("******                      ******\n\r");
		put_string("********************************************************\n\r");
//		OSTimeDly(50);
//		OSTimeDly(50);
		put_string("****           ***\n\r");
//		OSTimeDly(50);
		put_string("****  ****\n\r");
//		OSTimeDly(50);
		put_string("****               ****\n\r");
//		OSTimeDly(50);
		put_string("********************************************************\n\r");
//		OSTimeDly(200);
		
			}
	
}


/*
 * 启动代码后的 C 程序入口, 初始化硬件驱动, OS, lwIP, 及创建任务
 */
void C_Entry(void)
{
	/* 初始化硬件设备 */
	InitHW();

	/* 初始化ucOSII */
	OSInit();

	/* 创建任务 */
//	OSTaskCreate(GDMA, (void *)0, &gs_LedTaskStk[127], 1);
	OSTaskCreate(StartupTask, (void *)0, &gs_StartupTaskStk[255], 1);

 	/* 启动 OS */
	OSStart();
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -