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

📄 robocar.h

📁 通过使机器人进行简单的图像识别
💻 H
字号:
/********************************************************************
*
* =-----------------------------------------------------------------=
* =                          ____          _________                =
* =                         / _  \         \___  __/                =
* =                        / /_/ /     ____   / /                   =
* =                       /  _   \ ● / _  \ / /                    =
* =                      /  /_/  // // / / // /                     =
* =                      \______//_//_/ /_//_/                      =
* =                                                                 =
* =             Copyright (c) BIN Technology studio,2004            =
* =                           LET'Z BT                              =
* =-----------------------------------------------------------------=
*
*	FileName	: RoboCar.cpp RoboCar.h
*	Description	: 机器人控制接口,完成状态队列的执行
*					状态队列为FIFO动作队列
*
*	Author		: 风间苍月(TuQbasic)
*	Email		: tuqbasic@sohu.com
*
*	Create		: 2004.04.23
*	LastChange	: 2004.05.25
*
*	History		: 
********************************************************************/ 
#pragma once
#include <list>
using namespace std;

#include "ComPort.h"
#include "Action.h"

class CRoboCar
{
public:
	CRoboCar(void);
	virtual ~CRoboCar(void);

	// 等待单片机发送指令运行
	void WaitMessage(void);

	// 是否应该关闭系统
	bool IsShutDown(void);

	// 阻塞模式动作,直到动作完成(时间过去)再返回
	void ActionSlave(unsigned long lStatus, unsigned long lTime);

	// 设置状态和状态持续时间(将清空队列),该状态结束之后,进入idle
	void SetStatus(unsigned long lStatus, unsigned long lTime= ACTION_INFINITE_TIME);

	// 将一个状态添加到动作队列中,该动作方法与前面方法不兼容
	void PushStatus(unsigned long lStatus, unsigned long lTime= ACTION_INFINITE_TIME);

	// 更新状态,由外部分配时间片
	void ResponseTick(void);
private:
	// 发送串口指令
	void Action(ACTIONDESC &act);
private:
	// 状态队列
	list<ACTIONDESC> m_lstAct;
	unsigned long	 m_lSwapTime;		// 改变状态的时刻,到达该时刻时切换状态
	CComPort		 m_port;
};

⌨️ 快捷键说明

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