亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? main.c

?? AVR模擬比較器(mega16系列單片機(jī))
?? C
字號:
// ICC-AVR application builder : 2007-3-15 8:22:58
// Target : M16
// Crystal: 7.3728Mhz
// AVR 模擬比較器使用范例

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

//管腳定義
#define LED0		0 	//PB0
#define AIN_P		2 	//PB2(AIN0)
#define AIN_N		3 	//PB3(AIN1)

//宏定義
#define LED0_ON()		PORTB|= (1<<LED0)   //輸出高電平,燈亮
#define LED0_OFF()		PORTB&=~(1<<LED0)	//輸出低電平,燈滅

//常量定義
/*
	模擬比較器的正輸入端由 ACBG位決定,=0選擇AIN0引腳,=1選擇1.23V內(nèi)部能隙基準(zhǔn)源

  模擬比較器多工輸入 (不常用,因?yàn)锳DC將無法使用)
	可以選擇ADC7..0 之中的任意一個來代替模擬比較器的負(fù)極輸入端。
	ADC復(fù)用器可用來完成這個功能。
	當(dāng)然,為了使用這個功能首先必須關(guān)掉ADC。
	如果模擬比較器復(fù)用器使	能位(SFIOR 中的ACME) 被置位,且ADC 也已經(jīng)關(guān)掉(ADCSRA 寄存器的ADEN 為0),
	則可以通過ADMUX 寄存器的MUX2..0 來選擇替代模擬比較器負(fù)極輸入的管腳,
	如果ACME 清零或ADEN 置位,則模擬比較器的負(fù)極輸入為AIN1。
	
*/
#define AC_ADC0		 	0x00		//ADC0
#define AC_ADC1		 	0x01		//ADC1
#define AC_ADC2		 	0x02		//ADC2
#define AC_ADC3		 	0x03		//ADC3
#define AC_ADC4		 	0x04		//ADC4
#define AC_ADC5		 	0x05		//ADC5
#define AC_ADC6		 	0x06		//ADC6
#define AC_ADC7		 	0x07		//ADC7

void port_init(void)
{
 PORTA = 0x00;
 DDRA  = 0x00;
 PORTB = ~((1<<AIN_P)|(1<<AIN_N)); //作模擬比較器輸入時,不可使能內(nèi)部上拉電阻。
 DDRB = (1<<LED0);				//PB0作輸出
 PORTC = 0x00; //m103 output only
 DDRC  = 0x00;
 PORTD = 0x00;
 DDRD  = 0x00;
}


//初始化的步驟,關(guān)中斷,更改ACSR的值,配置模擬比較器,開中斷。
//Comparator initialize
// trigger on: Output toggle
void comparator_init(void)
{
 ACSR = ACSR & 0xF7; //ensure interrupt is off before changing
 //上面一句會使ACIE為零,不允許中斷
 ACSR=(1<<ACIE);
  // 使能模擬比較器中斷,比較器輸出變化即可觸發(fā)中斷,AIN0為正輸入端,AIN1為負(fù)輸入端。
}

#pragma interrupt_handler ana_comp_isr:17
void ana_comp_isr(void)
{
 //analog comparator compare event
     //硬件自動清除ACI標(biāo)志位
    delay_us(10);
    if ((ACSR&(1<<ACO))==0)	//檢測ACO
	   						//Bit 5 ACO: 模擬比較器輸出	模擬比較器的輸出經(jīng)過同步后直接連到ACO。
    	LED0_ON();			//如果AIN0<AIN1(ACO=0),LED亮		
    else
    	LED0_OFF();			//否則 LED滅
    delay_ms(200); 		//當(dāng)電壓差接近0V時,模擬比較器會產(chǎn)生臨界抖動,故延時200mS令肉眼能看到  
}

//call this routine to initialize all peripherals
void init_devices(void)
{
 //stop errant interrupts until set up
 CLI(); //disable all interrupts
 port_init();
 comparator_init();

 MCUCR = 0x00;
 GICR  = 0x00;
 TIMSK = 0x00; //timer interrupt sources
 SEI(); //re-enable interrupts
 //all peripherals are now initialized
}

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

/*
程序測試:

       VCC      VCC
        |        |
       | |      | |               
 AIN0--|W|      |W|--AIN1  PB0---R---LED--
       | |      | |                       |
        |        |                        |
       GND      GND                      GND
 
	兩個電位器,一端接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)部能隙基準(zhǔn)源代替AIN0作模擬比較器的正輸入端。
	    ACSR=(1<<ACIE)|(1<<ACBG);
    2 可以使能ADC的內(nèi)部2.56V電壓基準(zhǔn),然后把AIN0或AIN1連接到pin32 AREF腳。
   		ADCSRA=(1<<ADEN);  //需要打開ADC
   		ADMUX=(1<<REFS1)|(1<<REFS0);

*/


