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

📄 timer16.h

📁 cy8c24794单片机程序
💻 H
字号:
//*****************************************************************************
//*****************************************************************************
//  FILENAME: Timer16.h
//   Version: 2.4, Updated on 2005/10/05 at 10:25:01
//  Generated by PSoC Designer ver 4.2  b1013 : 02 September, 2004
//
//  DESCRIPTION: Timer16 User Module C Language interface file
//               for the 22/24/27/29xxx PSoC family of devices
//-----------------------------------------------------------------------------
//  Copyright (c) Cypress MicroSystems 2000-2004. All Rights Reserved.
//*****************************************************************************
//*****************************************************************************

#include <m8c.h>

#pragma fastcall16 Timer16_EnableInt
#pragma fastcall16 Timer16_DisableInt
#pragma fastcall16 Timer16_Start
#pragma fastcall16 Timer16_Stop
#pragma fastcall16 Timer16_wReadTimer                // Read  DR0
#pragma fastcall16 Timer16_wReadTimerSaveCV          // Read  DR0      
#pragma fastcall16 Timer16_WritePeriod               // Write DR1
#pragma fastcall16 Timer16_wReadCompareValue         // Read  DR2
#pragma fastcall16 Timer16_WriteCompareValue         // Write DR2

// The following symbols are deprecated.
// They may be omitted in future releases
//
#pragma fastcall16 wTimer16_ReadCounter              // Read  DR0 "Obsolete"
#pragma fastcall16 wTimer16_CaptureCounter           // Read  DR0 "Obsolete"
#pragma fastcall16 wTimer16_ReadTimer                // Read  DR0 (Deprecated)
#pragma fastcall16 wTimer16_ReadTimerSaveCV          // Read  DR0 (Deprecated)
#pragma fastcall16 wTimer16_ReadCompareValue         // Read  DR2 (Deprecated)


//-------------------------------------------------
// Prototypes of the Timer16 API.
//-------------------------------------------------

extern void Timer16_EnableInt(void);                           // Proxy 1
extern void Timer16_DisableInt(void);                          // Proxy 1
extern void Timer16_Start(void);                               // Proxy 1
extern void Timer16_Stop(void);                                // Proxy 1
extern WORD Timer16_wReadTimer(void);                          // Proxy 1
extern WORD Timer16_wReadTimerSaveCV(void);                    // Proxy 2
extern void Timer16_WritePeriod(WORD wPeriod);                 // Proxy 1
extern WORD Timer16_wReadCompareValue(void);                   // Proxy 1
extern void Timer16_WriteCompareValue(WORD wCompareValue);     // Proxy 1

// The following functions are deprecated.
// They may be omitted in future releases
//
extern WORD wTimer16_ReadCompareValue(void);       // Deprecated
extern WORD wTimer16_ReadTimerSaveCV(void);        // Deprecated
extern WORD wTimer16_ReadCounter(void);            // Obsolete
extern WORD wTimer16_ReadTimer(void);              // Deprecated
extern WORD wTimer16_CaptureCounter(void);         // Obsolete


//--------------------------------------------------
// Constants for Timer16 API's.
//--------------------------------------------------

#define Timer16_CONTROL_REG_START_BIT          ( 0x01 )
#define Timer16_INT_REG_ADDR                   ( 0x0e1 )
#define Timer16_INT_MASK                       ( 0x04 )


//--------------------------------------------------
// Constants for Timer16 user defined values
//--------------------------------------------------

#define Timer16_PERIOD                         ( 0x5 )
#define Timer16_COMPARE_VALUE                  ( 0x0 )


//-------------------------------------------------
// Register Addresses for Timer16
//-------------------------------------------------

#pragma ioport  Timer16_COUNTER_LSB_REG:    0x024          //Count register LSB
BYTE            Timer16_COUNTER_LSB_REG;
#pragma ioport  Timer16_COUNTER_MSB_REG:    0x028          //Count register MSB
BYTE            Timer16_COUNTER_MSB_REG;
#pragma ioport  Timer16_PERIOD_LSB_REG: 0x025              //Period register LSB
BYTE            Timer16_PERIOD_LSB_REG;
#pragma ioport  Timer16_PERIOD_MSB_REG: 0x029              //Period register MSB
BYTE            Timer16_PERIOD_MSB_REG;
#pragma ioport  Timer16_COMPARE_LSB_REG:    0x026          //Compare register LSB
BYTE            Timer16_COMPARE_LSB_REG;
#pragma ioport  Timer16_COMPARE_MSB_REG:    0x02a          //Compare register MSB
BYTE            Timer16_COMPARE_MSB_REG;
#pragma ioport  Timer16_CONTROL_LSB_REG:    0x027          //Control register LSB
BYTE            Timer16_CONTROL_LSB_REG;
#pragma ioport  Timer16_CONTROL_MSB_REG:    0x02b          //Control register MSB
BYTE            Timer16_CONTROL_MSB_REG;
#pragma ioport  Timer16_FUNC_LSB_REG:   0x124              //Function register LSB
BYTE            Timer16_FUNC_LSB_REG;
#pragma ioport  Timer16_FUNC_MSB_REG:   0x128              //Function register MSB
BYTE            Timer16_FUNC_MSB_REG;
#pragma ioport  Timer16_INPUT_LSB_REG:  0x125              //Input register LSB
BYTE            Timer16_INPUT_LSB_REG;
#pragma ioport  Timer16_INPUT_MSB_REG:  0x129              //Input register MSB
BYTE            Timer16_INPUT_MSB_REG;
#pragma ioport  Timer16_OUTPUT_LSB_REG: 0x126              //Output register LSB
BYTE            Timer16_OUTPUT_LSB_REG;
#pragma ioport  Timer16_OUTPUT_MSB_REG: 0x12a              //Output register MSB
BYTE            Timer16_OUTPUT_MSB_REG;
#pragma ioport  Timer16_INT_REG:       0x0e1               //Interrupt Mask Register
BYTE            Timer16_INT_REG;


//-------------------------------------------------
// Timer16 Macro 'Functions'
//-------------------------------------------------

#define Timer16_Start_M \
   ( Timer16_CONTROL_LSB_REG |=  Timer16_CONTROL_REG_START_BIT )

#define Timer16_Stop_M  \
   ( Timer16_CONTROL_LSB_REG &= ~Timer16_CONTROL_REG_START_BIT )

#define Timer16_EnableInt_M   \
   M8C_EnableIntMask(  Timer16_INT_REG, Timer16_INT_MASK )

#define Timer16_DisableInt_M  \
   M8C_DisableIntMask( Timer16_INT_REG, Timer16_INT_MASK )


// end of file Timer16.h


⌨️ 快捷键说明

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