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

📄 mod_regs_adc.h

📁 ecos移植到R8H系列的源码。源码包来自http://www.cetoni.de/develop/develop_ecosh8s_en.html
💻 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 + -