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

📄 common.h

📁 基于8051F单片机,实现1024点的FFT 用C 语言实现的.效果与FPGA实现相同.
💻 H
字号:
#ifndef _COMMON_H_
#define _COMMON_H_
 

//-----------------------------------------------------------------------------
// Includes
//-----------------------------------------------------------------------------

#include <c8051f120.h>                 // SFR declarations
#include <stdio.h>
#include "FFT_Code_Tables.h"           // Code Tables for FFT routines

//-----------------------------------------------------------------------------
// 16-bit SFR Definitions for 'F12x
//-----------------------------------------------------------------------------

sfr16 DP       = 0x82;                 // data pointer
sfr16 ADC0     = 0xbe;                 // ADC0 data
sfr16 ADC0GT   = 0xc4;                 // ADC0 greater than window
sfr16 ADC0LT   = 0xc6;                 // ADC0 less than window
sfr16 RCAP2    = 0xca;                 // Timer2 capture/reload
sfr16 RCAP3    = 0xca;                 // Timer3 capture/reload
sfr16 RCAP4    = 0xca;                 // Timer4 capture/reload
sfr16 TMR2     = 0xcc;                 // Timer2
sfr16 TMR3     = 0xcc;                 // Timer3
sfr16 TMR4     = 0xcc;                 // Timer4
sfr16 DAC0     = 0xd2;                 // DAC0 data
sfr16 DAC1     = 0xd2;                 // DAC1 data
sfr16 PCA0CP5  = 0xe1;                 // PCA0 Module 5 capture
sfr16 PCA0CP2  = 0xe9;                 // PCA0 Module 2 capture
sfr16 PCA0CP3  = 0xeb;                 // PCA0 Module 3 capture
sfr16 PCA0CP4  = 0xed;                 // PCA0 Module 4 capture
sfr16 PCA0     = 0xf9;                 // PCA0 counter
sfr16 PCA0CP0  = 0xfb;                 // PCA0 Module 0 capture
sfr16 PCA0CP1  = 0xfd;                 // PCA0 Module 1 capture


//-----------------------------------------------------------------------------
// Global CONSTANTS and Variable Type Definitions
//-----------------------------------------------------------------------------
#define NUM_BITS 16                    // Number of Bits in Data

#define DATA_BEGIN 0x0000              // Beginning of XRAM Data

#define EXTCLK       22118400          // External oscillator frequency in Hz
#define SYSCLK       49760000          // Output of PLL derived from
                                       // (EXTCLK*9/4)
#define BAUDRATE     115200            // Baud Rate for UART0

#define SAMPLE_RATE  10000             // Sample frequency in Hz

#define RUN_ONCE     1                 // Setting to a non-zero value will
                                       // cause the program to stop after one
                                       // data set.

typedef union IBALONG {                // Integer or Byte-addressable LONG
   long l;                             // long: Var.l
   unsigned int i[2];                  // u int: Var.i[0]:Var.i[1]
   unsigned char b[4];                 // u char: Var.b[0]:Var.b[1]:
                                       //          Var.b[2]:Var.b[3]
} IBALONG;


typedef union BAINT {                  // Byte-addressable INT
   int i;                              // int: Var.i
   unsigned char b[2];                 // u char: Var.b[0]:Var.b[1]
} BAINT;



void SYSCLK_Init (void);
void PORT_Init (void);
void UART0_Init (void);


// NUM_FFT is defined in the "FFT_Code_Tables.h" header file


bit  Conversion_Set_Complete;

unsigned int BinNum;
unsigned int index, ADC_Index;



#endif

⌨️ 快捷键说明

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