292 lines
10 KiB
Plaintext
292 lines
10 KiB
Plaintext
// TI File $Revision: /main/11 $
|
|
// Checkin $Date: May 12, 2008 14:30:08 $
|
|
//###########################################################################
|
|
//
|
|
// FILE: DSP2833x_GlobalPrototypes.h
|
|
//
|
|
// TITLE: Global prototypes for DSP2833x Examples
|
|
//
|
|
//###########################################################################
|
|
// $TI Release: $
|
|
// $Release Date: $
|
|
// $Copyright:
|
|
// Copyright (C) 2009-2024 Texas Instruments Incorporated - http://www.ti.com/
|
|
//
|
|
// Redistribution and use in source and binary forms, with or without
|
|
// modification, are permitted provided that the following conditions
|
|
// are met:
|
|
//
|
|
// Redistributions of source code must retain the above copyright
|
|
// notice, this list of conditions and the following disclaimer.
|
|
//
|
|
// Redistributions in binary form must reproduce the above copyright
|
|
// notice, this list of conditions and the following disclaimer in the
|
|
// documentation and/or other materials provided with the
|
|
// distribution.
|
|
//
|
|
// Neither the name of Texas Instruments Incorporated nor the names of
|
|
// its contributors may be used to endorse or promote products derived
|
|
// from this software without specific prior written permission.
|
|
//
|
|
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
|
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
|
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
|
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
// $
|
|
//###########################################################################
|
|
|
|
#ifndef DSP2833x_GLOBALPROTOTYPES_H
|
|
#define DSP2833x_GLOBALPROTOTYPES_H
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
//
|
|
// shared global function prototypes
|
|
//
|
|
extern void InitAdc(void);
|
|
extern void DMAInitialize(void);
|
|
|
|
//
|
|
// DMA Channel 1
|
|
//
|
|
extern void DMACH1AddrConfig(volatile Uint16 *DMA_Dest,
|
|
volatile Uint16 *DMA_Source);
|
|
extern void DMACH1BurstConfig(Uint16 bsize, int16 srcbstep, int16 desbstep);
|
|
extern void DMACH1TransferConfig(Uint16 tsize, int16 srctstep, int16 deststep);
|
|
extern void DMACH1WrapConfig(Uint16 srcwsize, int16 srcwstep, Uint16 deswsize,
|
|
int16 deswstep);
|
|
extern void DMACH1ModeConfig(Uint16 persel, Uint16 perinte, Uint16 oneshot,
|
|
Uint16 cont, Uint16 synce, Uint16 syncsel,
|
|
Uint16 ovrinte, Uint16 datasize, Uint16 chintmode,
|
|
Uint16 chinte);
|
|
extern void StartDMACH1(void);
|
|
|
|
//
|
|
// DMA Channel 2
|
|
//
|
|
extern void DMACH2AddrConfig(volatile Uint16 *DMA_Dest,
|
|
volatile Uint16 *DMA_Source);
|
|
extern void DMACH2BurstConfig(Uint16 bsize, int16 srcbstep, int16 desbstep);
|
|
extern void DMACH2TransferConfig(Uint16 tsize, int16 srctstep, int16 deststep);
|
|
extern void DMACH2WrapConfig(Uint16 srcwsize, int16 srcwstep, Uint16 deswsize,
|
|
int16 deswstep);
|
|
extern void DMACH2ModeConfig(Uint16 persel, Uint16 perinte, Uint16 oneshot,
|
|
Uint16 cont, Uint16 synce, Uint16 syncsel,
|
|
Uint16 ovrinte, Uint16 datasize, Uint16 chintmode,
|
|
Uint16 chinte);
|
|
extern void StartDMACH2(void);
|
|
|
|
//
|
|
// DMA Channel 3
|
|
//
|
|
extern void DMACH3AddrConfig(volatile Uint16 *DMA_Dest,
|
|
volatile Uint16 *DMA_Source);
|
|
extern void DMACH3BurstConfig(Uint16 bsize, int16 srcbstep, int16 desbstep);
|
|
extern void DMACH3TransferConfig(Uint16 tsize, int16 srctstep, int16 deststep);
|
|
extern void DMACH3WrapConfig(Uint16 srcwsize, int16 srcwstep, Uint16 deswsize,
|
|
int16 deswstep);
|
|
extern void DMACH3ModeConfig(Uint16 persel, Uint16 perinte, Uint16 oneshot,
|
|
Uint16 cont, Uint16 synce, Uint16 syncsel,
|
|
Uint16 ovrinte, Uint16 datasize, Uint16 chintmode,
|
|
Uint16 chinte);
|
|
extern void StartDMACH3(void);
|
|
|
|
//
|
|
// DMA Channel 4
|
|
//
|
|
extern void DMACH4AddrConfig(volatile Uint16 *DMA_Dest,
|
|
volatile Uint16 *DMA_Source);
|
|
extern void DMACH4BurstConfig(Uint16 bsize, int16 srcbstep, int16 desbstep);
|
|
extern void DMACH4TransferConfig(Uint16 tsize, int16 srctstep, int16 deststep);
|
|
extern void DMACH4WrapConfig(Uint16 srcwsize, int16 srcwstep, Uint16 deswsize,
|
|
int16 deswstep);
|
|
extern void DMACH4ModeConfig(Uint16 persel, Uint16 perinte, Uint16 oneshot,
|
|
Uint16 cont, Uint16 synce, Uint16 syncsel,
|
|
Uint16 ovrinte, Uint16 datasize, Uint16 chintmode,
|
|
Uint16 chinte);
|
|
extern void StartDMACH4(void);
|
|
|
|
//
|
|
// DMA Channel 5
|
|
//
|
|
extern void DMACH5AddrConfig(volatile Uint16 *DMA_Dest,
|
|
volatile Uint16 *DMA_Source);
|
|
extern void DMACH5BurstConfig(Uint16 bsize, int16 srcbstep, int16 desbstep);
|
|
extern void DMACH5TransferConfig(Uint16 tsize, int16 srctstep, int16 deststep);
|
|
extern void DMACH5WrapConfig(Uint16 srcwsize, int16 srcwstep, Uint16 deswsize,
|
|
int16 deswstep);
|
|
extern void DMACH5ModeConfig(Uint16 persel, Uint16 perinte, Uint16 oneshot,
|
|
Uint16 cont, Uint16 synce, Uint16 syncsel,
|
|
Uint16 ovrinte, Uint16 datasize, Uint16 chintmode,
|
|
Uint16 chinte);
|
|
extern void StartDMACH5(void);
|
|
|
|
//
|
|
// DMA Channel 6
|
|
//
|
|
extern void DMACH6AddrConfig(volatile Uint16 *DMA_Dest,
|
|
volatile Uint16 *DMA_Source);
|
|
extern void DMACH6BurstConfig(Uint16 bsize, int16 srcbstep, int16 desbstep);
|
|
extern void DMACH6TransferConfig(Uint16 tsize, int16 srctstep, int16 deststep);
|
|
extern void DMACH6WrapConfig(Uint16 srcwsize, int16 srcwstep, Uint16 deswsize,
|
|
int16 deswstep);
|
|
extern void DMACH6ModeConfig(Uint16 persel, Uint16 perinte, Uint16 oneshot,
|
|
Uint16 cont, Uint16 synce, Uint16 syncsel,
|
|
Uint16 ovrinte, Uint16 datasize, Uint16 chintmode,
|
|
Uint16 chinte);
|
|
extern void StartDMACH6(void);
|
|
|
|
extern void InitPeripherals(void);
|
|
#if DSP28_ECANA
|
|
extern void InitECan(void);
|
|
extern void InitECana(void);
|
|
extern void InitECanGpio(void);
|
|
extern void InitECanaGpio(void);
|
|
#endif // endif DSP28_ECANA
|
|
#if DSP28_ECANB
|
|
extern void InitECanb(void);
|
|
extern void InitECanbGpio(void);
|
|
#endif // endif DSP28_ECANB
|
|
extern void InitECap(void);
|
|
extern void InitECapGpio(void);
|
|
extern void InitECap1Gpio(void);
|
|
extern void InitECap2Gpio(void);
|
|
#if DSP28_ECAP3
|
|
extern void InitECap3Gpio(void);
|
|
#endif // endif DSP28_ECAP3
|
|
#if DSP28_ECAP4
|
|
extern void InitECap4Gpio(void);
|
|
#endif // endif DSP28_ECAP4
|
|
#if DSP28_ECAP5
|
|
extern void InitECap5Gpio(void);
|
|
#endif // endif DSP28_ECAP5
|
|
#if DSP28_ECAP6
|
|
extern void InitECap6Gpio(void);
|
|
#endif // endif DSP28_ECAP6
|
|
extern void InitEPwm(void);
|
|
extern void InitEPwmGpio(void);
|
|
extern void InitEPwm1Gpio(void);
|
|
extern void InitEPwm2Gpio(void);
|
|
extern void InitEPwm3Gpio(void);
|
|
#if DSP28_EPWM4
|
|
extern void InitEPwm4Gpio(void);
|
|
#endif // endif DSP28_EPWM4
|
|
#if DSP28_EPWM5
|
|
extern void InitEPwm5Gpio(void);
|
|
#endif // endif DSP28_EPWM5
|
|
#if DSP28_EPWM6
|
|
extern void InitEPwm6Gpio(void);
|
|
#endif // endif DSP28_EPWM6
|
|
#if DSP28_EQEP1
|
|
extern void InitEQep(void);
|
|
extern void InitEQepGpio(void);
|
|
extern void InitEQep1Gpio(void);
|
|
#endif // if DSP28_EQEP1
|
|
#if DSP28_EQEP2
|
|
extern void InitEQep2Gpio(void);
|
|
#endif // endif DSP28_EQEP2
|
|
extern void InitGpio(void);
|
|
extern void InitI2CGpio(void);
|
|
|
|
extern void InitMcbsp(void);
|
|
extern void InitMcbspa(void);
|
|
extern void delay_loop(void);
|
|
extern void InitMcbspaGpio(void);
|
|
extern void InitMcbspa8bit(void);
|
|
extern void InitMcbspa12bit(void);
|
|
extern void InitMcbspa16bit(void);
|
|
extern void InitMcbspa20bit(void);
|
|
extern void InitMcbspa24bit(void);
|
|
extern void InitMcbspa32bit(void);
|
|
#if DSP28_MCBSPB
|
|
extern void InitMcbspb(void);
|
|
extern void InitMcbspbGpio(void);
|
|
extern void InitMcbspb8bit(void);
|
|
extern void InitMcbspb12bit(void);
|
|
extern void InitMcbspb16bit(void);
|
|
extern void InitMcbspb20bit(void);
|
|
extern void InitMcbspb24bit(void);
|
|
extern void InitMcbspb32bit(void);
|
|
#endif // endif DSP28_MCBSPB
|
|
|
|
extern void InitPieCtrl(void);
|
|
extern void InitPieVectTable(void);
|
|
|
|
extern void InitSci(void);
|
|
extern void InitSciGpio(void);
|
|
extern void InitSciaGpio(void);
|
|
#if DSP28_SCIB
|
|
extern void InitScibGpio(void);
|
|
#endif // endif DSP28_SCIB
|
|
#if DSP28_SCIC
|
|
extern void InitScicGpio(void);
|
|
#endif
|
|
extern void InitSpi(void);
|
|
extern void InitSpiGpio(void);
|
|
extern void InitSpiaGpio(void);
|
|
extern void InitSysCtrl(void);
|
|
extern void InitTzGpio(void);
|
|
extern void InitXIntrupt(void);
|
|
extern void InitXintf(void);
|
|
extern void InitXintf16Gpio();
|
|
extern void InitXintf32Gpio();
|
|
extern void InitPll(Uint16 pllcr, Uint16 clkindiv);
|
|
extern void InitPeripheralClocks(void);
|
|
extern void EnableInterrupts(void);
|
|
extern void DSP28x_usDelay(Uint32 Count);
|
|
extern void ADC_cal (void);
|
|
#define KickDog ServiceDog // For compatiblity with previous versions
|
|
extern void ServiceDog(void);
|
|
extern void DisableDog(void);
|
|
extern Uint16 CsmUnlock(void);
|
|
|
|
//
|
|
// DSP28_DBGIER.asm
|
|
//
|
|
extern void SetDBGIER(Uint16 dbgier);
|
|
|
|
//
|
|
// CAUTION
|
|
// This function MUST be executed out of RAM. Executing it
|
|
// out of OTP/Flash will yield unpredictable results
|
|
//
|
|
extern void InitFlash(void);
|
|
|
|
void MemCopy(Uint16 *SourceAddr, Uint16* SourceEndAddr, Uint16* DestAddr);
|
|
|
|
//
|
|
// External symbols created by the linker cmd file
|
|
// DSP28 examples will use these to relocate code from one LOAD location
|
|
// in either Flash or XINTF to a different RUN location in internal
|
|
// RAM
|
|
//
|
|
extern Uint16 RamfuncsLoadStart;
|
|
extern Uint16 RamfuncsLoadEnd;
|
|
extern Uint16 RamfuncsRunStart;
|
|
extern Uint16 RamfuncsLoadSize;
|
|
|
|
extern Uint16 XintffuncsLoadStart;
|
|
extern Uint16 XintffuncsLoadEnd;
|
|
extern Uint16 XintffuncsRunStart;
|
|
extern Uint16 XintffuncsLoadSize;
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif /* extern "C" */
|
|
|
|
#endif // - end of DSP2833x_GLOBALPROTOTYPES_H
|
|
|
|
//
|
|
// End of file
|
|
//
|
|
|