📄 dspif.h
字号:
#ifndef DSPIF_H
#define DSPIF_H
#include "include.h"
typedef enum
{
MSB_FIRST,
LSB_FIRST
}TOrder;
/* HPIC "per-bits" */
#define SET_DSPINT 4 /* write HPIC */
#define CLEAR_DSPINT 0 /* write HPIC */
#define SET_HINT 0 /* write HPIC */
#define CLEAR_HINT 8 /* write HPIC */
#define CHECK_HINT 8 /* read HPIC */
#define XHPIA (1<<4)
#define First (0<<0)
#define Second (1<<0)
#define Write (0<<1)
#define Read (1<<1)
#define HPIC ((0<<3)+(0<<2))
#define HPID ((0<<3)+(1<<2))
#define HPIA ((1<<3)+(0<<2))
#define HPIDL ((1<<3)+(1<<2))
/* define IFs to DSP */
#define DSP1 0x06000000
#define DSP2 0x08000000
#define toDSP 0x60
#define fromDSP 0x63
#define DSPHostWrite(DSPx,Data, Destination, Byte) *(volatile unsigned char *)(DSPx+Write+Destination+Byte) = Data
#define DSPHostRead(DSPx,Source, Byte) *(volatile unsigned char *)(DSPx+Read+Source+Byte)
//to DSP command
#define BANDWIDTH (('B'<<8)+('W'))
#define SPECSPAN (('S'<<8)+('S'))
#define MODULATION (('M'<<8)+('O'))
#define GAINCTRL (('G'<<8)+('M'))
#define GCTRL_AGC (('A'<<8)+('C'))
#define GCTRL_MGC (('M'<<8)+('C'))
#define SAMAUDIO (('S'<<8)+('A'))
#define SAMDATA (('S'<<8)+('D'))
#define ON (('O'<<8)+('N'))
#define OFF (('O'<<8)+('F'))
#define GETSPEC (('G'<<8)+('S'))
#define GETLEV (('G'<<8)+('L'))
//#define TEST 0x55aa
typedef enum
{
AM,
FM,
CW,
USB,
LSB
}Modulation;
typedef enum
{
B0p2K,
B0p5K,
B1p0K,
B3p2K,
B5p0K,
B6p4K,
B8p0K,
B10K,
B15K,
B20K,
B30K,
B35K,
B50K,
B60K,
B100K,
B150K,
B200K,
B250K,
B300K,
B500K,
B700K
}IFBandWidth;
//Functions
int DSPCheckHInt(U32 DSPx);
void DSPClearHInt(U32 DSPx);
void DSPSendHInt(U32 DSPx);
void DSPSetHPIByteOrder(U32 DSPx,TOrder Order);
void DSPHostWriteWord(U32 DSPx, U16 addr, U16 data);
int DSPHostReadWord(U32 DSPx, U16 addr);
int DSPWriteCommand(U32 DSPx, U16 command,U16 parameter1,U16 parameter2);
void DSPHostWriteBlock(U32 DSPx, U16 addr, U16 *data, U16 size);
void DSPHostReadBlock(U32 DSPx, U16 addr, U16 *data, U16 size);
int DSPProgramDownload(U32 DSPx, const U8 *ProgramArray);
void DSPHostWriteHBlock(U32 DSPx, U16 addr, U16 *data, U16 size);
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -