日志档案

发表于 2008-3-25 10:39:26

3

标签: 2430  ADC初始化  

2430的A/D程序

有朋友问2430的AD初始化及数据处理.重复回答很辛苦,就在这里贴出来吧.
如果对你有帮助,请记得顶一下.

/****************************************************************
*函数功能 :初始化ADC      *
*入口参数 :无                      *
*返 回 值 :无                      *
*说    明 :参考电压AVDD,转换对象是1/3AVDD                                        *
****************************************************************/
void InitialAD(void)
{
 ADCH &= 0X00;  //清EOC标志 
 ADCCON3=0xbf;  //单次转换,参考电压为电源电压,对1/3 AVDD进行A/D转换
      //14位分辨率
 ADCCON1 = 0X30;  //停止A/D

 ADCCON1 |= 0X40; //启动A/D

//因没有取外部电压作为A/D输入,所在没有配置ADCCFG

}

数据处理

INT16U readadc(void){

   temp[1] = ADCL;         //取AD值
   temp[0] = ADCH;
   ADCCON1 |= 0x40;    //开始下一转换

   temp[1] = temp[1]>>2;
   temp[1] |= temp[0]<<6;

   temp[0] = temp[0]>>2; //数据处理
   //temp[0] &= 0x3f;       //排错时写的,没有用

   result = (temp[0]*256+temp[1])*3.3/8192;  //有一位符号位,取2^13;

}

系统分类: 单片机   |   用户分类: 单片机   |   来源: 原创   |   【推荐给朋友】

    阅读(629)    回复(18)  

