原创 对F2812头文件以及例程的理解

2008-9-24 09:51 2417 4 4 分类: 处理器与DSP

F2812开发系统提供的例程是为了用户更方便直接的进行开发。由于DSP开发经常没有操作系统的支持,应次接触到很多较低层的东西,这些例程就相当于起到了操作系统的作用,方便用户直接编成应用外设。这里以ADC的例程为例做一下简单介绍。<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />


    首先介绍一下2812AD12位,16路。可分成独立的两部分,每部分8路(各有一套采样保持电路)以便事件管理器(EVAEVB)分别使用;也可级联使用。开发系统中有关AD的例程为DSP28_Adc.c文件,其中包括了都文件DSP28_Adc.h,还有相关例程DSP28_GlobalVariableDefs.c以及.cmd文件,下面介绍各自的作用。


    1 首先在.cmd文件中为AD的各个寄存器分配空间:


MEMORY


{


PAGE0:   ....


PAGE1:   ....


      ADC   :origin = 0x00007100,  length = 0x000020 


 


      


         ....


}


SECTION


{


       ....


       AdeRegFile  :> ADC,  PAGE = 1   


       ....


}


    2 DSP28_GlobalVariableDefs.c定义用到的数据段AdeRegFile


 


#pragma DATA_SECTION(AdcRegs,"AdcRegFiles"); 


 


volatile struct ADC_REGS AdeRegs;


 


   3 初始化这些变量。这些是DSP28_Adc.cDSP28_Adc.h完成的


   首先在DSP28_Adc.h定义个寄存器位置定义包括3个控制寄存器、最大转换通道寄存器、自动排序状态寄存器、状态标志寄存器、输入选择排序寄存器、结果寄存器。最终汇总的一个结构体中:struct ADC_REGS,并定义此类型的结构体变量:AdcRegs.以后要对AD进行设置时,就设置此变量的各个位。


   然后在DSP28_Adc.c中设置AdcRegs,使它进入初始化阶段。具体设置参考初始化要求。这样就完成了对AD的定义以及初始化,在此基础上用户可以直接开发使用AD。其他外设步骤类似。

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
EE直播间
更多
我要评论
0
4
关闭 站长推荐上一条 /3 下一条