自动增益放大器毕业设计论文(10)

2019-08-31 13:35

成都工业学院毕业设计(论文)

// Internal ref gain 1

DAC12_0CTL = DAC12SREF_0 + DAC12IR;

DAC12_0CTL |= DAC12LSEL_1 + (DAC12AMPx << 5); DAC12_0CTL |= DAC12ENC; }

/******************************************************** * 函数名称:DAC12_1Init

* 功 能:DAC12_1用到的相关资源初始化 * 参 数:

* DAC12AMPx:DAC运算放大器设置: * 0 输入缓冲器关闭,输出缓冲器关闭,高阻 * 1 输入缓冲器关闭,输出缓冲器关闭,0V * 2 输入缓冲器低速/电流,输出缓冲器低速/电流 * 3 输入缓冲器低速/电流,输出缓冲器中速/电流 * 4 输入缓冲器低速/电流,输出缓冲器高速/电流 * 5 输入缓冲器中速/电流,输出缓冲器中速/电流 * 6 输入缓冲器中速/电流,输出缓冲器高速/电流 * 7 输入缓冲器高速/电流,输出缓冲器高速/电流 * 返 回 值:无

* 说 明:其他默认为:12位方案、写入即更新输出,module模 * 块为3时,两个都写入更新;DAC12的满量程为参考电 * 压;内部2.5v参考电压:需要AD设置参考源打开2.5. *********************************************************/ void DAC12_1Init(char DAC12AMPx) {

// Internal ref gain 1

DAC12_1CTL = DAC12SREF_0 + DAC12IR;

DAC12_1CTL |= DAC12LSEL_1 + (DAC12AMPx << 5); DAC12_1CTL |= DAC12ENC; }

/******************************************************** * 函数名称:DAC12Init

* 功 能:DAC12用到的相关资源初始化 * 参 数:

* module模块 0:使用模块DAC12_0

40

自动增益控制放大器

* 1:使用模块DAC12_1 * 2:使用模块DAC12_0/1

* 3:使用模块DAC12_0/1 共同更新 * DAC12AMPx:DAC运算放大器设置: * 0 输入缓冲器关闭,输出缓冲器关闭,高阻 * 1 输入缓冲器关闭,输出缓冲器关闭,0V * 2 输入缓冲器低速/电流,输出缓冲器低速/电流 * 3 输入缓冲器低速/电流,输出缓冲器中速/电流 * 4 输入缓冲器低速/电流,输出缓冲器高速/电流 * 5 输入缓冲器中速/电流,输出缓冲器中速/电流 * 6 输入缓冲器中速/电流,输出缓冲器高速/电流 * 7 输入缓冲器高速/电流,输出缓冲器高速/电流 * 返 回 值:char,设置成功返回1,参数错误返回0

* 说 明:其他默认为:12位方案、写入即更新输出,module模 * 块为3时,两个都写入更新;DAC12的满量程为参考电 * 压;内部2.5v参考电压:需要AD设置参考源打开2.5. *********************************************************/ char DAC12Init(char module,char DAC12AMPx) {

if(DAC12AMPx>7) {

return(0); }

//---------------------------设置模块------------------------------- switch(module) {

case 0: DAC12_0Init(DAC12AMPx); break; //模块0 case 1: DAC12_1Init(DAC12AMPx); break; //模块1 case 2:

DAC12_0Init(DAC12AMPx); DAC12_1Init(DAC12AMPx);

break; //模块0、1 case 3:

DAC12_0Init(DAC12AMPx); DAC12_1Init(DAC12AMPx); DAC12_0CTL |= DAC12GRP; break; //无校验

41

成都工业学院毕业设计(论文)

default : return(0); //参数错误 } return (1); }

/******************************************************** * 函数名称:DAC12Cal

* 功 能:校准DAC12,内部自动校准 * 参 数:

* module:校准哪个模块

* 0:DAC12_0模块 1:DAC12_1模块 * 2,3 两个模块都校准 * 返 回 值:无

*********************************************************/ void DAC12Cal(char module) {

switch(module) {

case 0:

DAC12_0CTL |= DAC12CALON; // 启动效验DAC while((DAC12_0CTL & DAC12CALON) != 0); // 等待效验完成 break; //模块0 case 1:

DAC12_1CTL |= DAC12CALON; // 启动效验DAC while((DAC12_1CTL & DAC12CALON) != 0); // 等待效验完成 break; //模块1 case 2: case 3:

DAC12_0CTL |= DAC12CALON; // 启动效验DAC while((DAC12_0CTL & DAC12CALON) != 0); // 等待效验完成 DAC12_1CTL |= DAC12CALON; // 启动效验DAC while((DAC12_1CTL & DAC12CALON) != 0); // 等待效验完成 break; //模块0、1 default : return; //参数错误 } }

42


自动增益放大器毕业设计论文(10).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:作为阿米巴经营的主体,如何使阿米巴经营在本部门切实运行,并请

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: