ADC类比数位转换

上传人:无*** 文档编号:253015849 上传时间:2024-11-27 格式:PPT 页数:17 大小:547.50KB
收藏 版权申诉 举报 下载
ADC类比数位转换_第1页
第1页 / 共17页
ADC类比数位转换_第2页
第2页 / 共17页
ADC类比数位转换_第3页
第3页 / 共17页
资源描述:

《ADC类比数位转换》由会员分享,可在线阅读,更多相关《ADC类比数位转换(17页珍藏版)》请在装配图网上搜索。

1、*,*,,,,,,,,,,按一下以編輯母片標題樣式,,按一下以編輯母片,,第二層,,第三層,,第四層,,第五層,,*,ADC,類比轉數位實驗,,瞭解類比轉數位的基本原理,,寫程式對類比輸入進行採集和轉換,並將結果顯示在超級終端機,1,類比轉數位原理,經常遇到的物理參數,,如電流、電壓、溫度、壓力、速度等電量或非電量都是模擬量,,模擬量的大小是連續分佈的,且經常也是時間上的連續函數,,類比轉換成數位信號需經過,,取樣,——>,量化,——>,編碼三個基本過程(數位化過程),2,,類比轉數位原理,,取樣,,按取樣定理對類比信號進行等時間間隔取樣,,將得到的一系列時域上的樣值去代替,u=,f(t,),

2、,即用,u0,、,u1,、,…,、,un,代替,u=,f(t,),,這些樣值在時間上是離散的值,,但在幅度上仍然是連續類比量,,3,,類比轉數位原理,量化,,在幅值上再用離散值來表示。方法是用一個量化因數,Q,去度量;,u0,、,u1,、,…,,便得到整量化的數字量。,,,u0=2.4Q 2Q 010,,u1=4.0Q 4Q 100,,u2=5.2Q 5Q 101,,u3=5.8Q 5Q 101,,編碼,,將整量化後的數位量進行編碼,以便讀入和識別;,,編碼僅是對數位量的一種處理方法。,,例如:,Q

3、=0.5V/,格,設用三位元(二進編碼),4,,S3C2410X,的,A/D,簡介,,8,通路,10,位,A/D,轉換器,,支援觸控螢幕介面,,獨立,/,自動,X/Y,位置轉換模式,,轉換器的主要特性:,,解析度:,±1LSB,,微分線性度誤差:,±1.5LSB,,積分線形度誤差:,±1LSB,,最大轉化速率:,500KSPS,,輸入電壓範圍:,0~3.3v,,A/D,轉換器,,至少工作在,2.5MHz Clock rate,下,,所以轉換速率可以達到,500KSPS,5,,S3C2410X A/D,轉換器和觸控螢幕介面,AIN[7],接上拉電阻到,VDDA_ADC,,觸控螢幕的,,X,通道連

4、接到,S3C2410,的,AIN[7],,Y,通道應該連接到,AIN[5],6,,ADC,應用電路,,7,,ADC,應用電路位置,,,J1-ADC,輸入介面,,U2-ADC AIN1,溫度感測器,,8,,LM35D,溫度感測器,元件,輸出電壓與攝氏溫度成正比例的溫度傳感器,,,可直接讀出溫度值,,使用時無需外圍元件,也無需調試和較正(標定),,只要外接一個,1V,的表頭(如指針式或數字式的萬用表),,特性,:,,靈敏度為,10mV/℃,,工作溫度範圍為,0℃-100℃,,工作電壓為,4-30V,,精度為,±1℃,,最大線性誤差為,±0.5℃,,靜態電流為,80uA,,,該器件如塑封三極管(,T

5、O-92,),9,,設置,A/D,取樣的時鐘頻率,,主時鐘的頻率為,50MHZ,,,,A/D,取樣預分頻值設為,49,,而完成一次轉換至少需要,5,個,Clock,週期,,則取樣頻率:,,f,=,50M /,(,49+1,),/5,=,200 KHZ,,轉換時間,=1/f=0.5us,,程式實現該功能,,rADCCON,=(rADCCON&0xC03F)|(~0xC03F)&(0x31<<6) //,設置預分頻值,10,,A/D,控制暫存器,ADCCON,,,11,,A/D,資料暫存器,ADCDAT0,,,,12,,啟動取樣步驟,,允許,ADC,的時鐘輸出,,rCLKCON,=,rCLKCON

