項目5距離傳感器-項目實踐_第1頁
項目5距離傳感器-項目實踐_第2頁
項目5距離傳感器-項目實踐_第3頁
項目5距離傳感器-項目實踐_第4頁
項目5距離傳感器-項目實踐_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

CHANGJIANGPOLYTECHNIC距離傳感器—項目實踐陳嚴《傳感器技術及應用》項目分析硬件結構:主要由STM32處理器、紅外測距傳感器,串口以及LCD屏幕組成。處理器定時的讀取傳感器數(shù)據,并將距離數(shù)據通過串口以及LCD屏幕進行顯示。距離數(shù)據STM32串口紅外測距傳感器LCD屏項目硬件圖距離傳感器原理圖電源線信號線地線距離傳感器程序邏輯開始定義存儲變量,緩存數(shù)組初始化延時初始化LED初始化按鍵初始化LCD初始化串口延時1S串口打印信息LCD顯示數(shù)據是串口打印信息LCD顯示數(shù)據否距離不為0串口緩存數(shù)據初始化傳感器獲取距離項目實現(xiàn)紅外測距傳感器初始化

voidstadiometry_init(void){GPIO_InitTypeDefGPIO_InitStructure;ADC_CommonInitTypeDefADC_CommonInitStructure;ADC_InitTypeDefADC_InitStructure;RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOC,ENABLE);//使能GPIOC時鐘RCC_APB2PeriphClockCmd(RCC_APB2Periph_ADC1,ENABLE);//使能ADC1時鐘

//先初始化ADC1通道12IO口GPIO_InitStructure.GPIO_Pin=GPIO_Pin_2;//PC2通道12GPIO_InitStructure.GPIO_Mode=GPIO_Mode_AN;//模擬輸入GPIO_InitStructure.GPIO_PuPd=GPIO_PuPd_NOPULL;//不帶上下拉GPIO_Init(GPIOC,&GPIO_InitStructure);//初始化RCC_APB2PeriphResetCmd(RCC_APB2Periph_ADC1,ENABLE); //ADC1復位RCC_APB2PeriphResetCmd(RCC_APB2Periph_ADC1,DISABLE); //復位結束 ADC_CommonInitStructure.ADC_Mode=ADC_Mode_Independent;//獨立模式項目實現(xiàn)紅外測距傳感器初始化//兩個采樣階段之間的延遲5個時鐘ADC_CommonInitStructure.ADC_TwoSamplingDelay=ADC_TwoSamplingDelay_5Cycles;//DMA失能ADC_CommonInitStructure.ADC_DMAAccessMode=ADC_DMAAccessMode_Disabled;ADC_CommonInitStructure.ADC_Prescaler=ADC_Prescaler_Div4;//預分頻4分頻。ADCCLK=PCLK2/4=84/4=21Mhz,ADC時鐘最好不要超過36MhzADC_CommonInit(&ADC_CommonInitStructure);//初始化ADC_InitStructure.ADC_Resolution=ADC_Resolution_10b;//10位模式ADC_InitStructure.ADC_ScanConvMode=DISABLE;//非掃描模式 ADC_InitStructure.ADC_ContinuousConvMode=DISABLE;//關閉連續(xù)轉換//禁止觸發(fā)檢測,使用軟件觸發(fā)ADC_InitStructure.ADC_ExternalTrigConvEdge=ADC_ExternalTrigConvEdge_None;ADC_InitStructure.ADC_DataAlign=ADC_DataAlign_Right;//右對齊 ADC_InitStructure.ADC_NbrOfConversion=1;//1個轉換在規(guī)則序列中也就是只轉換規(guī)則序列1ADC_Init(ADC1,&ADC_InitStructure);//ADC初始化ADC_Cmd(ADC1,ENABLE);//開啟AD轉換器 項目實現(xiàn)獲取紅外測距傳感器狀態(tài)floatget_stadiometry_data(void){unsignedintvalue=0;//設置指定ADC的規(guī)則組通道,一個序列,采樣時間//ADC1,ADC通道,480個周期,提高采樣時間可以提高精確度 ADC_RegularChannelConfig(ADC1,ADC_Channel_12,1,ADC_SampleTime_480Cycles); ADC_SoftwareStartConv(ADC1);//使能指定的ADC1的軟件轉換啟動功能 while(!ADC_GetFlagStatus(ADC1,ADC_FLAG_EOC));//等待轉換結束value=ADC_GetConversionValue(ADC1);if((value>=85)&&(value<=950))return(2547.8/((float)value*0.35-10.41)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論