📄 dsp28_adc.c
字号:
//
// TMDX ALPHA RELEASE
// Intended for product evaluation purposes
//
//###########################################################################
//
// FILE: DSP28_Adc.c
//
// TITLE: DSP28 ADC Initialization & Support Functions.
//
//###########################################################################
//
// Ver | dd mmm yyyy | Who | Description of changes
// =====|=============|======|===============================================
// 0.55| 06 May 2002 | L.H. | EzDSP Alpha Release
// 0.56| 20 May 2002 | L.H. | No change
// 0.57| 27 May 2002 | L.H. | No change
//###########################################################################
#include "DSP28_Device.h"
//---------------------------------------------------------------------------
// InitAdc:
//---------------------------------------------------------------------------
// This function initializes ADC to a known state.
//
void InitAdc(void)
{
//AI5(0~15)输入
unsigned int i;
AdcRegs.ADCTRL1.bit.RESET=1;//ADC模块软件复位,置1后会立即自动清零 0不响应,1复位
NOP;//ADC的复位信号需要锁存3个时钟周期,即ADC复位后,3个
//时钟周期内不能改变ADC的控制寄存器
AdcRegs.ADCTRL1.bit.RESET=0;
AdcRegs.ADCTRL1.bit.SUSMOD=0;//3;//仿真悬挂模式,00忽略,01排序,10转换,11仿真挂起时,排序器和其它逻辑立即停止
AdcRegs.ADCTRL1.bit.ACQ_PS=0;//采集窗口大小,SOC的脉冲宽度是ADCTRL[11:8]个ADCLK周期
AdcRegs.ADCTRL1.bit.CPS=0;//内核始终预定标器
AdcRegs.ADCTRL1.bit.CONT_RUN=0;//继续运行0开始-停止模式,1连续转换模式
AdcRegs.ADCTRL1.bit.SEQ_CASC=1;//级联排序工作方式0双排序,1级联
AdcRegs.ADCTRL3.bit.ADCBGRFDN=3;//ADC带隙和参考的电源控制,00掉电,11上电
for(i=0;i<10000;i++) NOP;
AdcRegs.ADCTRL3.bit.ADCPWDN=1;//ADC电源控制,0掉电,1除带隙和参考电路外的ADC其它模拟电路上电
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -