⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.c

📁 MSP430F169单片机DAC模块程序段
💻 C
字号:
#include<msp430x16x.h>

void Init_DAC()               //DAC转换初始化
{
  P6SEL |= 0X80;
  P6DIR |= 0X80;

  P3SEL |=0X00;          //定义显示屏背光
  P3DIR |=0X01;
  P3OUT &=0XFE;

 // DAC12_0CTL = ~DAC12ENC;           //停止ADC12,修改DAC12寄存器
  ADC12CTL0 = REF2_5V + REFON;       //打开内部参考电压源,参考电压为2.5V
  //ADC12MCTL7 = SREF_5;
/*
  //设置DAC12通道0
 //测量程为参考电压,中速度/电流输出,12位分辨率,Vref+为参考电压,立即刷新输出
  DAC12_0CTL |= DAC12IR + DAC12AMP_5 + DAC12ENC + DAC12LSEL_1;
  DAC12_0CTL |= DAC12CALON;    //自动校准DA输出

  DAC12_0CTL |= DAC12ENC;           //使能ADC12
*/
  //设置DAC12通道1
  DAC12_1CTL &= ~DAC12ENC;           //停止ADC12,修改DAC12寄存器

  //测量程为参考电压,中速度/电流输出,12位分辨率,Vref+为参考电压: DAC12SREF_0与DAC12SREF_1 ,立即刷新输出
  DAC12_1CTL |=DAC12IR  + DAC12AMP_5 ;//+ DAC12LSEL_1 + DAC12SREF_1
 // DAC12_1CTL |= DAC12CALON;    //自动校准DA输出

  DAC12_1CTL |= DAC12ENC;           //使能ADC12

  //等待校准完成
//   while(DAC12_0CTL & DAC12CALON == DAC12CALON);
 // while(DAC12_1CTL & DAC12CALON == DAC12CALON);
}
/*
void AO2_Out(unsigned int dat)             //程序段B:4~20mA输出
{
 // AO2 = (AO2_max - AO2_min)*Nf/10000 + AO2_min;          //标度计算

  DAC12_1DAT = dat;                     //将数据写入DA1数据寄存器
}
*/
void main()
{
  WDTCTL=WDTPW+WDTHOLD; // 关看门狗;
/*
  BCSCTL1 &=~XT2OFF; //XT振荡器反位
  do
  {
    IFG1 &=~OFIFG;  //清除振荡器失效标志
  }
  while(OFIFG&IFG1);  //等待晶振稳定 ;
  BCSCTL2 = SELS + SELM_2 + DIVS_3; // MCLK,SMCLK-XT2CLK; SMCLK 8 分频;
*/
  Init_DAC();
  //while(1)
  //{
    DAC12_1DAT = 0X02C3;                     //将数据写入DA1数据寄存器
    LPM4;
    //AO2_Out(0x0FFF);
  //}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -