// 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 //