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

📄 rd_useavrportbit.h

📁 LCD1602键盘显示模块实例
💻 H
📖 第 1 页 / 共 2 页
字号:
#ifndef _USE_AVR_PORT_BIT_H_
#define _USE_AVR_PORT_BIT_H_
/***********************************************************
*   声明库说明:AVR位操作通用支持库                        *
*   版本:      v1.10                                      *
*   作者:      傻孩子                                     *
*   创建日期:  2006年4月25日                              *
* -------------------------------------------------------- *
*  [支 持 库]                                              *
*   库名称:    RD_UseBITs.h                               *
*   需要版本:  v1.00 &abv                                 *
*   支持库说明:系统位段操作函数库                         *
*                                                          *
*   库名称:    RD_MacroAndConst.h                         *
*   需要版本:  v0.01 &abv                                 *
*   支持库说明:系统常用宏定义库                           *
* -------------------------------------------------------- *
*  [版本更新]                                              *
*   修改:      傻孩子                                     *
*   修改日期:  2006年5月4日                               *
*   版本:      v1.01                                      *
*                                                          *
*   修改:      傻孩子                                     *
*   修改日期:  2007年7月17日                              *
*   版本:      v1.10                                      *
* -------------------------------------------------------- *
*  [版本历史]                                              *
*     前身版本  在该版本最终生成之前,经历过针对各种芯片的 *
*               专用版本,这些版本提供了针对PORT的位操作和 *
*               部分PIN、DDR的位操作。                     *
*        v1.00  该版本支持几乎所有的芯片,具有完善的宏定义 *
*               系统,相对前身版本最小的资源占用。增加了对 *
*               各种常用变量用户类型的定义。               *
*        v1.01  增加了关于布尔型变量类型的宏定义。         *
*               修改了头文件的位段映射模式。通过统一的头文 *
*               件RD_UseBITs.h来实现位段类型的定义和声明。 *
*        v1.10  规范了宏的名称DDR_PXn PIN_PXn              *
* -------------------------------------------------------- *
*  [使用说明]                                              *
*            1、在使用该头文件之前先包含您需要使用的芯片   *
*               的官方头文件,例如:# include <iom8v.h>    *
*            2、如果你不是ICC的用户,请在使用该头文件之前  *
*               先绑定各个端口的地址到相应的宏定义上,例如 *
*               # define PORTA (*((volatile char *)0x3b))  *
*            3、如果你使用的是非ICC系统,请在调用文件之前  *
*               定义宏 _USE_NON_ICC_IDE。                  *
*            4、可以使用SET_BITS_FORMAT(变量)把任意变量拆  *
*               成位定义的模式。                           *
***********************************************************/

/********************
* 头 文 件 配 置 区 *
********************/
# include "RD_UseBITs.h"

/********************
*   系 统 宏 定 义  *
********************/

/*------------------*
*   常 数 宏 定 义  *
*------------------*/
#ifndef PDIR_OUT
    # define PDIR_OUT            0x01
#endif
#ifndef PDIR_IN             
    # define PDIR_IN             0x00
#endif

/*------------------*
* 硬 件 连 接 定 义 *
*------------------*/

/*---------------- PORT口绑定 ---------------*/
#ifdef PORTA
    # define PORTA_BIT     SET_BIT8_FORMAT(PORTA)
#endif
#ifdef PORTB
    # define PORTB_BIT     SET_BIT8_FORMAT(PORTB)
#endif
#ifdef PORTC
    # define PORTC_BIT     SET_BIT8_FORMAT(PORTC)
#endif
#ifdef PORTD
    # define PORTD_BIT     SET_BIT8_FORMAT(PORTD)
#endif
#ifdef PORTE
    # define PORTE_BIT     SET_BIT8_FORMAT(PORTE)
#endif
#ifdef PORTF
    # define PORTF_BIT     SET_BIT8_FORMAT(PORTF)
#endif
#ifdef PORTG
    # define PORTG_BIT     SET_BIT8_FORMAT(PORTG)
#endif


/*---------------- DDR 口绑定 ---------------*/
#ifdef DDRA
    # define DDRA_BIT     SET_BIT8_FORMAT(DDRA)
#endif
#ifdef DDRB
    # define DDRB_BIT     SET_BIT8_FORMAT(DDRB)
#endif
#ifdef DDRC
    # define DDRC_BIT     SET_BIT8_FORMAT(DDRC)
#endif
#ifdef DDRD
    # define DDRD_BIT     SET_BIT8_FORMAT(DDRD)
