📄 ppi.i
字号:
#line 1 "D:\\Program Files\\Analog Devices\\VisualDSP 3.5 16-Bit\\Blackfin\\include\\yvals.h"
#pragma once
#pragma system_header /* yvals.h */
#line 74 "D:\\Program Files\\Analog Devices\\VisualDSP 3.5 16-Bit\\Blackfin\\include\\yvals.h"
#line 87 "D:\\Program Files\\Analog Devices\\VisualDSP 3.5 16-Bit\\Blackfin\\include\\yvals.h"
#line 111 "D:\\Program Files\\Analog Devices\\VisualDSP 3.5 16-Bit\\Blackfin\\include\\yvals.h"
typedef long int _Ptrdifft;
typedef long unsigned int _Sizet;
#line 217 "D:\\Program Files\\Analog Devices\\VisualDSP 3.5 16-Bit\\Blackfin\\include\\yvals.h"
#line 232 "D:\\Program Files\\Analog Devices\\VisualDSP 3.5 16-Bit\\Blackfin\\include\\yvals.h"
#line 265 "D:\\Program Files\\Analog Devices\\VisualDSP 3.5 16-Bit\\Blackfin\\include\\yvals.h"
typedef unsigned int _Wintt;
typedef unsigned int _Wchart;
#line 304 "D:\\Program Files\\Analog Devices\\VisualDSP 3.5 16-Bit\\Blackfin\\include\\yvals.h"
typedef char * va_list;
typedef va_list _Va_list;
#line 324 "D:\\Program Files\\Analog Devices\\VisualDSP 3.5 16-Bit\\Blackfin\\include\\yvals.h"
#line 334 "D:\\Program Files\\Analog Devices\\VisualDSP 3.5 16-Bit\\Blackfin\\include\\yvals.h"
typedef long long _Longlong;
typedef unsigned long long _ULonglong;
#line 342 "D:\\Program Files\\Analog Devices\\VisualDSP 3.5 16-Bit\\Blackfin\\include\\yvals.h"
extern "C" {
void _Atexit(void (*)(void));
}
typedef struct _Mbstatet {
_Wchart _Wchar;
char _State;
} _Mbstatet;
typedef struct _Fpost {
long _Off;
_Mbstatet _Wstate;
} _Fpost;
#line 372 "D:\\Program Files\\Analog Devices\\VisualDSP 3.5 16-Bit\\Blackfin\\include\\yvals.h"
#line 394 "D:\\Program Files\\Analog Devices\\VisualDSP 3.5 16-Bit\\Blackfin\\include\\yvals.h"
#line 406 "D:\\Program Files\\Analog Devices\\VisualDSP 3.5 16-Bit\\Blackfin\\include\\yvals.h"
#line 21 "D:\\Program Files\\Analog Devices\\VisualDSP 3.5 16-Bit\\Blackfin\\include\\stdlib.h"
typedef _Sizet size_t;
typedef _Wchart wchar_t;
#line 1 "D:\\Program Files\\Analog Devices\\VisualDSP 3.5 16-Bit\\Blackfin\\include\\stdlib_bf.h"
#pragma once
#pragma system_header /* stdlib_bf.h */
void * _heap_calloc(int, size_t, size_t);
void _heap_free(int, void *);
void * _heap_malloc(int, size_t);
void * _heap_realloc(int, void *, size_t);
int _heap_init(int);
int _heap_install(void *, size_t, int);
int _heap_lookup(int);
#line 50 "D:\\Program Files\\Analog Devices\\VisualDSP 3.5 16-Bit\\Blackfin\\include\\stdlib_bf.h"
#line 61 "D:\\Program Files\\Analog Devices\\VisualDSP 3.5 16-Bit\\Blackfin\\include\\stdlib.h"
#line 80 "D:\\Program Files\\Analog Devices\\VisualDSP 3.5 16-Bit\\Blackfin\\include\\stdlib.h"
typedef struct
{
int quot;
int rem;
} div_t;
typedef struct
{
long quot;
long rem;
} ldiv_t;
extern "C" {
void _Exit(void) ;
void exit(int) ;
char * getenv(const char *);
int system(const char *);
}
void __builtin_abort(void) ;
void abort(void) ;
int __builtin_abs(int);
void * calloc(size_t, size_t);
div_t div(int, int);
void free(void *);
long labs(long);
ldiv_t ldiv(long, long);
void * malloc(size_t);
int mblen(const char *, size_t);
size_t mbstowcs(wchar_t *, const char *, size_t);
int mbtowc(wchar_t *, const char *, size_t);
int rand(void);
void srand(unsigned int);
void * realloc(void *, size_t);
long strtol(const char *, char **, int);
size_t wcstombs(char *, const wchar_t *, size_t);
int wctomb(char *, wchar_t);
#line 153 "D:\\Program Files\\Analog Devices\\VisualDSP 3.5 16-Bit\\Blackfin\\include\\stdlib.h"
unsigned long _Stoul(const char *, char **, int);
float _Stof(const char *, char **, long);
double _Stod(const char *, char **, long);
long double _Stold(const char *, char **, long);
_Longlong _Stoll(const char *, char **, int);
_ULonglong _Stoull(const char *, char **, int);
extern size_t _Getmbcurmax(void);
#line 234 "D:\\Program Files\\Analog Devices\\VisualDSP 3.5 16-Bit\\Blackfin\\include\\stdlib.h"
typedef int _Cmpfun(const void *, const void *);
int atexit(void (*)(void));
void * bsearch(const void *, const void *, size_t, size_t, _Cmpfun *);
void qsort(void *, size_t, size_t, _Cmpfun *);
double atof(const char *);
int atoi(const char *);
long atol(const char *);
double strtod(const char *, char **);
unsigned long strtoul(const char *, char **, int);
#line 253 "D:\\Program Files\\Analog Devices\\VisualDSP 3.5 16-Bit\\Blackfin\\include\\stdlib.h"
#line 276 "D:\\Program Files\\Analog Devices\\VisualDSP 3.5 16-Bit\\Blackfin\\include\\stdlib.h"
#line 19 "D:\\Program Files\\Analog Devices\\VisualDSP 3.5 16-Bit\\Blackfin\\include\\ccblkfn.h"
short __builtin_ones(int _x);
short __builtin_lvitmax1x16res1(int _x, int _y);
short __builtin_rvitmax1x16res1(int _x, int _y);
int __builtin_lvitmax2x16res1(int _x, int _y, int _z);
int __builtin_rvitmax2x16res1(int _x, int _y, int _z);
int __builtin_vitmaxres1x16(short _x);
int __builtin_vitmaxres2x16(int _x);
short __builtin_expadj1x32(int _x, short _y);
short __builtin_expadj2x16(int _x, short _y);
short __builtin_expadj1x16(short _x, short _y);
int __builtin_divs(int _x, int _y);
int __builtin_divq(int _x, int _y);
void __builtin_idle();
void __builtin_halt();
void __builtin_abort();
void __builtin_ssync();
void __builtin_csync();
unsigned __builtin_cli();
void __builtin_sti(unsigned);
void __builtin_raise(int);
void __builtin_excpt(int);
int __builtin_sysreg_read(int);
void __builtin_sysreg_write(int,int);
long long __builtin_sysreg_read64(int);
void __builtin_sysreg_write64(int,long long);
void *__builtin_alloca(int);
long __builtin_circindex(long, long, unsigned long);
void *__builtin_circptr(const void *, long, const void *, unsigned long);
long long __builtin_bitmux_shr_res1(long long, int, int);
int __builtin_bitmux_shr_res2(long long);
int __builtin_bitmux_shr_res3(long long);
long long __builtin_bitmux_shl_res1(long long, int, int);
int __builtin_bitmux_shl_res2(long long);
int __builtin_bitmux_shl_res3(long long);
#line 78 "D:\\Program Files\\Analog Devices\\VisualDSP 3.5 16-Bit\\Blackfin\\include\\ccblkfn.h"
#line 91 "D:\\Program Files\\Analog Devices\\VisualDSP 3.5 16-Bit\\Blackfin\\include\\ccblkfn.h"
#line 140 "D:\\Program Files\\Analog Devices\\VisualDSP 3.5 16-Bit\\Blackfin\\include\\ccblkfn.h"
#line 4 ".\\ppi.c"
#line 1 "D:\\Program Files\\Analog Devices\\VisualDSP 3.5 16-Bit\\Blackfin\\include\\sys\\exception.h"
#pragma once
#pragma system_header /* exception.h */
#line 76 "D:\\Program Files\\Analog Devices\\VisualDSP 3.5 16-Bit\\Blackfin\\include\\sys\\exception.h"
#line 94 "D:\\Program Files\\Analog Devices\\VisualDSP 3.5 16-Bit\\Blackfin\\include\\sys\\exception.h"
typedef enum {
ik_err=-1,
ik_emulation,
ik_reset,
ik_nmi,
ik_exception,
ik_global_int_enable,
ik_hardware_err,
ik_timer,
ik_ivg7,
ik_ivg8,
ik_ivg9,
ik_ivg10,
ik_ivg11,
ik_ivg12,
ik_ivg13,
ik_ivg14,
ik_ivg15,
num_interrupt_kind
} interrupt_kind;
typedef struct {
int r0x, r1x, r2x;
struct {
int lb1, lb0, lt1, lt0, lc1, lc0;
int a1, a1x, a0, a0x, cc;
int l3,l2,l1,l0,b3,b2,b1,b0;
int m3;
int m2,m1,m0,i3,i2,i1,i0;
} _inaccessible;
int p5, p4, p3, p2, p1, p0;
int r7, r6, r5, r4, r3, r2, r1, r0;
int fp;
int astat;
} interrupt_regs;
typedef struct {
interrupt_kind kind;
int value;
void *pc;
void *addr;
unsigned status;
interrupt_regs *regsaddr;
} interrupt_info;
typedef void (*ex_handler_fn)(int, int, int);
#line 210 "D:\\Program Files\\Analog Devices\\VisualDSP 3.5 16-Bit\\Blackfin\\include\\sys\\exception.h"
void get_interrupt_info(interrupt_kind, interrupt_info *);
void _ex_report_event(interrupt_info *);
ex_handler_fn register_handler(interrupt_kind, ex_handler_fn);
int raise_interrupt(interrupt_kind kind, int which,
int cmd, int arg1, int arg2);
#line 5 ".\\ppi.c"
#line 1 "plx9054_bf533_test.h"
#line 17 "plx9054_bf533_test.h"
typedef struct __Plx_dsp_com{
unsigned short L1ToSdramBank;
unsigned long pL1ToSdramAddr;
unsigned long L1ToSdramOffset;
unsigned short NumberOfPpibuf;
unsigned short NumberCalculationbuf;
unsigned short firtPpiInterrupt;
unsigned long pSdramToFPGA;
unsigned long SdramToFPGAOffset;
unsigned short SdramToFPGABank;
}Plx_dsp_com;
typedef struct _DMA_DESC_PTR_LARGE{
unsigned short NDPL;
unsigned short NDPH;
unsigned short SAL;
unsigned short SAH;
unsigned short DMACFG;
unsigned short XCNT;
unsigned short XMOD;
unsigned short YCNT;
unsigned short YMOD;
}DMA_DESC_PTR_LARGE;
typedef struct _DMA_DESC_PTR_SMALL{
unsigned short NDPL;
unsigned short SAL;
unsigned short SAH;
unsigned short XCNT;
unsigned short XMOD;
unsigned short YCNT;
unsigned short YMOD;
}DMA_DESC_PTR_SMALL;
#line 6 ".\\ppi.c"
extern Plx_dsp_com dsp2plx;
extern unsigned short *pSDRam;
extern unsigned short *pDspStatus ;
DMA_DESC_PTR_LARGE Dma_desc_ptr_small[3];
void StartPPI();
void Init_PPI(void)
{
*((volatile unsigned short *)0xFFC01010) = 0;
*((volatile unsigned short *)0xFFC01008) = 4096 -1;
*((volatile unsigned short *)0xFFC0100C) = 0x0000;
*((volatile unsigned short *)0xFFC01000) = 0x780c;
*((volatile unsigned short *)0xFFC00C2C) = 0x00;
*((volatile unsigned short *)0xFFC00C08) = 0x7900|0x00000002 | 0x00000004 | 0x00000080 | 0x00000020;
__builtin_ssync();
*((volatile void * *)0xFFC00C00) = &Dma_desc_ptr_small[0];
*((volatile unsigned short *)0xFFC00C08)|=0x1;
}
void StartPPI()
{
*((volatile unsigned short *)0xFFC01000) |=0x00000001;
__builtin_ssync();
}
void StopPPI()
{
*((volatile unsigned short *)0xFFC01000) &=~0x00000001;
__builtin_ssync();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -