www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 單片機 > 單片機
[導(dǎo)讀] /*AVR的模擬比較器模塊可以用來比較接在AIN0(mega16PB2的第二功能)和AIN1(PB3)兩個引腳的電壓大小。程序操作流程:初始化>>開中斷>>中斷服務(wù)程序判斷,比較結(jié)果將會同步到模擬比較器控制和狀態(tài)寄存器-

/*
AVR的模擬比較器模塊可以用來比較接在AIN0(mega16PB2的第二功能)和AIN1(PB3)兩個引腳的電壓大小。
程序操作流程:初始化>>開中斷>>中斷服務(wù)程序判斷,比較結(jié)果將會同步到
模擬比較器控制和狀態(tài)寄存器-ACSR的第五位ACO,檢測ACO的值就可以得出比較結(jié)果。AIN0AIN1(ACO=1)






*/
#include
#include
#include"delay.h"

//管腳定義
#defineLED00//PB0
#defineAIN_P2//PB2(AIN0)
#defineAIN_N3//PB3(AIN1)

//宏定義
#defineLED0_ON()PORTB|=(1<#defineLED0_OFF()PORTB&=~(1<
//常量定義
/*
模擬比較器的正輸入端由ACBG位決定,=0選擇AIN0引腳,=1選擇1.23V內(nèi)部能隙基準源

模擬比較器多工輸入(不常用,因為ADC將無法使用)
可以選擇ADC7..0之中的任意一個來代替模擬比較器的負極輸入端。
ADC復(fù)用器可用來完成這個功能。
當(dāng)然,為了使用這個功能首先必須關(guān)掉ADC。
如果模擬比較器復(fù)用器使能位(SFIOR中的ACME)被置位,且ADC也已經(jīng)關(guān)掉(ADCSRA寄存器的ADEN為0),
則可以通過ADMUX寄存器的MUX2..0來選擇替代模擬比較器負極輸入的管腳,
如果ACME清零或ADEN置位,則模擬比較器的負極輸入為AIN1。

*/
#defineAC_ADC00x00//ADC0
#defineAC_ADC10x01//ADC1
#defineAC_ADC20x02//ADC2
#defineAC_ADC30x03//ADC3
#defineAC_ADC40x04//ADC4
#defineAC_ADC50x05//ADC5
#defineAC_ADC60x06//ADC6
#defineAC_ADC70x07//ADC7

