📄 mod_regs_adc.h
字号:
#ifndef CYGONCE_MOD_REGS_ADC_H
#define CYGONCE_MOD_REGS_ADC_H
//==========================================================================
//
// mod_regs_adc.h
//
// A/D D/A Converter Register
//
//==========================================================================
//####ECOSGPLCOPYRIGHTBEGIN####
// -------------------------------------------
// This file is part of eCos, the Embedded Configurable Operating System.
// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc.
//
// eCos is free software; you can redistribute it and/or modify it under
// the terms of the GNU General Public License as published by the Free
// Software Foundation; either version 2 or (at your option) any later version.
//
// eCos is distributed in the hope that it will be useful, but WITHOUT ANY
// WARRANTY; without even the implied warranty of MERCHANTABILITY or
// FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
// for more details.
//
// You should have received a copy of the GNU General Public License along
// with eCos; if not, write to the Free Software Foundation, Inc.,
// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
//
// As a special exception, if other files instantiate templates or use macros
// or inline functions from this file, or you compile this file and link it
// with other works to produce a work based on this file, this file does not
// by itself cause the resulting work to be covered by the GNU General Public
// License. However the source code for this file must still be made available
// in accordance with section (3) of the GNU General Public License.
//
// This exception does not invalidate any other reasons why a work based on
// this file might be covered by the GNU General Public License.
//
// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc.
// at http://sources.redhat.com/ecos/ecos-license/
// -------------------------------------------
//####ECOSGPLCOPYRIGHTEND####
//==========================================================================
//#####DESCRIPTIONBEGIN####
//
// Author(s): yoshinori sato
// Contributors: yoshinori sato
// Date: 2003-01-01
//
//####DESCRIPTIONEND####
//
//==========================================================================
//==========================================================================
// DOXYGEN FILE HEADER
/// \file mod_regs_adc.h
/// \brief A/D D/A Converter Register definitions.
/// \author Yoshinori Sato
/// \date 2003-01-01
//==========================================================================
//==========================================================================
// REGISTER ADDRESSES
//==========================================================================
//--------------------------------------------------------------------------
// D/A Controller Registers
//
#define CYGARC_DADR0 0xFFFFA4
#define CYGARC_DADR1 0xFFFFA5
#define CYGARC_DACR01 0xFFFFA6
//--------------------------------------------------------------------------
// A/D Controller Registers
//
#define CYGARC_ADDRA 0xFFFF90
#define CYGARC_ADDRAH 0xFFFF90
#define CYGARC_ADDRAL 0xFFFF91
#define CYGARC_ADDRB 0xFFFF92
#define CYGARC_ADDRBH 0xFFFF92
#define CYGARC_ADDRBL 0xFFFF93
#define CYGARC_ADDRC 0xFFFF94
#define CYGARC_ADDRCH 0xFFFF94
#define CYGARC_ADDRCL 0xFFFF95
#define CYGARC_ADDRD 0xFFFF96
#define CYGARC_ADDRDH 0xFFFF96
#define CYGARC_ADDRDL 0xFFFF97
#define CYGARC_ADCSR 0xFFFF98
#define CYGARC_ADCR 0xFFFF99
#ifndef __ASSEMBLER__
//==========================================================================
// AD/DA REGISTER STRUCTURE
//==========================================================================
struct st_ad { // struct A/D
unsigned int ADDRA; // ADDRA
unsigned int ADDRB; // ADDRB
unsigned int ADDRC; // ADDRC
unsigned int ADDRD; // ADDRD
union { // ADCSR
unsigned char BYTE; // Byte Access
struct { // Bit Access
unsigned char ADF :1; // ADF
unsigned char ADIE:1; // ADIE
unsigned char ADST:1; // ADST
unsigned char SCAN:1; // SCAN
unsigned char CH :4; // CH
} BIT; //
} ADCSR; //
union { // ADCR
unsigned char BYTE; // Byte Access
struct { // Bit Access
unsigned char TRGS:2; // TRGS
unsigned char :2; //
unsigned char CKS :2; // CKS
} BIT; //
} ADCR; //
}; //
struct st_da { // struct D/A
unsigned char DADR0; // DADR0
unsigned char DADR1; // DADR1
union { // DACR
unsigned char BYTE; // Byte Access
struct { // Bit Access
unsigned char DAOE1:1; // DAOE1
unsigned char DAOE0:1; // DAOE0
unsigned char DAE :1; // DAE
} BIT; //
} DACR; //
};
//==========================================================================
// STRUCTURED REGISTER ACCESS
//==========================================================================
#define HAL_H8S_REG_AD (*(volatile struct st_ad *)0xFFFF90) // A/D Address
#define HAL_H8S_REG_DA (*(volatile struct st_da *)0xFFFFA4) // D/A Address
#endif // #ifndef __ASSEMBLER__
//---------------------------------------------------------------------------
#endif // End of #define CYGONCE_MOD_REGS_ADC_H
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -