老古开发网首页
导航:老古开发网首页文章索引索引第2245页文章分类DSP数字信号处理第23页→[C5402DEF.H(菜鸟完善版)]
| -文章搜索 - 最新文章 - |

C5402DEF.H(菜鸟完善版)

发布时间:2006年6月19日 点击次数:883
来源:   作者:
 

/*-------------------------------------------------------
文   件   名 :  C5402DEF.H
创   建   人 :  DSP菜鸟  HotPower@126.com
创 建 日  期 :  2006.6.09  11:19
最近修改日期 :  2006.6.13  10:56
创 建  地 点 : 西安大雁塔村队部
版   本   号 : V2.18 (菜鸟完善版)
备        注 : 由此文件出现的问题,DSP菜鸟不负任何责任
                将不断完善本头文件。
-------------------------------------------------------*/


#ifndef __C5402DEF_H
#define __C5402DEF_H

typedef volatile unsigned int TI_REG;

#define Disable() asm(" ssbx intm");
#define Enable()  asm(" rsbx intm");

#define idle(x)   asm(" IDLE " :x:);

#define idle1()   asm(" IDLE 1");
#define idle2()   asm(" IDLE 2");
#define idle3()   asm(" IDLE 3");
/*---------------------------------------
        TCR位定义
----------------------------------------*/
#define TDDR         0//0~3
#define TSS          4
#define PSC          6//6~9
#define FREE        10
#define SOFT        11

/*---------------------------------------
        IMR位定义
----------------------------------------*/
#define INT0   0
#define INT1   1
#define INT2   2
#define TINT0   3

#define BRINT0   4
#define BXINT0   5

#define TINT1   7

#define INT3   8
#define HPINT   9
#define BRINT1  10
#define BXINT1  11

#define DMAC0   6
#define DMAC1   7

#define DMAC2  10
#define DMAC3  11
#define DMAC4  12
#define DMAC5  13


/*---------------------------------------
        ST0位定义
----------------------------------------*/
#define OVB      9
#define OVA     10
#define C       11
#define TC      12

/*---------------------------------------
        ST1位定义
----------------------------------------*/
#define SXM      8
#define OVM      9
#define INTM    11
#define HM      12
#define XF      13
#define CPL     14
#define BRAF    15


typedef volatile union _TI_UMcBSP{//McBSP地址冲突处理
  TI_REG SPCR1;//串行接口控制寄存器1
  TI_REG SPCR2;//串行接口控制寄存器2
  TI_REG RCR1;//接收控制寄存器1
  TI_REG RCR2;//接收控制寄存器2
  TI_REG XCR1;//发送控制寄存器1
  TI_REG XCR2;//发送控制寄存器2
  TI_REG SRGR1;//采样率发生器寄存器1
  TI_REG SRGR2;//采样率发生器寄存器2
  TI_REG MCR1;//多通道寄存器1
  TI_REG MCR2;//多通道寄存器2
  TI_REG RCERA;//接收通道使能寄存器段A
  TI_REG RCERB;//接收通道使能寄存器段B
  TI_REG XCERA;//发送通道使能寄存器段A
  TI_REG XCERB;//发送通道使能寄存器段B
  TI_REG PCR;//引脚控制寄存器
}TI_UMcBSP;

