找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

帖子
查看: 5523|回復(fù): 1
打印 上一主題 下一主題
收起左側(cè)

我做的課程,MSP430 adc采樣的程序

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
我們的課程設(shè)計(jì),單片機(jī)采樣程序。



  1. #include<MSP430G2553.h>

  2. /*初始化函數(shù),
  3. * BIT為選擇輸入端口可累加輸入即BIT=BIT0+BIT1...由P1.0到P1.7口可作為AD采樣。
  4. * SREF_0是電壓選擇基準(zhǔn)。有0——7,七個(gè)基準(zhǔn)。
  5. * ADC10SSEL_0為ADC10時(shí)鐘源選擇。0為ADC10OSC,1為ACLK,2為MCLK,3為SMCLK
  6. * CONSEQ_0為轉(zhuǎn)換序列模式選擇。0為單通道單次轉(zhuǎn)換,1為單序列單次轉(zhuǎn)換,2位單通道重復(fù)轉(zhuǎn)換     ,3為單序列重復(fù)轉(zhuǎn)換
  7. */
  8. void init_ADC10(unsigned char BIT)
  9. {
  10.         P1DIR &=~ BIT;
  11.         P1SEL |= BIT;
  12.         ADC10AE0 |= BIT;
  13.         ADC10CTL0 = ADC10ON + MSC + SREF_0 + REFON;
  14.         //開AD內(nèi)核,選擇電源為參考電壓
  15.         ADC10CTL1 = ADC10SSEL_0 + CONSEQ_0; //采用單通道次采用分時(shí)復(fù)用
  16. }
  17. /*開始函數(shù),在開始函數(shù)中自行選擇所用通道*/
  18. unsigned int start_ADC10(unsigned int INCH)
  19. {
  20.             unsigned int temp;
  21.             ADC10CTL1 |= INCH;       //Channal 0
  22.                 ADC10CTL0 |= ADC10SC + ENC; // 開始轉(zhuǎn)換  開轉(zhuǎn)換允許
  23.                 while (ADC10CTL1 & ADC10BUSY != 0); //判斷是否轉(zhuǎn)換完畢
  24.                 temp = ADC10MEM;
  25.                 ADC10CTL0 &= ~(ADC10SC + ENC); //關(guān)轉(zhuǎn)換允許才能選擇通道
  26.                 ADC10CTL1 &= ~INCH_0; //通道清0
  27.                 return temp;//實(shí)際電壓值=[3.3/(2^10)]*temp
  28. }
復(fù)制代碼

下載:
ADC10.zip (1.23 KB, 下載次數(shù): 17)
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩

相關(guān)帖子

回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:198617 發(fā)表于 2017-5-9 16:06 | 只看該作者
學(xué)習(xí)學(xué)習(xí) 感謝分享
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表