voidport_init(void)
{
PORTA=0x00;
DDRA=0x00;
PORTB=~((1<上拉電阻。
DDRB=(1<PORTC=0x00;//m103outputonly
DDRC=0x00;
PORTD=0x00;
DDRD=0x00;
}


//初始化的步驟,關(guān)中斷,更改ACSR的值,配置模擬比較器,開中斷。
//Comparatorinitialize
//triggeron:Outputtoggle
voidcomparator_init(void)
{
ACSR=ACSR&0xF7;//ensureinterruptisoffbeforechanging
//上面一句會使ACIE為零,不允許中斷
ACSR=(1}

#pragmainterrupt_handlerana_comp_isr:17
voidana_comp_isr(void)
{
//analogcomparatorcompareevent
//硬件自動清除ACI標志位
delay_us(10);
if((ACSR&(1LED0_ON();//如果AIN0else
LED0_OFF();//否則LED滅
delay_ms(200);//當(dāng)電壓差接近0V時,模擬比較器會產(chǎn)生臨界抖動,故延時200mS令肉眼能看到
}

//callthisroutinetoinitializeallperipherals
voidinit_devICes(void)
{
//stoperrantinterruptsuntilsetup
CLI();//dISAbleallinterrupts
port_init();
comparator_init();

MCUCR=0x00;
GICR=0x00;
TIMSK=0x00;//timerinterruptsources
SEI();//re-enableinterrupts
//allperipheralsarenowinitialized
}

voidmain(void)
{
init_devices();
while(1)
;
}

/*
程序測試:

VCCVCC
||
||||
AIN0--|W||W|--AIN1PB0---R---LED--
|||||
|||
GNDGNDGND

兩個電位器,一端接VCC,一端接地,構(gòu)成電位器分壓電路
AIN0和AIN1都分別接到電位器的中心抽頭。
PBO輸出串電阻驅(qū)動LED,高電平有效。
然后分別旋轉(zhuǎn)電位器,增減抽頭的電壓,將會發(fā)現(xiàn)PB0的輸出(LED0)會根據(jù)AIN0/AIN1的電壓關(guān)系變動
由于電源紋波,IO電流及外界干擾的影響,當(dāng)電壓差接近0V時,模擬比較器會產(chǎn)生臨界抖動,AIN0/AIN1對地并上小電容可以改善這種情況。

只有一個電位器時,可以變通
1可以使能ACBG,利用1.23V內(nèi)部能隙基準源代替AIN0作模擬比較器的正輸入端。
ACSR=(1<2可以使能ADC的內(nèi)部2.56V電壓基準,然后把AIN0或AIN1連接到PIN32AREF腳。
ADCSRA=(1
*/


/*
模擬比較器控制和狀態(tài)寄存器-ACSR

Bit7–ACD:模擬比較器禁用
模擬比較器上電默認是已經(jīng)工作中的,跟其他的模塊有所不同
ACD置位時,模擬比較器的電源被切斷??梢栽谌魏螘r候設(shè)置此位來關(guān)掉模擬比較器。
這可以減少器件工作模式及空閑模式下的功耗。
改變ACD位時,必須清零ACSR寄存器的ACIE位來禁止模擬比較器中斷。否則ACD改變時可能會產(chǎn)生中斷

Bit6–ACBG:選擇模擬比較器的能隙基準源
ACBG置位后,模擬比較器的正極輸入由1.23V能隙基準源所取代。否則,AIN0連接到模擬比較器的正極輸入。

Bit5–ACO:模擬比較器輸出
模擬比較器的輸出經(jīng)過同步后直接連到ACO。同步機制引入了1-2個時鐘周期的延時。

Bit4–ACI:模擬比較器中斷標志
當(dāng)比較器的輸出事件觸發(fā)了由ACIS1及ACIS0定義的中斷模式時,ACI置位。
如果ACIE和SREG寄存器的全局中斷標志I也置位,那么模擬比較器中斷服務(wù)程序即得以執(zhí)行,同時ACI被硬件清零。
ACI也可以通過寫"1”來清零。

Bit3–ACIE:模擬比較器中斷使能
當(dāng)ACIE位被置"1”且狀態(tài)寄存器中的全局中斷標志I也被置位時,模擬比較器中斷被激活。
否則中斷被禁止。

Bit2–ACIC:模擬比較器輸入捕捉使能
這個功能用于檢測一些微弱的觸發(fā)信號源,節(jié)省一個外部運放。
ACIC置位后允許通過模擬比較器來觸發(fā)T/C1的輸入捕捉功能。
此時比較器的輸出被直接連接到輸入捕捉的前端邏輯,從而使得比較器可以利用T/C1輸入捕捉中斷邏輯的噪聲抑制器及觸發(fā)沿選擇功能。
為了使比較器可以觸發(fā)T/C1的輸入捕捉中斷,定時器中斷屏蔽寄存器TIMSK的TICIE1必須置位。
ACIC為"0”時模擬比較器及輸入捕捉功能之間沒有任何聯(lián)系。

Bits1,0–ACIS1,ACIS0:模擬比較器中斷模式選擇
這兩位確定觸發(fā)模擬比較器中斷的事件。
ACIS1ACIS0中斷模式
00比較器輸出變化即可觸發(fā)中斷
01保留
10比較器輸出的下降沿產(chǎn)生中斷
11比較器輸出的上升沿產(chǎn)生中斷
需要改變ACIS1/ACIS0時,必須清零ACSR寄存器的中斷使能位來禁止模擬比較器中斷。否則有可能在改變這兩位時產(chǎn)生中斷。
*/

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: 驅(qū)動電源

在工業(yè)自動化蓬勃發(fā)展的當(dāng)下,工業(yè)電機作為核心動力設(shè)備,其驅(qū)動電源的性能直接關(guān)系到整個系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動勢抑制與過流保護是驅(qū)動電源設(shè)計中至關(guān)重要的兩個環(huán)節(jié),集成化方案的設(shè)計成為提升電機驅(qū)動性能的關(guān)鍵。

關(guān)鍵字: 工業(yè)電機 驅(qū)動電源

LED 驅(qū)動電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個照明設(shè)備的使用壽命。然而,在實際應(yīng)用中,LED 驅(qū)動電源易損壞的問題卻十分常見,不僅增加了維護成本,還影響了用戶體驗。要解決這一問題,需從設(shè)計、生...

關(guān)鍵字: 驅(qū)動電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動電源的公式,電感內(nèi)電流波動大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關(guān)鍵字: LED 設(shè)計 驅(qū)動電源

電動汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產(chǎn)業(yè)的重要發(fā)展方向。電動汽車的核心技術(shù)之一是電機驅(qū)動控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機驅(qū)動系統(tǒng)中的關(guān)鍵元件,其性能直接影響到電動汽車的動力性能和...

關(guān)鍵字: 電動汽車 新能源 驅(qū)動電源

在現(xiàn)代城市建設(shè)中,街道及停車場照明作為基礎(chǔ)設(shè)施的重要組成部分,其質(zhì)量和效率直接關(guān)系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進步,高亮度白光發(fā)光二極管(LED)因其獨特的優(yōu)勢逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關(guān)鍵字: 發(fā)光二極管 驅(qū)動電源 LED

LED通用照明設(shè)計工程師會遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關(guān)鍵字: LED 驅(qū)動電源 功率因數(shù)校正

在LED照明技術(shù)日益普及的今天,LED驅(qū)動電源的電磁干擾(EMI)問題成為了一個不可忽視的挑戰(zhàn)。電磁干擾不僅會影響LED燈具的正常工作,還可能對周圍電子設(shè)備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來解決L...

關(guān)鍵字: LED照明技術(shù) 電磁干擾 驅(qū)動電源

開關(guān)電源具有效率高的特性,而且開關(guān)電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機重量也有所下降,所以,現(xiàn)在的LED驅(qū)動電源

關(guān)鍵字: LED 驅(qū)動電源 開關(guān)電源

LED驅(qū)動電源是把電源供應(yīng)轉(zhuǎn)換為特定的電壓電流以驅(qū)動LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: LED 隧道燈 驅(qū)動電源
關(guān)閉