投一票您将和博主都有获奖机会!

  • hxqhit

    2008-5-22 16:09:29

    呵呵,很不错的哦 收藏了,谢谢!

  • am232456

    2008-7-19 16:13:56

    版主你好 我近來使用 TI CC2430 + Smartrf04eb 做研究 最近做到ADC + RS-232 傳送到電腦超級終端機顯示的時候一直變成亂碼,參考版主的程式碼也一樣,請問是我哪裡問題,我是採用外部輸入電壓(5V) 我希望做完AD轉換後,可以透過RS232 傳到超級終端機顯示5V ,請問程式碼要如何寫?

  • am232456

    2008-7-19 16:14:17

    版主你好 我近來使用 TI CC2430 + Smartrf04eb 做研究 最近做到ADC + RS-232 傳送到電腦超級終端機顯示的時候一直變成亂碼,參考版主的程式碼也一樣,請問是我哪裡問題,我是採用外部輸入電壓(5V) 我希望做完AD轉換後,可以透過RS232 傳到超級終端機顯示5V ,請問程式碼要如何寫?

  • am232456

    2008-7-19 16:14:46

    版主你好 我近來使用 TI CC2430 + Smartrf04eb 做研究 最近做到ADC + RS-232 傳送到電腦超級終端機顯示的時候一直變成亂碼,參考版主的程式碼也一樣,請問是我哪裡問題,我是採用外部輸入電壓(5V) 我希望做完AD轉換後,可以透過RS232 傳到超級終端機顯示5V ,請問程式碼要如何寫?

  • am232456

    2008-7-19 16:15:14

    版主你好 我近來使用 TI CC2430 + Smartrf04eb 做研究 最近做到ADC + RS-232 傳送到電腦超級終端機顯示的時候一直變成亂碼,參考版主的程式碼也一樣,請問是我哪裡問題,我是採用外部輸入電壓(5V) 我希望做完AD轉換後,可以透過RS232 傳到超級終端機顯示5V ,請問程式碼要如何寫?

  • am232456

    2008-7-19 16:15:43

    标签: 2430 ADC初始化 2430的A/D程序 版主你好 我近來使用 TI CC2430 + Smartrf04eb 做研究 最近做到ADC + RS-232 傳送到電腦超級終端機顯示的時候一直變成亂碼,參考版主的程式碼也一樣,請問是我哪裡問題,我是採用外部輸入電壓(5V) 我希望做完AD轉換後,可以透過RS232 傳到超級終端機顯示5V ,請問程式碼要如何寫?

  • am232456

    2008-7-19 16:16:23

    标签: 2430 ADC初始化 2430的A/D程序 版主你好 我近來使用 TI CC2430 + Smartrf04eb 做研究 最近做到ADC + RS-232 傳送到電腦超級終端機顯示的時候一直變成亂碼,參考版主的程式碼也一樣,請問是我哪裡問題,我是採用外部輸入電壓(5V) 我希望做完AD轉換後,可以透過RS232 傳到超級終端機顯示5V ,請問程式碼要如何寫?

  • am232456

    2008-7-19 16:18:13

    抱歉,因為電腦和網路有點問題導致重複發太多回復

  • am232456

    2008-7-19 16:18:19

    抱歉,因為電腦和網路有點問題導致重複發太多回復

  • emot

    2008-7-21 9:52:45

    你好,2430的ADC输入不可以高于参考电压(max 3.3v),否则ADC结果无效,而且输入5V的话可能会把2430烧坏的。我手上有2430ADC,232的程序,我的邮箱是emotacer@163.com,来函回复给你。

  • am232456

    2008-7-21 19:40:36

    請問版主,如果要從 P0_7 輸入 3V 電壓做AD 轉換則程序該怎麼寫,cc2430db 是否有內建天線,如果要從cc2430db 將一組字串無線傳輸到 cc2430EM(與Smartrf04eb)做接收 則程序該怎麼寫,請版主指教,謝謝版主

  • am232456

    2008-7-21 23:04:22

    請問版主,從P0_7 可以輸入一變化電壓嗎(0-3V)? 在程式執行的時候變化電壓以顯示電壓值,只有 P0_7 可以輸入嗎? 還是P0都可以,程序如何做,請版主指教,謝謝

  • am232456

    2008-7-21 23:04:32

    請問版主,從P0_7 可以輸入一變化電壓嗎(0-3V)? 在程式執行的時候變化電壓以顯示電壓值,只有 P0_7 可以輸入嗎? 還是P0都可以,程序如何做,請版主指教,謝謝

  • am232456

    2008-7-21 23:06:52

    請問版主,從P0_7 輸入可變化電壓(0V-3V)後,在程式執行時轉換完後還可以透過RS232 傳到超級終端機顯示電壓值嗎 ? 謝謝

  • am232456

    2008-7-21 23:47:07

    請問版主 ADCCON3=0xbf; //单次转换,参考电压为电源电压,对1/3 AVDD进行A/D转换 //14位分辨率 這部份是什麼意思,數據處理是否可以說明更詳細一點(不懂意思),另外試了版主的程序,為何是顯示 0.5V ,應該試 1V-3V 左右吧,請版主說明一下,謝謝

  • emot

    2008-7-23 15:59:45

    复am232456: ADCH &= 0X00; //清EOC标志 ADCCON3=0xb7; //单次转换,参考电压为电源电压 //14位分辨率 ADCCON1 = 0X30; //停止A/D ADCCON1 |= 0X40; //启动A/D

  • am232456

    2008-7-24 12:21:12

    請問版主,雖然現在AD轉換 到 RS232 有顯示數值,不過為何我變化電壓數值沒有跟著改變,我是接 P0_7 請問是否有要設定 P0SEL P0DIR ADCCFG ADC 中斷 等,參考電壓既然為 AVDD_SOC PIN 應該就不用接電了吧 還是說 AVDD_SOC 是怎麼接,由於我的CC2430+Smartrf04eb,版子上只有P0 P1 P2 2個VDD GND 能外接,因此我不清楚是否有接錯,謝謝

  • am232456

    2008-7-24 12:23:52

    補充一下,我的電壓數值約從 0V-3V 變化,可是超級終端機上顯示的數值一直是 0.5V 1.6V 0.1 V 這類的數值 這類的數值是改 ADCCON2 才變化如此數值,但在終端機上顯示的數值並未因電壓變化而改變,不知是否我接錯或是程式改的有誤