/*
    模擬比較器控制和狀態(tài)寄存器-ACSR
    
    Bit 7 – ACD: 模擬比較器禁用
    模擬比較器上電默認(rèn)是已經(jīng)工作中的,跟其他的模塊有所不同
    ACD置位時,模擬比較器的電源被切斷。可以在任何時候設(shè)置此位來關(guān)掉模擬比較器。
    這可以減少器件工作模式及空閑模式下的功耗。
    改變ACD位時,必須清零ACSR 寄存器的ACIE位來禁止模擬比較器中斷。否則ACD改變時可能會產(chǎn)生中斷
    
    Bit 6 – ACBG: 選擇模擬比較器的能隙基準(zhǔn)源
	ACBG 置位后,模擬比較器的正極輸入由1.23V能隙基準(zhǔn)源所取代。否則, AIN0 連接到模擬比較器的正極輸入。
	
	Bit 5 – ACO: 模擬比較器輸出
	模擬比較器的輸出經(jīng)過同步后直接連到ACO。同步機(jī)制引入了1-2 個時鐘周期的延時。
	
	Bit 4 – ACI: 模擬比較器中斷標(biāo)志
	當(dāng)比較器的輸出事件觸發(fā)了由ACIS1 及ACIS0 定義的中斷模式時,ACI 置位。
	如果ACIE	和SREG 寄存器的全局中斷標(biāo)志I 也置位,那么模擬比較器中斷服務(wù)程序即得以執(zhí)行,同時ACI 被硬件清零。
	ACI 也可以通過寫"1” 來清零。
	
	Bit 3 – ACIE: 模擬比較器中斷使能
	當(dāng)ACIE 位被置"1” 且狀態(tài)寄存器中的全局中斷標(biāo)志I 也被置位時,模擬比較器中斷被激活。
	否則中斷被禁止。
    
    Bit2 – ACIC: 模擬比較器輸入捕捉使能
	這個功能用于檢測一些微弱的觸發(fā)信號源,節(jié)省一個外部運(yùn)放。
    ACIC置位后允許通過模擬比較器來觸發(fā)T/C1 的輸入捕捉功能。
    此時比較器的輸出被直接連接到輸入捕捉的前端邏輯,從而使得比較器可以利用T/C1 輸入捕捉中斷邏輯的噪聲抑制器及觸發(fā)沿選擇功能。
	為了使比較器可以觸發(fā)T/C1 的輸入捕捉中斷,定時器中斷屏蔽寄存器TIMSK 的TICIE1	必須置位。
    ACIC 為"0” 時模擬比較器及輸入捕捉功能之間沒有任何聯(lián)系。
	
	Bits 1, 0 – ACIS1, ACIS0: 模擬比較器中斷模式選擇
	這兩位確定觸發(fā)模擬比較器中斷的事件。
	ACIS1 ACIS0 	中斷模式
	  0 	0 比較器輸出變化即可觸發(fā)中斷
	  0 	1 保留
	  1 	0 比較器輸出的下降沿產(chǎn)生中斷
	  1 	1 比較器輸出的上升沿產(chǎn)生中斷
	需要改變ACIS1/ACIS0 時,必須清零ACSR 寄存器的中斷使能位來禁止模擬比較器中斷。否則有可能在改變這兩位時產(chǎn)生中斷。
    */

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产麻豆精品视频| 69堂精品视频| 欧美一区二区久久| 亚洲视频 欧洲视频| 看电影不卡的网站| 色网综合在线观看| 国产欧美日韩亚州综合| 麻豆精品一二三| 色婷婷激情久久| 久久久久亚洲蜜桃| 青青草精品视频| 欧美日韩免费一区二区三区| 国产精品卡一卡二卡三| 国产综合色视频| 69成人精品免费视频| 亚洲一区二区五区| 91麻豆国产福利在线观看| 精品对白一区国产伦| 免费在线看成人av| 欧美日韩黄视频| 亚洲成人av电影| 欧美三级在线看| 五月综合激情婷婷六月色窝| 欧美亚洲另类激情小说| 亚洲午夜久久久久久久久电影网 | 国产午夜亚洲精品午夜鲁丝片| 亚洲午夜久久久久久久久电影院| 91在线视频播放地址| 中文字幕中文在线不卡住| 日本91福利区| 亚洲精品在线网站| 国产精品一区二区免费不卡| 国产亚洲精久久久久久| 国产精品一区二区久久精品爱涩| 久久噜噜亚洲综合| 国产69精品久久久久777| 欧美极品少妇xxxxⅹ高跟鞋| 成人午夜激情在线| 综合久久一区二区三区| 一本一本久久a久久精品综合麻豆 一本一道波多野结衣一区二区 | 国产精一品亚洲二区在线视频| 精品少妇一区二区| 国产风韵犹存在线视精品| 国产精品区一区二区三区| 成人综合婷婷国产精品久久蜜臀 | 日韩欧美电影在线| 国产精品一区二区三区99| 国产精品无码永久免费888| 成人性生交大片免费看视频在线 | 国产精品久久久久久久久快鸭| av毛片久久久久**hd| 亚洲一区二区三区国产| 日韩一本二本av| 成人久久久精品乱码一区二区三区| 亚洲婷婷在线视频| 日韩视频在线一区二区| 成人夜色视频网站在线观看| 亚洲一区二区在线免费观看视频| 欧美一区二区精品久久911| 国产suv精品一区二区6| 亚洲成人手机在线| 久久久精品蜜桃| 欧美日韩一区三区四区| 国产精品99久久久久久久女警| 亚洲柠檬福利资源导航| 日韩欧美激情四射| 色天使久久综合网天天| 黄色日韩三级电影| 亚洲网友自拍偷拍| 国产网站一区二区| 欧美精品第1页| 99精品黄色片免费大全| 久久草av在线| 亚洲免费观看视频| 国产日产欧美一区| 欧美肥妇free| 91视频在线观看| 国产综合久久久久久鬼色| 亚洲一区二区三区国产| 国产精品福利av| www国产成人| 日韩一区二区三区四区| 色综合久久久久久久久久久| 国产精品一级片| 蜜臀av性久久久久蜜臀av麻豆 | 午夜精品视频一区| 国产精品色在线| 久久美女艺术照精彩视频福利播放| 欧美午夜一区二区三区| 99久久精品情趣| 国产精品一品视频| 国产在线播放一区三区四| 日韩电影在线观看网站| 亚洲成人777| 亚洲一区二区av在线| 自拍偷拍欧美精品| 中文字幕一区av| 欧美极品xxx| 国产欧美久久久精品影院| 久久久精品免费网站| 精品粉嫩超白一线天av| 欧美成人一区二区三区片免费 | 国产在线视频一区二区三区| 日韩和欧美的一区| 天天综合色天天综合| 亚洲午夜免费视频| 午夜视频一区二区三区| 婷婷久久综合九色综合伊人色| 亚洲国产欧美日韩另类综合 | 在线播放91灌醉迷j高跟美女| 成人高清免费在线播放| 99久久综合狠狠综合久久| 成人综合婷婷国产精品久久蜜臀 | 亚洲主播在线播放| 亚洲激情六月丁香| 午夜精品一区在线观看| 日韩在线一区二区| 伦理电影国产精品| 韩国视频一区二区| 成人免费视频app| 色综合久久综合中文综合网| 在线视频亚洲一区| 欧美人xxxx| 欧美精品一区二区三区蜜臀| 久久精品一区二区三区四区| 国产精品美女久久久久aⅴ| 中文字幕日韩精品一区| 亚洲综合色区另类av| 日本欧美加勒比视频| 精品一区二区精品| 91一区二区在线观看| 欧美精品在线观看一区二区| 欧美大片国产精品| 国产精品麻豆欧美日韩ww| 亚洲高清免费观看高清完整版在线观看| 一个色综合网站| 国模无码大尺度一区二区三区| 福利一区二区在线| 欧美日韩国产综合久久| 精品美女一区二区三区| 亚洲丝袜美腿综合| 看电影不卡的网站| 色综合天天在线| 日韩欧美综合在线| 中文字幕一区av| 久久99国产精品免费网站| 91在线视频观看| 精品国产乱码久久久久久免费| 亚洲精品成人a在线观看| 玖玖九九国产精品| 色爱区综合激月婷婷| 精品国产免费视频| 亚洲午夜三级在线| 丁香婷婷综合色啪| 在线成人午夜影院| 国产精品久久久久久久久免费相片 | 欧美高清在线视频| 午夜精品一区二区三区免费视频| 国产一区二区看久久| 欧美日韩亚洲综合一区二区三区 | 国产欧美日韩视频一区二区| 亚洲国产视频一区| 成人激情开心网| 日韩精品综合一本久道在线视频| 中文字幕一区二区三区精华液| 久久av老司机精品网站导航| 色老综合老女人久久久| 国产日韩在线不卡| 美女看a上一区| 欧美日韩一二三区| 亚洲精品写真福利| www.日韩在线| 久久久无码精品亚洲日韩按摩| 婷婷久久综合九色国产成人| 色综合色狠狠天天综合色| 中文字幕第一区二区| 极品美女销魂一区二区三区免费| 欧美蜜桃一区二区三区| 亚洲精品成人在线| 97se亚洲国产综合自在线| 国产农村妇女毛片精品久久麻豆| 日韩国产精品大片| 欧美日韩国产成人在线91| 亚洲综合一二区| 一本一道综合狠狠老| 亚洲欧洲综合另类| 成人丝袜视频网| 国产精品色在线观看| 国产大陆a不卡| 欧美国产国产综合| 成人午夜免费视频| 国产精品电影一区二区三区| 粉嫩一区二区三区在线看| 国产欧美日韩在线| 成人黄色大片在线观看| 国产精品网站在线观看| av亚洲产国偷v产偷v自拍| 亚洲三级免费观看| 在线观看免费一区| 日本aⅴ免费视频一区二区三区|