內部12位ADC是一種逐次逼近型模擬數字轉換器。
它有多達18個通道,可測量16個外部和2個內部信號源。各通道的A/D轉換可以單次、連續、掃描或間斷模式執行。ADC的結果可以左對齊或右對齊方式存儲在16位數據寄存器中。
模擬看門狗特性允許應用程序檢測輸入電壓是否超出用戶定義的高/低閥值。
ADC的輸入時鐘不得超過14MHz,它是由PCLK2經分頻產生。
// ADC 轉換完成中斷服務程序
void ADC_IRQHandler(void)
{
if(ADC_GetITStatus(RHEOSTAT_ADC,ADC_IT_EOC)==SET)
{
// 讀取ADC的轉換值
ADC_ConvertedValue = ADC_GetConversionValue(RHEOSTAT_ADC); // ADC_ConvertedValue是全局變量}
ADC_ClearITPendingBit(RHEOSTAT_ADC,ADC_IT_EOC);}
static void ADC_GPIO_Config(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
// 使能 GPIO 時鐘
RCC_AHB1PeriphClockCmd(RHEOSTAT_ADC_GPIO_CLK, ENABLE);
GPIO_InitStructure.GPIO_Pin = RHEOSTAT_ADC_GPIO_PIN;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AIN;
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL ; //不上拉不下拉
GPIO_Init(RHEOSTAT_ADC_GPIO_PORT, &GPIO_InitStructure);
}static void ADC_Mode_Config(void)
{
ADC_InitTypeDef ADC_InitStructure;
ADC_CommonInitTypeDef ADC_CommonInitStructure;
// 開啟ADC時鐘
RCC_APB2PeriphClockCmd(RHEOSTAT_ADC_CLK , ENABLE);// -------------------ADC Common 結構體 參數 初始化------------------------
// 獨立ADC模式
ADC_CommonInitStructure.ADC_Mode = ADC_Mode_Independent;
// 時鐘為fpclk x分頻
ADC_CommonInitStructure.ADC_Prescaler = ADC_Prescaler_Div2;
// 禁止DMA直接訪問模式
ADC_CommonInitStructure.ADC_DMAAccessMode = ADC_DMAAccessMode_Disabled;
// 采樣時間間隔
ADC_CommonInitStructure.ADC_TwoSamplingDelay = ADC_TwoSamplingDelay_20Cycles;
ADC_CommonInit(&ADC_CommonInitStructure);
// -------------------ADC Init 結構體 參數 初始化--------------------------
ADC_StructInit(&ADC_InitStructure);
// ADC 分辨率
ADC_InitStructure.ADC_Resolution = ADC_Resolution_12b;
// 禁止掃描模式,多通道采集才需要
ADC_InitStructure.ADC_ScanConvMode = DISABLE;
// 連續轉換
ADC_InitStructure.ADC_ContinuousConvMode = ENABLE;
//禁止外部邊沿觸發
ADC_InitStructure.ADC_ExternalTrigConvEdge = ADC_ExternalTrigConvEdge_None;
//外部觸發通道
ADC_InitStructure.ADC_ExternalTrigConv = ADC_ExternalTrigConv_T1_CC1;
//數據右對齊
ADC_InitStructure.ADC_DataAlign = ADC_DataAlign_Right;
//轉換通道 1個
ADC_InitStructure.ADC_NbrOfConversion = 1;
ADC_Init(RHEOSTAT_ADC, &ADC_InitStructure);
//---------------------------------------------------------------------------
// 配置 ADC 通道轉換順序為1,第一個轉換,采樣時間為3個時鐘周期
ADC_RegularChannelConfig(RHEOSTAT_ADC, RHEOSTAT_ADC_CHANNEL, 1, ADC_SampleTime_56Cycles);
// ADC 轉換結束產生中斷,在中斷服務程序中讀取轉換值
ADC_ITConfig(RHEOSTAT_ADC, ADC_IT_EOC, ENABLE);
// 使能ADC
ADC_Cmd(RHEOSTAT_ADC, ENABLE);
//開始adc轉換,軟件觸發
ADC_SoftwareStartConv(RHEOSTAT_ADC);
}// 配置中斷優先級
static void ADC_NVIC_Config(void)
{
NVIC_InitTypeDef NVIC_InitStructure;
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1);
NVIC_InitStructure.NVIC_IRQChannel = Rheostat_ADC_IRQ;
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 1;
NVIC_InitStructure.NVIC_IRQChannelSubPriority = 1;
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
NVIC_Init(&NVIC_InitStructure);
}
ADC配置過程如上:
1.配置GPIO
2.配置ADC工作模式等
3.ADC中斷配置
/********調用在主函數聲明一次以上三個函數,在 用ADC_ConvertedValue取值即可********************/
上一篇:STM32之TIMER基本定時器應用
下一篇:stm32時鐘及其滴答定時器
推薦閱讀
史海拾趣
隨著技術的不斷進步和市場的逐步打開,弘凱光電開始將業務拓展至全球范圍。公司的客戶群迅速擴大,遍布60多個國家和地區,同時在歐洲、北美、南美、東南亞和中東地區均設立了經銷網點。此外,弘凱光電還積極尋求國際認證,以證明其產品的品質和可靠性。通過取得ISO9001質量保證體系、ISO14001國際環境管理體系認證等一系列認證,公司進一步提升了品牌形象和市場競爭力。
隨著電子技術的快速發展,ETI意識到只有不斷創新才能在競爭中立于不敗之地。公司加大了對研發的投入,積極引進國內外先進技術,并鼓勵員工提出創新性的想法。在一次偶然的實驗中,ETI的研發團隊成功研發出了一種具有高效能、低功耗特點的電子元器件,這一突破性的技術成果迅速獲得了市場的認可,為ETI帶來了可觀的收益。
Arima Lasers Corp深知人才是企業發展的核心驅動力。因此,公司高度重視人才培養和團隊建設。通過制定完善的培訓計劃和激勵機制,公司吸引了一批批優秀的研發人才和管理人才。這些人才為公司的發展注入了源源不斷的動力,推動了公司在技術、市場和管理等各個方面的全面提升。
進入21世紀后,隨著數碼技術的迅速崛起,傳統攝影市場遭受了巨大的沖擊。面對這一挑戰,伊士曼柯達公司開始嘗試向數碼領域轉型。然而,由于公司在數碼技術方面的積累相對較少,轉型過程并不順利。盡管如此,柯達仍然堅持創新,不斷推出新的數碼產品,以應對市場的變化。同時,公司還加強了與數碼技術公司的合作,共同研發新產品,以提高市場競爭力。
在追求經濟效益的同時,ETL也積極履行社會責任。公司注重環保和可持續發展,采用環保材料和綠色生產工藝,降低生產過程中的能耗和排放。此外,ETL還積極參與公益事業,為社會做出了積極貢獻。這些舉措不僅提升了公司的社會形象,也為公司的長遠發展奠定了基礎。
隨著公司業務的不斷拓展,CMD開始在全球范圍內建立銷售辦事處。從最初的美國加利福尼亞州Irvine總部,逐漸擴展至加州、明尼蘇達州、馬薩諸塞州,甚至英國等地。這一布局不僅增強了公司的市場影響力,也為其提供了更多的商業合作機會。
我在WinCE BSP包下的驅動文件夾,新建了自已的設備驅動,按說明上說再建*.DEF,SOURCES,MAKEFILE,然后修改Platrorm.bib,Platform.reg就完成了新驅動的創建,但我卻編譯通不過.不知誰做過沒有請指點一下.搞的我很郁悶.… 查看全部問答∨ |
射頻光傳輸設備及其在核電磁脈沖防護中的應用 Radio Transmission Equipment over Fiber Optic and its Application in Nuclear Electromagnetic Pulse Protection 作者:袁海兵 總參通信部駐成都地區軍事代表室 毛建 綿陽靈通電訊 ...… 查看全部問答∨ |
關于微機匯編中的問題: les bx,dword ptr es:[bx] 我在一些書中看到關于les 的指令說明,將段地址送入 es,偏移地址送入目的寄存器(bx)中,而使用段超越前綴的尋址中指出若有效地址用SI、DI和BX等之一來指定,則其缺省的段寄存器為DS,若有效地址用BP來指定,則其缺省的段寄存器為SS(即:堆棧段)。 ...… 查看全部問答∨ |
已在ce5上成功寫了usb. iic. spi.鍵盤驅動. 覺得可以常識著寫WiFi無線網卡/藍牙驅動. 能否推薦一款資料比較多的WiFi無線網卡/藍牙模塊? 如果有開源資料更好.… 查看全部問答∨ |
現在這家公司做LED光電的,現有的設備更多的是測試燈的照度強度(積分球),還有光譜等后期的設備; 組裝為主,LED驅動這塊還是一片空白,感覺自己的崗位漸漸離研發越來越遠,感嘆成本再高,最后燈具 都能賣個天價,都有個好買家出手;只是驅動這 ...… 查看全部問答∨ |
|
我的LED應急燈制作過程(2)-我終于用手工烙鐵焊接了SMA芯片 手工烙鐵焊接SMA芯片步驟: 見附件 [ 本帖最后由 qwertyuiop11111 于 2010-12-30 10:18 編輯 ]… 查看全部問答∨ |
|
解密“智能家居控制系統”圖+程序+論文=官方絕密文件 收藏備用,人家花了60萬做的東東,被我給解密了, 本人上傳之文件純屬技術交流,絕無商業之用途,如有雷同,不勝榮幸。 投訴電話“010-00544” … 查看全部問答∨ |