main.c

来自「STR71X系列ARM微控制器原理与实践配套光盘」· C语言 代码 · 共 46 行

C
46
字号
#include "71x_lib.h"
#include "LED.h"
#include "Key.h"
#include "mouse.h"
#include "USB_lib.h"

#define SPEED_P		10
#define MAX_SPEED	(20 << SPEED_P)

void __main(void)
{
	int dx, dy;

	#ifdef DEBUG
		debug();
	#endif

	LED_Init();
	Key_Init();
	Mouse_Init();

	while(1)
	{
		int kLeft = Key_State(0), kUp = Key_State(1);
		int kDown = Key_State(2), kRight = Key_State(3);

		LED_Set(0, Device_Info.Current_Configuration ? LED_ON : LED_OFF);

		if(kLeft | kUp | kDown | kRight) // need not to use "||"
		{
			if(kLeft && dx > -MAX_SPEED)
				dx--;
			if(kUp && dy > -MAX_SPEED)
				dy--;
			if(kDown && dy < MAX_SPEED)
				dy++;
			if(kRight && dx < MAX_SPEED)
				dx++;
		}
		else
			dx = 0, dy = 0;

		Mouse_Action(dx >> SPEED_P, dy >> SPEED_P, Key_State(4) | (kUp & kDown) << 1);
	}
}

⌨️ 快捷键说明

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