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

📄 device.h

📁 本人编写的无线电话程序,给予PIC18C801设计,包括了uCOS的移植以及菜单,自己设计的拼音注入法,完整地一级汉字库,希望对大家有所帮助
💻 H
字号:
#include "includes.h"


//#define LOAD_DEV(dev)	dev()

#define DEVP_SHARE	0b00000001
#define DEVP_CHAR	0b00000010

#define DEV_ID_KBD	10
#define DEV_ID_I2C	11
#define DEV_ID_SEEPROM 12
#define DEV_ID_UART0	13

//device associatted
typedef rom struct _device{
	INT8U ID;
	INT8U name[3];				//name of device
	INT8U property;
	INT16U (*dev_init)(void);
	INT16U (*dev_clear)(void);
	INT16U (*dev_open)(void);
	INT16U (*dev_close)(void);
	INT16U (*dev_ioctl)(INT8U cmd, INT24U arg);
	INT16U (*dev_write)(INT8U rom * pd, INT16U len);
	INT16U (*dev_read)(INT8U rom * pd, INT16U len);
}DEV_HEADER;

typedef rom struct _DeivceCtlBlkItem{
	struct _device rom * dev;
	INT8U state;
}DCBI;

INT16U FNull_1(void);


void sysdev_init(void);
INT16U sysdev_load(DEV_HEADER * dev);
INT16U sysdev_open(INT8U dev_id);
INT16U sysdev_write(INT8U dev_hdl, INT8U rom * pd, INT16U len);
INT16U sysdev_read(INT8U dev_hal, INT8U rom * pd, INT16U len);
INT16U sysdev_ioctl(INT8U dev_hdl, INT8U cmd, INT24U arg);

extern DEV_HEADER DEV_KEYBRD;
extern DEV_HEADER DEV_I2C;
extern DEV_HEADER DEV_SEEPROM;
extern DEV_HEADER DEV_UART0;

⌨️ 快捷键说明

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