typedef union _TI_UDMA {//DMA地址冲突处理
  TI_REG DMSRC0;//DMA通道源地址寄存器0
  TI_REG DMDST0;//DMA通道目的地址寄存器0
  TI_REG DMCTR0;//DMA通道单元计数寄存器0
  TI_REG DMSFC0;//DMA通道同步事件和帧寄存器0
  TI_REG DMMCR0;//DMA通道传输模式控制寄存器0

  TI_REG DMSRC1;//DMA通道源地址寄存器1
  TI_REG DMDST1;//DMA通道目的地址寄存器1
  TI_REG DMCTR1;//DMA通道单元计数寄存器1
  TI_REG DMSFC1;//DMA通道同步事件和帧寄存器1
  TI_REG DMMCR1;//DMA通道传输模式控制寄存器1

  TI_REG DMSRC2;//DMA通道源地址寄存器2
  TI_REG DMDST2;//DMA通道目的地址寄存器2
  TI_REG DMCTR2;//DMA通道单元计数寄存器2
  TI_REG DMSFC2;//DMA通道同步事件和帧寄存器2
  TI_REG DMMCR2;//DMA通道传输模式控制寄存器2

  TI_REG DMSRC3;//DMA通道源地址寄存器3
  TI_REG DMDST3;//DMA通道目的地址寄存器3
  TI_REG DMCTR3;//DMA通道单元计数寄存器3
  TI_REG DMSFC3;//DMA通道同步事件和帧寄存器3
  TI_REG DMMCR3;//DMA通道传输模式控制寄存器3

  TI_REG DMSRC4;//DMA通道源地址寄存器4
  TI_REG DMDST4;//DMA通道目的地址寄存器4
  TI_REG DMCTR4;//DMA通道单元计数寄存器4
  TI_REG DMSFC4;//DMA通道同步事件和帧寄存器4
  TI_REG DMMCR4;//DMA通道传输模式控制寄存器4

  TI_REG DMSRC5;//DMA通道源地址寄存器5
  TI_REG DMDST5;//DMA通道目的地址寄存器5
  TI_REG DMCTR5;//DMA通道单元计数寄存器5
  TI_REG DMSFC5;//DMA通道同步事件和帧寄存器5
  TI_REG DMMCR5;//DMA通道传输模式控制寄存器5

  TI_REG DMSRCP;//DMA源程序页地址(公用的通道)
  TI_REG DMDSTP;//DMA目的程序页地址(公用的通道)
 
  TI_REG DMIDX0;//DMA单元变址寄存器0
  TI_REG DMIDX1;//DMA单元变址寄存器1
  TI_REG DMFRI0;//DMA帧变址寄存器0
  TI_REG DMFRI1;//DMA帧变址寄存器1
  TI_REG DMGSA;//DMA全局源地址重载寄存器
  TI_REG DMGDA;//DMA全局目的地址重载寄存器
  TI_REG DMGCR;//DMA全局计数重载寄存器
  TI_REG DMGFR;//DMA全局帧计数重载寄存器
}TI_UDMA;

typedef volatile struct _TI_SREG {
//0x0000
  TI_REG IMR;//中断屏蔽寄存器
  TI_REG IFR;//中断标志寄存器
  TI_REG Reserved0[4]; //保留4个空位
  TI_REG ST0;//状态寄存器0
  TI_REG ST1;//状态寄存器1
  TI_REG AL;//累加器A低16位
  TI_REG AH;//累加器A高16位
  TI_REG AG;//累加器A保护位
  TI_REG BL;//累加器B低16位
  TI_REG BH;//累加器B高16位
  TI_REG BG;//累加器B保护位
  TI_REG TREG;//临时寄存器
  TI_REG TRN;
//0x0010
  TI_REG AR0;//辅助寄存器0
  TI_REG AR1;//辅助寄存器1
  TI_REG AR2;//辅助寄存器2
  TI_REG AR3;//辅助寄存器3
  TI_REG AR4;//辅助寄存器4
  TI_REG AR5;//辅助寄存器5
  TI_REG AR6;//辅助寄存器6
  TI_REG AR7;//辅助寄存器7
  TI_REG SP;//堆栈指针
  TI_REG BK;//缓冲大小寄存器
  TI_REG BRC;//块重复计数器
  TI_REG RSA;//块重复起始地址寄存器
  TI_REG REA;//块重复结束地址寄存器
  TI_REG PMST;//处理器工作模式状态寄存器
  TI_REG XPC;//程序计数器扩展寄存器
  TI_REG Reserved1[1]; //保留1个空位
//0x0020
  TI_REG DRR20;//数据接收寄存器2
  TI_REG DRR10;//数据接收寄存器1
  TI_REG DXR20;//数据发送寄存器2
  TI_REG DXR10;//数据发送寄存器1
  TI_REG TIM;//定时器寄存器
  TI_REG PRD;//定时器周期寄存器
  TI_REG TCR;//定时器控制寄存器
  TI_REG Reserved2[1]; //保留1个空位
  TI_REG SWWSR;//软件等待状态寄存器
  TI_REG BSCR;//分区状态寄存器
  TI_REG Reserved3[1]; //保留1个空位
  TI_REG SWCR;//软件等待状态控制寄存器
  TI_REG HPIC;//HPI控制寄存器
  TI_REG Reserved4[3]; //保留3个空位
//0x0030
  TI_REG TIM1;//定时器寄存器1
  TI_REG PRD1;//定时器周期寄存器1
  TI_REG TCR1;//定时器控制寄存器1
  TI_REG Reserved5[5]; //保留5个空位
  TI_REG SPSA0;//子区寻址寄存器0
  TI_UMcBSP SPSD0;//子区数据寄存器0
  TI_REG Reserved6[2]; //保留2个空位
  TI_REG GPIOCR;//GPIO控制寄存器
  TI_REG GPIOSR;//GPIO状态寄存器
  TI_REG Reserved7[2]; //保留2个空位
//0x0040
  TI_REG DRR21;//数据接收寄存器2
  TI_REG DRR11;//数据接收寄存器1
  TI_REG DXR21;//数据发送寄存器2
  TI_REG DXR11;//数据发送寄存器1
  TI_REG Reserved8[4]; //保留4个空位
  TI_REG SPSA1;//子区寻址寄存器1
  TI_UMcBSP SPSD1;//子区数据寄存器1
  TI_REG Reserved9[10]; //保留10个空位
  TI_REG DMPREC;//DMA通道优先级和使能控制寄存器
  TI_REG DMSA;//DMA子区寻址寄存器
  TI_UDMA DMSDI;//带子区寻址自动增加的DMA子区数据寄存器
  TI_UDMA DMSDN;//子区数据寄存器
  TI_REG CLKMD;//时钟模式寄存器
  TI_REG Reserved10[7]; //保留7个空位
}TI_SREG, *TI_PSREG;

