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

📄 main.c.bak

📁 基于ARM7的直流电机的驱动,还有FLASH驱动,LCD驱动等
💻 BAK
字号:
// ARM Linker 选项:
// -info totals -ro-base 0x0C084000 -first Init.o(Init)
//
#include "defs.h"
#include "44b0x.h"
#include <avt.h>
#include <avtintl.h>
#include <string.h>


//void	LcdMain(void *args);
//void 	GreenMain(void *args);

// 清看门狗
void
clrwtd(void) {
    rPDATE ^= 1 << 3;//异或
    rPDATE ^= 1 << 6;
    rPDATE ^= 1 << 7;    
    rPDATC ^= 1 << 2;
    
}

// 串口命令接收任务
void GetPkt(void *args) 
{
	// 数据报格式
	// |-------------------
	// |H|F| len | data |C| 
	// |-------------------
	// H: 帧头('H')
	// F: 功能码(0x66为对钟)
	// len: 数据长度
	// data: 报文数据字段
	// C: 累加和校验
	while(1)
	{
		if(getkey() == 'H')
		{
			if(getkey() == 0x66)
			{
				bsp_puts("收到对钟命令!\n");
			}
		}
    	tm_delay(50);		
	}
}

void PwmWork(void *args) 
{
	while(1)
	{

	
				bsp_puts("收到对钟命令!\n");
	    	tm_delay(10);		
	}
}






// 根任务
void root(void) 
{
	UINT	tid;
	
	// 先清一次看门狗
	clrwtd();
	
	// 创建串口命令接收任务
	(void)t_create("DZ", 3, GetPkt, 0, 0, 1, &tid);
	// 创建PWM任务	
	(void)t_create("PWM", 4, PwmWork, 0, 0, 1, &tid);
		
	// 根任务现在变成看门狗任务,1秒清一次看门狗
	while(1)
	{
		clrwtd();
		bsp_puts("root任务正在执行...\n");
    	tm_delay(200);
	}	
}

⌨️ 快捷键说明

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