6、,| (1<<15),,,將,ADCCON,暫存器的,BIT0,置,1,,可以啟動轉換,當啟動轉換後,該位會被自動清除,,同時啟動轉換時還需要指定轉換通道,,下面程式啟動通道,0,的取樣轉換,,rADCCON,=0x1|(0x0<<3),13,,獲取轉換結果,,當,A/D,轉換結束後,可以讀取,ADCDAT,暫存器的內容,,下面程式等待通道,0,的,A/D,轉換,,實現的程式如下:,,,while(!(rADCCON, //,等待,直到,A/D,轉換結束,,,data=,rADCDAT,; //,獲得轉換後的資料,14,,int,,Read_Adc(

7、unsigned,char,ch)A,/D,讀取通道函數,參數說明:,ch,:,決定那個通道被選擇,,主要功能:指定某一通道(,ch,)進行轉換,並讀出轉換值,,該函數的程式如下:,,,/**************************************************************************,,Function name:,Read_Adc,,Parameter :,ch,: ADC,的通道,範圍,0~7,,Description :,讀取相應通道,ch,的類比轉數位的值,,Return :,返回類比轉數位的值,,Argument

8、 :,,,Autor,& date :,,**************************************************************************/,int,,ReadAdc(int,,ch,),,{,,,int,i;,,static,int,,prevCh,=-1;,,,rADCCON,= (1<<14)|(preScaler<<6)|(ch<<3); //setup channel,,,if(prevCh,!=,ch,),,{,,,rADCCON,= (1<<14)|(preScaler<<6)|(ch<<3); //setup cha

9、nnel,,,for(i,=0;i<,LOOP;i,++); //delay to set up the next channel,,,prevCh,=,ch,;,,},,,rADCCON,|=0x1; //start ADC,,,while(rADCCON, //check if,Enable_start,is low,,,while(!(rADCCON, //check if,EC(End,of Conversion) flag is high,,return ( (int)rADCDAT0 ,,},,15,,ADC,測試程式,void,Test_Adc(void,),,功能說明:初始

10、化,ADC,相關暫存器,並讀,ADC,通道讀寫函數,,主要程式如下:,,/**************************************************************************,,Function name:,TestADC,,Parameter : void,,Description :,讀通道,0,,並將讀取的值通過串列埠列印出來,,Return : void,,Argument :,按,'ESC',鍵退出實驗測試,,Autor,& date :,,***********************************

11、***************************************/,void,Test_Adc(void,),,,{,,,int,a0=0; //Initialize variables,,U32,rADCCON_save,=,rADCCON,;,,,preScaler,= ADC_FREQ;,,,printf("ADC,,conv,. freq. = %,dHz\n",preScaler,);,,,preScaler,=,GetMasterClock,()/ADC_FREQ -1; //PCLK:50.7MHz,,,printf("PCLK,/ADC

12、_FREQ - 1 = %,d\n",preScaler,);,,while(,getkey,() != ESC_KEY ),,{,,a0=ReadAdc(0);,,,printf,( "AIN0: %04d\n", a0 );,,Delay( 80 ) ;,,},,,rADCCON,=,rADCCON_save,;,,,printf("\nrADCCON,= 0x%x\n",,rADCCON,);,,},16,,主函數,Main,功能說明:主要實現對模擬通道,0,的轉換,通過調節接在通道,0,上的可調,,電阻來改變模擬量的輸入,通過串列埠將獲得的資料回顯到串列埠。,,主要程式如下:,,/**

13、*************************************************************************,,Function name: Main,,Parameter : void,,Description :,初始化系統,串列埠,並調用,ADC,實驗函數,,Return : void,,Argument :,,,Autor,& date :,,**************************************************************************/,void,Main(void,

14、),,{,,,BoardInitStart,(); //,系統初始化,,MMU,初始化,,,SystemClockInit,(); //,系統時鐘初始化,,,MemCfgInit,(); //,設置,NAND FLASH,的配置暫存器,,,PortInit,(); //S3C2410X,的,GPIO,初始化,,,SerialSwitch(0); //,選擇串列埠,0,,SerialChgBaud(115200); //,串列傳輸速率,115200,,while( 1 ),,{,,printf("FS2410XP ADC,Test,please,Enter 'ESC' to exit\n");,,,Test_Adc,(); //,調用,ADC,實驗函數,,,},,},17,,

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

相关资源

更多
正为您匹配相似的精品文档
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!