#define TI_BASE_SREG  ((TI_SREG *)  0x0000)//定义硬件结构指针(硬件地址)
const TI_PSREG SREG = TI_BASE_SREG;//定义全局结构指针变量REGS

typedef volatile struct _TI_McBSP {
  TI_REG DRR2;//数据接收寄存器2
  TI_REG DRR1;//数据接收寄存器1
  TI_REG DXR2;//数据发送寄存器2
  TI_REG DXR1;//数据发送寄存器1
  TI_REG Reserved[20]; //保留20个空位
  TI_REG SPSA;//子区寻址寄存器
  TI_UMcBSP SPSD;//子区数据寄存器
}TI_McBSP, *TI_PMcBSP;

#define TI_BASE_McBSP0  ((TI_McBSP *)  0x0020)//定义硬件结构指针(硬件地址)
#define TI_BASE_McBSP1  ((TI_McBSP *)  0x0040)//定义硬件结构指针(硬件地址)
const TI_PMcBSP McBSP0 = TI_BASE_McBSP0;//定义全局结构指针变量McBSP0
const TI_PMcBSP McBSP1 = TI_BASE_McBSP1;//定义全局结构指针变量McBSP1

typedef volatile struct _TI_DMA {
  TI_REG DMPREC;//DMA通道优先级和使能控制寄存器
  TI_REG DMSA;//DMA子区寻址寄存器
  TI_UDMA DMSDI;//带子区寻址自动增加的DMA子区数据寄存器
  TI_UDMA DMSDN;//子区数据寄存器
}TI_DMA, *TI_PDMA;

#define TI_BASE_DMA  ((TI_DMA *)  0x0054)//定义硬件结构指针(硬件地址)
const TI_PDMA DMA = TI_BASE_DMA;//定义全局结构指针变量DMA


typedef volatile struct _TI_TIMER {
  TI_REG TIM;//定时器寄存器
  TI_REG PRD;//定时器周期寄存器
  TI_REG TCR;//定时器控制寄存器
}TI_TIMER, *TI_PTIMER;

#define TI_BASE_TIMER0  ((TI_TIMER *)  0x0024)//定义硬件结构指针(硬件地址)
#define TI_BASE_TIMER1  ((TI_TIMER *)  0x0030)//定义硬件结构指针(硬件地址)
const TI_PTIMER TIMER0 = TI_BASE_TIMER0;//定义全局结构指针变量TIMER0
const TI_PTIMER TIMER1 = TI_BASE_TIMER1;//定义全局结构指针变量TIMER1

#endif  // __C5402DEF_H


欢迎进入老古论坛进行讨论
[DSP数字信号处理] 相关文章:
让DSP的书写像种菜一样
简介:
让DSP的书写像种菜一样 ......

TI C54xx DSP 十天速成讲义 <九>
TI C54xx DSP 十天速成讲义 <六>
TI C54xx DSP 十天速成讲义 <三>
TI C54xx DSP 十天速成讲义 <一>
 
下一个:[DSP数字信号处理]C5402DEF.H(菜鸟修正版)
简介:
/*------------------------------------------------------- 文 件 名 : C5402DEF.H 创 建 人 : DSP菜鸟 HotPower@126.com 创 建 日 期 : 2006.6.09 11:19 最近修改日期 : 2006.6.16&nbsp......

上一个:[DSP数字信号处理]将DSP的C++程序写的和ARM/MCU一样简单明了

老古开发网版权所有 2006年9月 asp.Net V2.0 设计:老古
页面缓存:30分钟 执行时间:47毫秒