首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 维修教程知识 > 单片机栏
并行模数转换器ADS8364与TMS320F2812的接口设计
来源:本站整理  作者:佚名  2009-03-31 16:58:15



例如:extern void InitAdc(void);         //初始化ADC函数

(2)命令文件(.CMD)的编写:该文件中用到了两个伪指令MEMORY和SECTIONS。

MEMORY伪指令用来标示实际存在的目标系统中可被使用的存储器范围。

SECTIONS伪指令用来定位一些代码和数据块。

部分代码:

MEMORY

{

PAGE 0 :   //声明了片内的存储单元,包括起始地址和长度

PRAMH0 : origin = 0x3F8000, length = 0x001000

PAGE 1 :

RAMM0  : origin = 0x000000, length = 0x000400

  ……

 }

SECTIONS

{  codestart  : PRAMH0, PAGE = 0   /*定位代码数据段*/

  PieCtrlRegsFile  : > PIE_CTRL, PAGE = 1   /* 定位各外设的积存器结构体 */ 

……

}

(3)主程序及中断程序:

void main(void)

{ ……

InitSysCtrl();  //调用初始化系统控制函数

//该函数用于初始化系统控制寄存器、PLL、看门狗、时钟

InitGpio();   //调用初始化GPIO函数,用于选择适当的GPIO

ResetADS8364();  //复位ADS8364

……

DINT;             // 禁止和清楚所有CPU中断

IER = 0x0000; IFR = 0x0000;

InitPieCtrl();        // 初始化Pie控制寄存器为默认值

InitPieVectTable();   // 初始化中断向量表 

……

EINT;    // 使能全局中断 INTM

PWM();   //开启转换时钟

while(1)  // 循环,根据条件读数并产生中断

    {……}

}   

void  read_ADD()    //该函数读取采集的数据

{      //根据通道读取数据

if (ADD_Mode){ADC_address[0] = (*ptrCHA0);}

……

if (ADD_Mode){ADC_address[5] = (*ptrCHC1);}

        CHC1_Data[idx] = *ptrCHC1;

}

5 结束语

    本文以ADS8364模数转换芯片为基础,详细讨论了ADS8364和TMS320F2812的接口设计和工作原理,重点介绍了TMS320F2812控制芯片的最小系统设计、ADS8364和TMS320F2812的连接、初始化程序等三部分内容。该设计方案在电机控制、多轴定位系统、多通道数据采集等场合有着广泛的应用。

上一页  [1] [2] [3]  下一页

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)

推荐阅读

图文阅读

热门阅读

Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:225,121.10000 毫秒