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

📄 hh.h

📁 spi模拟
💻 H
📖 第 1 页 / 共 2 页
字号:
//========================================================================================
// Progarm: The file be included by modules
// Author : Jia Zhenhua (jzh2004@yahoo.com.cn)
// Date: 	2007/01/20: first version.
//            2007/01/22: 2nd version,bit function added.
//========================================================================================
#ifndef	__hh__
#define	__hh__

//#include "spce061.h"
#include "spce061v004.h"

#define int   int                           //16bit signed
#define long  long int                      //32bit signed
#define uint  unsigned int                  //16bit unsigned
#define ulong unsigned long int             //32bit unsigned
#define feed_the_dog() *((uint *)0x7012)=1  //feed the dog
//-----------------------------------------------
typedef struct{
	uint bit00 : 1;
	uint bit01 : 1;
	uint bit02 : 1;
	uint bit03 : 1;
	uint bit04 : 1;
	uint bit05 : 1;
	uint bit06 : 1;
	uint bit07 : 1;
	uint bit08 : 1;
	uint bit09 : 1;
	uint bit10 : 1;
	uint bit11 : 1;
	uint bit12 : 1;
	uint bit13 : 1;
	uint bit14 : 1;
	uint bit15 : 1;
}st_bit;
typedef struct{
	uint bytel  : 8;
	uint byteh  : 8;
}st_byte;
typedef union{
	st_bit bit;
	st_byte byte;
	uint port;
}un_port;
//-----------------------------------------------//输入时具有唤醒功能,除了dir/attr/dat=011
#define PA_data             ((volatile un_port *)0x7000)
    #define pa_data         PA_data->port
    #define pa_data_h       PA_data->byte.byteh
    #define pa_data_l       PA_data->byte.bytel
    #define pa_data_00      PA_data->bit.bit00
    #define pa_data_01      PA_data->bit.bit01
    #define pa_data_02      PA_data->bit.bit02
    #define pa_data_03      PA_data->bit.bit03
    #define pa_data_04      PA_data->bit.bit04
    #define pa_data_05      PA_data->bit.bit05
    #define pa_data_06      PA_data->bit.bit06
    #define pa_data_07      PA_data->bit.bit07
    #define pa_data_08      PA_data->bit.bit08
    #define pa_data_09      PA_data->bit.bit09
    #define pa_data_10      PA_data->bit.bit10
    #define pa_data_11      PA_data->bit.bit11
    #define pa_data_12      PA_data->bit.bit12
    #define pa_data_13      PA_data->bit.bit13
    #define pa_data_14      PA_data->bit.bit14
    #define pa_data_15      PA_data->bit.bit15
#define PA_buffer           ((volatile un_port *)0x7001)
    #define pa_buffer       PA_buffer->port
    #define pa_buffer_h     PA_buffer->byte.byteh
    #define pa_buffer_l     PA_buffer->byte.bytel
    #define pa_buffer_00    PA_buffer->bit.bit00
    #define pa_buffer_01    PA_buffer->bit.bit01
    #define pa_buffer_02    PA_buffer->bit.bit02
    #define pa_buffer_03    PA_buffer->bit.bit03
    #define pa_buffer_04    PA_buffer->bit.bit04
    #define pa_buffer_05    PA_buffer->bit.bit05
    #define pa_buffer_06    PA_buffer->bit.bit06
    #define pa_buffer_07    PA_buffer->bit.bit07
    #define pa_buffer_08    PA_buffer->bit.bit08
    #define pa_buffer_09    PA_buffer->bit.bit09
    #define pa_buffer_10    PA_buffer->bit.bit10
    #define pa_buffer_11    PA_buffer->bit.bit11
    #define pa_buffer_12    PA_buffer->bit.bit12
    #define pa_buffer_13    PA_buffer->bit.bit13
    #define pa_buffer_14    PA_buffer->bit.bit14
    #define pa_buffer_15    PA_buffer->bit.bit15
#define PA_dir              ((volatile un_port *)0x7002)
    #define pa_dir          PA_dir->port
    #define pa_dir_h        PA_dir->byte.byteh
    #define pa_dir_l        PA_dir->byte.bytel
    #define pa_dir_00       PA_dir->bit.bit00
    #define pa_dir_01       PA_dir->bit.bit01
    #define pa_dir_02       PA_dir->bit.bit02
    #define pa_dir_03       PA_dir->bit.bit03
    #define pa_dir_04       PA_dir->bit.bit04
    #define pa_dir_05       PA_dir->bit.bit05
    #define pa_dir_06       PA_dir->bit.bit06
    #define pa_dir_07       PA_dir->bit.bit07
    #define pa_dir_08       PA_dir->bit.bit08
    #define pa_dir_09       PA_dir->bit.bit09
    #define pa_dir_10       PA_dir->bit.bit10
    #define pa_dir_11       PA_dir->bit.bit11
    #define pa_dir_12       PA_dir->bit.bit12
    #define pa_dir_13       PA_dir->bit.bit13
    #define pa_dir_14       PA_dir->bit.bit14
    #define pa_dir_15       PA_dir->bit.bit15
