资源简介
DSP通过自带的uPP并行口与FPGA通信,uPP支持半双工通信,DSP型号为TMS320C6748。FPGA将前端采集到的原始数据发送给DSP,DSP进行处理后将计算后的结果传回FPGA。
代码片段和文件信息
/***************************************************
File : c6748.c
Author : Wang Chao
Version : V1.1
Date : 11/25/2015
Brief : C6748 hardware configuration
***************************************************/
#include “TL6748.h“ // 创龙 DSP6748 开发板相关声明
#include “hw_types.h“
#include “interrupt.h“
#include “psc.h“
#include “soc_C6748.h“
#include “gpio.h“
#include “hw_syscfg0_C6748.h“ // 系统配置模块寄存器
#include “upp.h“
#include “upp_header.h“
#include “fft.h“
#include “c6748.h“
void RecvDataIsr(void);
void TransmitDataIsr(void);
void TimerIsr( void );
void PSC_Init(void)
{
PSCModuleControl( SOC_PSC_1_REGS HW_PSC_UPP PSC_POWERDOMAIN_ALWAYS_ON PSC_MDCTL_NEXT_ENABLE );
PSCModuleControl( SOC_PSC_1_REGS HW_PSC_GPIO PSC_POWERDOMAIN_ALWAYS_ON PSC_MDCTL_NEXT_ENABLE );
PSCModuleControl( SOC_PSC_1_REGS HW_PSC_DDR2_MDDR PSC_POWERDOMAIN_ALWAYS_ON PSC_MDCTL_NEXT_ENABLE );
}
/*
* GPIO initialization
*/
void GPIOBankPinInit( void )
{
// GPIO0[0] 1
// GPIO1[0] 17
// GPIO2[0] 33
// GPIO3[0] 49
// GPIO4[0] 65
// GPIO5[0] 81
// GPIO6[0] 97
// GPIO7[0] 113
// GPIO8[0] 129
unsigned int savePinMux = 0;
// DSP8->E18 GP1[1] 18 this pin is used as interrupt input to receive data
savePinMux = (HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(4)) &
~(SYSCFG_PINMUX4_PINMUX4_27_24));
HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(4)) =
(PIN_MUX_4_GPIO1_1_ENABLE | savePinMux);
// DSP7->F19 GP1[0] 17 this pin is used as an acknowledgment to FPGA
savePinMux = 0;
savePinMux = (HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(4)) &
~(SYSCFG_PINMUX4_PINMUX4_31_28));
HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(4)) =
(PIN_MUX_4_GPIO1_0_ENABLE | savePinMux);
// DSP1->T17 GP6[15] 112 this pin is used as interrupt input to transmit data to FPGA
savePinMux = (HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(13)) &
~(SYSCFG_PINMUX13_PINMUX13_3_0));
HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(13)) =
(PIN_MUX_13_GPIO6_15_ENABLE | savePinMux);
// upp_dir->T18 GP6[14] 111 this pin corresponds to DSP2 onborad
savePinMux = 0;
savePinMux = (HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(13)) &
~(SYSCFG_PINMUX13_PINMUX13_7_4));
HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(13)) =
(PIN_MUX_13_GPIO6_14_ENABLE | savePinMux);
// STATE->R16 GP6[12] 109 this pin corresponds to DSP3 onboard
savePinMux = (HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(13)) &
~(SYSCFG_PINMUX13_PINMUX13_15_12));
HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(13)) =
(PIN_MUX_13_GPIO6_12_ENABLE | savePinMux);
/* For debug->F4 GP0[8] 9 */
savePinMux = 0;
savePinMux = (HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(0)) &
~(SYSCFG_PINMUX0_PINMUX0_31_28));
HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(0)) =
(PIN_MUX_0_GPIO0_8_ENABLE | savePinMux);
// LED1->A1 GP0[15] 16 this pin corresponds to LED1
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 7839 2016-10-28 18:31 upp.v
文件 8819 2016-10-27 20:47 c6748.c
文件 1884 2016-10-26 14:02 c6748.h
文件 9565 2016-11-23 16:09 upp.c
文件 4414 2016-10-18 17:00 upp_header.h
----------- --------- ---------- ----- ----
32521 5
相关资源
- DSP最小系统开题报告
- 基于FPGA的多功能数字钟的设计与实现
- 计组课设基于FPGA的CPU设计
- 8位全加器EGO1FPGA实现
- DSP28335电机控制程序
- FPGA的图像边缘检测
- 高速数据采集系统
- 光纤陀螺信号解调代码
- PWM的FPGA实现
- sdram verilog 仿真模型
- FPGA电子秒表设计实验报告
- 多功能数字钟FPGA完整工程
- dsp2812 ADC程序
- dsp28335pcb封装
- 步进电机FPGA_S曲线程序
- 《自己动手写CPU》书中代码
- 基于FPGA的MP3解码VERILOG源码
- TI DSP 28335 串口非FIFO中断接收程序
- TI DSP 28335 串口FIFO中断接收程序
- DSP-TMSC6678UDP文件传送
- 四则小计算器设计
- DSP 与上位机通讯
- DSP28335的PID程序
- DSP 外部中断
- DSP28335中的SCI串口应用
- 基于DSP的单相SPWM逆变器数字化控制技
- dsp28335AD7606程序
- DSP_F2812的头文件、源文件和CMD文件
- C2000 DSP对DS18B20的初始化读写程序
- CCS CMD文件说明与编写
评论
共有 条评论