#endif
#ifdef DDRE
    # define DDRE_BIT     SET_BIT8_FORMAT(DDRE)
#endif
#ifdef DDRF
    # define DDRF_BIT     SET_BIT8_FORMAT(DDRF)
#endif
#ifdef DDRG
    # define DDRG_BIT     SET_BIT8_FORMAT(DDRG)
#endif

/*---------------- PIN 口绑定 ---------------*/
#ifdef PINA
    # define PINA_BIT     SET_BIT8_FORMAT(PINA)
#endif
#ifdef PINB
    # define PINB_BIT     SET_BIT8_FORMAT(PINB)
#endif
#ifdef PINC
    # define PINC_BIT     SET_BIT8_FORMAT(PINC)
#endif
#ifdef PIND
    # define PIND_BIT     SET_BIT8_FORMAT(PIND)
#endif
#ifdef PINE
    # define PINE_BIT     SET_BIT8_FORMAT(PINE)
#endif
#ifdef PINF
    # define PINF_BIT     SET_BIT8_FORMAT(PINF)
#endif
#ifdef PING
    # define PING_BIT     SET_BIT8_FORMAT(PING)
#endif

/*------------------*
*   端 口 宏 定 义  *
*------------------*/

/*-------------PORT位操作定义--------------*/
#ifdef PORTA
    # define _PA0        PORTA_BIT.BIT0
    # define _PA1        PORTA_BIT.BIT1
    # define _PA2        PORTA_BIT.BIT2
    # define _PA3        PORTA_BIT.BIT3
    # define _PA4        PORTA_BIT.BIT4
    # define _PA5        PORTA_BIT.BIT5
    # define _PA6        PORTA_BIT.BIT6
    # define _PA7        PORTA_BIT.BIT7
#endif
#ifdef PORTB
    # define _PB0        PORTB_BIT.BIT0
    # define _PB1        PORTB_BIT.BIT1
    # define _PB2        PORTB_BIT.BIT2
    # define _PB3        PORTB_BIT.BIT3
    # define _PB4        PORTB_BIT.BIT4
    # define _PB5        PORTB_BIT.BIT5
    # define _PB6        PORTB_BIT.BIT6
    # define _PB7        PORTB_BIT.BIT7
#endif
#ifdef PORTC
    # define _PC0        PORTC_BIT.BIT0
    # define _PC1        PORTC_BIT.BIT1
    # define _PC2        PORTC_BIT.BIT2
    # define _PC3        PORTC_BIT.BIT3
    # define _PC4        PORTC_BIT.BIT4
    # define _PC5        PORTC_BIT.BIT5
    # define _PC6        PORTC_BIT.BIT6
    # define _PC7        PORTC_BIT.BIT7
#endif
#ifdef PORTD
    # define _PD0        PORTD_BIT.BIT0
    # define _PD1        PORTD_BIT.BIT1
    # define _PD2        PORTD_BIT.BIT2
    # define _PD3        PORTD_BIT.BIT3
    # define _PD4        PORTD_BIT.BIT4
    # define _PD5        PORTD_BIT.BIT5
    # define _PD6        PORTD_BIT.BIT6
    # define _PD7        PORTD_BIT.BIT7
#endif
#ifdef PORTE
    # define _PE0        PORTE_BIT.BIT0
    # define _PE1        PORTE_BIT.BIT1
    # define _PE2        PORTE_BIT.BIT2
    # define _PE3        PORTE_BIT.BIT3
    # define _PE4        PORTE_BIT.BIT4
    # define _PE5        PORTE_BIT.BIT5
    # define _PE6        PORTE_BIT.BIT6
    # define _PE7        PORTE_BIT.BIT7
#endif
#ifdef PORTF
    # define _PF0        PORTF_BIT.BIT0
    # define _PF1        PORTF_BIT.BIT1
    # define _PF2        PORTF_BIT.BIT2
    # define _PF3        PORTF_BIT.BIT3
    # define _PF4        PORTF_BIT.BIT4
    # define _PF5        PORTF_BIT.BIT5
    # define _PF6        PORTF_BIT.BIT6
    # define _PF7        PORTF_BIT.BIT7
#endif
#ifdef PORTG
    # define _PG0        PORTG_BIT.BIT0
    # define _PG1        PORTG_BIT.BIT1
    # define _PG2        PORTG_BIT.BIT2
    # define _PG3        PORTG_BIT.BIT3
    # define _PG4        PORTG_BIT.BIT4
    # define _PG5        PORTG_BIT.BIT5

⌨️ 快捷键说明

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