#define PA_attrib           ((volatile un_port *)0x7003)
    #define pa_attrib       PA_attrib->port
    #define pa_attrib_h     PA_attrib->byte.byteh
    #define pa_attrib_l     PA_attrib->byte.bytel
    #define pa_attrib_00    PA_attrib->bit.bit00
    #define pa_attrib_01    PA_attrib->bit.bit01
    #define pa_attrib_02    PA_attrib->bit.bit02
    #define pa_attrib_03    PA_attrib->bit.bit03
    #define pa_attrib_04    PA_attrib->bit.bit04
    #define pa_attrib_05    PA_attrib->bit.bit05
    #define pa_attrib_06    PA_attrib->bit.bit06
    #define pa_attrib_07    PA_attrib->bit.bit07
    #define pa_attrib_08    PA_attrib->bit.bit08
    #define pa_attrib_09    PA_attrib->bit.bit09
    #define pa_attrib_10    PA_attrib->bit.bit10
    #define pa_attrib_11    PA_attrib->bit.bit11
    #define pa_attrib_12    PA_attrib->bit.bit12
    #define pa_attrib_13    PA_attrib->bit.bit13
    #define pa_attrib_14    PA_attrib->bit.bit14
    #define pa_attrib_15    PA_attrib->bit.bit15
#define PA_latch            ((volatile un_port *)0x7004)
    #define pa_latch        PA_latch->port
    #define pa_latch_h      PA_latch->byte.byteh
    #define pa_latch_l      PA_latch->byte.bytel
    #define pa_latch_00     PA_latch->bit.bit00
    #define pa_latch_01     PA_latch->bit.bit01
    #define pa_latch_02     PA_latch->bit.bit02
    #define pa_latch_03     PA_latch->bit.bit03
    #define pa_latch_04     PA_latch->bit.bit04
    #define pa_latch_05     PA_latch->bit.bit05
    #define pa_latch_06     PA_latch->bit.bit06
    #define pa_latch_07     PA_latch->bit.bit07
    #define pa_latch_08     PA_latch->bit.bit08
    #define pa_latch_09     PA_latch->bit.bit09
    #define pa_latch_10     PA_latch->bit.bit10
    #define pa_latch_11     PA_latch->bit.bit11
    #define pa_latch_12     PA_latch->bit.bit12
    #define pa_latch_13     PA_latch->bit.bit13
    #define pa_latch_14     PA_latch->bit.bit14
    #define pa_latch_15     PA_latch->bit.bit15
#define PB_data             ((volatile un_port *)0x7005)
    #define pb_data         PB_data->port
    #define pb_data_h       PB_data->byte.byteh
    #define pb_data_l       PB_data->byte.bytel
    #define pb_data_00      PB_data->bit.bit00
    #define pb_data_01      PB_data->bit.bit01
    #define pb_data_02      PB_data->bit.bit02
    #define pb_data_03      PB_data->bit.bit03
    #define pb_data_04      PB_data->bit.bit04
    #define pb_data_05      PB_data->bit.bit05
    #define pb_data_06      PB_data->bit.bit06
    #define pb_data_07      PB_data->bit.bit07
    #define pb_data_08      PB_data->bit.bit08
    #define pb_data_09      PB_data->bit.bit09
    #define pb_data_10      PB_data->bit.bit10
    #define pb_data_11      PB_data->bit.bit11
    #define pb_data_12      PB_data->bit.bit12
    #define pb_data_13      PB_data->bit.bit13
    #define pb_data_14      PB_data->bit.bit14
    #define pb_data_15      PB_data->bit.bit15
#define PB_buffer           ((volatile un_port *)0x7006)
    #define pb_buffer       PB_buffer->port
    #define pb_buffer_h     PB_buffer->byte.byteh
    #define pb_buffer_l     PB_buffer->byte.bytel
    #define pb_buffer_00    PB_buffer->bit.bit00
    #define pb_buffer_01    PB_buffer->bit.bit01
    #define pb_buffer_02    PB_buffer->bit.bit02
    #define pb_buffer_03    PB_buffer->bit.bit03
    #define pb_buffer_04    PB_buffer->bit.bit04
    #define pb_buffer_05    PB_buffer->bit.bit05
    #define pb_buffer_06    PB_buffer->bit.bit06
    #define pb_buffer_07    PB_buffer->bit.bit07
    #define pb_buffer_08    PB_buffer->bit.bit08
    #define pb_buffer_09    PB_buffer->bit.bit09
    #define pb_buffer_10    PB_buffer->bit.bit10
    #define pb_buffer_11    PB_buffer->bit.bit11
    #define pb_buffer_12    PB_buffer->bit.bit12
    #define pb_buffer_13    PB_buffer->bit.bit13
    #define pb_buffer_14    PB_buffer->bit.bit14

⌨️ 快捷键说明

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