久久精品99久久_亚洲一区二区综合_狠狠色伊人亚洲综合成人_亚洲综合爱爱久久网

你好!歡迎來到深圳市穎特新科技有限公司!
語言
當前位置:首頁 >> 技術(shù)中心 >> 單片機入門 >> 高手總結(jié)!AVR單片機學(xué)習(xí)筆記

高手總結(jié)!AVR單片機學(xué)習(xí)筆記

關(guān)鍵字:AVR單片機 單片機學(xué)習(xí) 單片機經(jīng)驗 作者:admin 來源:不詳 發(fā)布時間:2018-05-18  瀏覽:37

下面是自己在學(xué)習(xí)AVR單片機時的學(xué)習(xí)經(jīng)驗,分享出來給大家,一起學(xué)習(xí)。


 

1、  AVR單片機采用RISC架構(gòu),8051單片機采用CISC架構(gòu)。前者速度為后者的2~4倍,為流水線操作指令

2、  AVR單片機有32個通用寄存器(地址在RAM區(qū)從$0000開始到$001F),其中有6個(最后6個)合并為3個16位的X,Y,Z寄存器,用來存放地址指針,Z寄存器還可以尋址程序存儲器

3、  哈佛結(jié)構(gòu),131條機器指令

4、  延遲開機功能

5、  內(nèi)部自帶RC振蕩器,可提供1/2/4/8MHZ的工作時鐘

6、  FLASH+EEPROM+SRAM+SPI+USART+TWI+PWM+RTC+10位ADC+模擬比較器+JTAG

7、  堆棧指針向下增長,51單片機向上增長

8、  程序存儲器按字來訪問,擦除和寫入以頁為單位

9、  復(fù)位時,所有的I/O口處于沒有上拉電阻的輸入狀態(tài)(高阻)

10、             沒有中斷優(yōu)先級控制寄存器,由中斷向量表的地址決定優(yōu)先級(地址越低,優(yōu)先級越高)

11、             PORTB |= (1<<2)D2置1,PORTB&=  ~(1<<6)D6清零

12、             FLASH分兩段:引導(dǎo)程序段(BootProgram Section)+應(yīng)用程序段(Application Program Section)。BPS中可以使用SPM指令實現(xiàn)IAP功能

13、             中斷向量表位于FLASH程序存儲器的最前面

14、             I/O空間為連續(xù)的64個I/O寄存器空間,在數(shù)據(jù)存儲器空間的映射地址為$0020~$005F。訪問I/O寄存器的兩種方式:IN,OUT指令+對SRAM訪問指令

15、             單獨的AVcc用于給PORTA的ADC做AREF

16、             13位的程序計數(shù)器PC,正好滿足16KB的尋址

17、             AVR對片內(nèi)SRAM的訪問需要2個時鐘周期

18、             

19、             狀態(tài)寄存器SREG:

 

           I:全局中斷使能位。置1,CPU可以響應(yīng)中斷;清0,CPU禁止響應(yīng)中斷。清0時,單獨的中斷觸發(fā)控制的值保持不變。并且中斷響應(yīng)后,I由硬件清0(手動置1實現(xiàn)中斷嵌套),由RETI置1再響應(yīng)其他中斷

           T:位復(fù)制存儲。BLD,BST?梢詫⑼ㄓ眉拇嫫鹘M中的任何一位復(fù)制到T中,反過來也可以

           H:半進位標志位。用于BCD的運算

           S:符號標志位。S=N⊕V。不管溢出與否(溢出后N的表示就不正確了。,但S總是能正確的表示計算結(jié)果的符號

           V:2的補碼溢出標志位。溢出時,N取反才是真正的結(jié)果符號

           N:負數(shù)標志位。直接取自運算結(jié)果的最高位

           Z:零值標志位。運算結(jié)果為0,置1

           C:進/借位標志。

20、             MCUCSR可以查看復(fù)位原因

21、             掉電檢測(BOD)復(fù)位<BODEN>,2.7V閾值,具有遲滯效應(yīng)(間隙特性??)

22、             在FLASH的$0000H存放的是一條JMP或者RJMP指令,用來跳轉(zhuǎn)到正式代碼入口。$0002H~0028H(針對中斷向量為一個字的,如果中斷向量為兩個字$0002H~0050H)存放的是中斷向量表,20個中斷口<算上第一個復(fù)位中斷為21個>,主程序開始在$002AH

23、             硬件開發(fā)工具:軟件模擬仿真器,實時在板仿真器(ICE),實時在片仿真器(JTAG)

24、             每組I/O口配置三個寄存器用來表征他們的狀態(tài):方向控制寄存器DDRx(Data Direction Register),數(shù)據(jù)寄存器PORTn,輸入引腳寄存器PINx。

25、             DDRx=1,I/O口處于推挽輸出工作方式,PORTn為1輸出20mA電流,為0吸納20mA電流。DDRx = 0,I/O口處于輸入工作方式,將PINx中的電平讀入到DB上(PORTn用來設(shè)置是否使用內(nèi)部上拉電阻,1為使用,0為不使用)在SFIOR中有一位PUD,PUD=1全部I/O上拉電阻無效,PUD =0,上拉取決于PORTn的設(shè)置

26、             使用I/O口時,一定要先配置I/O口。首先配置DDRx,確定I/O口是輸入還是輸出。根據(jù)實際情況,輸入時需要配置是上拉還是下拉(上拉就是默認輸入是高電平,下拉就是默認輸入是低電平)

27、             I/O口輸入方式時,應(yīng)該讀取的是PINx的值

28、              輸出口操作:

PORTA |= (1 <<PORTAx)           // 位置高

PORTA &= ~(1<< PORTAx)       // 位置低

PORTA ^= (1 <<PORTAx)          // 位取反

輸入口操作:

PINA & (1<< PORTAx)               // 位讀取

29、             有三個外部中斷(INT0,INT1,INT2),其中INT2只支持邊緣觸發(fā)

30、             滿足中斷條件,AVR硬件自動將相應(yīng)的中斷標志位置1,并且由硬件自動清除(僅對于部分中斷有此功能,當然也可以手動軟件清除,清除的方法是寫1),硬件也同時自動清除I標志位(缺省不能進行中斷嵌套,SEI將I置1,使能中斷嵌套功能)

31、             退出中斷后,AVR至少要再執(zhí)行一條指令后才能去響應(yīng)其他被掛起的中斷

32、             中斷響應(yīng)至少需要4個CK才能開始運行中斷向量表中的跳轉(zhuǎn)指令(清I,清中斷標志位,壓棧PC,中斷向量送入PC),至于要真正開始運行用戶的代碼,至少需要6~7個CK。中斷返回RETI也需要4個CK(彈出PC,置SREG中的I為1)

33、             在使能中斷允許位之前,最好先將對應(yīng)中斷源的中斷標志位清除,為了防止在使能時,會立馬產(chǎn)生一次“多余”的中斷。

34、             INT0,INT1支持四種形式的中斷觸發(fā):上升沿,下降沿,任意電平變化,低電平(不帶中斷標志位,低電平并不影響INTF0和INTF1的值(保持為0))。INT2只支持異步的上升沿和下降沿觸發(fā)(常用作喚醒MCU功能)

35、             中斷初始化步驟:配置中斷觸發(fā)類型(MCUCR,MCUCSR),使能對應(yīng)的中斷(GICR),清除對應(yīng)的中斷標志位(GIFR),使能全局中斷(asm(“SEI”))。AVR STUDIO6中的中斷寫法:SIGNAL(xx){}(x為中斷向量號)或者ISR(xx){}

36、             T/C0和T/C2可產(chǎn)生PWM,頻率發(fā)生器,外部事件計數(shù)器(僅T/C0),10位時鐘預(yù)分頻器,溢出和比較匹配中斷源,允許用32.768kHz晶體作為獨立的計數(shù)時鐘源(僅T/C2)

37、             時鐘源和51單片機差不多:(CS[2:0]共八種選擇),停止計數(shù),上升沿或下降沿,10位預(yù)分頻器(1/1,1/8,1/64,1/256,1/1024)

38、             TCNT0(8位)寄存器用來存放計數(shù)數(shù)值,如果在計數(shù)器運行期間寫入數(shù)值,那么在下一個定時時鐘周期中會阻塞比較匹配(丟失一次TCNT0和OCR0的匹配操作)

39、             OCR0中的數(shù)據(jù)會一直和TCNT0中的數(shù)值進行比較,如果匹配,將產(chǎn)生一個比較匹配的中斷申請或者改變OC0的輸出邏輯電平

40、             TIMSK中的OCIE0(OutputCompare Interrupt Enable),TOIE(Timer Overflow Interrupt Enable)分別為比較匹配中斷允許標志位和溢出中斷允許位,當I被置位時,滿足條件即可觸發(fā)對應(yīng)的中斷

41、             TIFR中的OCF0(OutputCompare Flag)和TOV0(Timer Overflow)分別為比較匹配標志位和定時器溢出標志位

42、             TCCR中的WGM[1:0]決定T/C0的四種工作方式:普通模式,比較匹配時定時器清0,兩種PWM模式。COM[1:0]比較匹配輸出方式的作用取決于T/C0的工作方式。普通模式(WGM[1:0]=0):計數(shù)到0xFF會產(chǎn)生溢出中斷,TOV0置1。比較匹配清0計數(shù)器CTC模式(WGM[1:0]=2):f=f(IO)/(2N(1+OCR0)),TCNT0和OCR0匹配,匹配后TCNT0清0重新計數(shù),同時置OCF0為1,便于產(chǎn)生中斷。在中斷中改變OCR0的值,在OC0中可以輸出可變的高低電平信號?焖貾WM模式(WGM[1:0]=3):f=f(IO)/(256N),TCNT0從0計數(shù)到0xFF,然后重新開始計數(shù),如果匹配OCR0則根據(jù)COM[1:0]中的設(shè)置值分別置位或者清0OC0,以此來輸出PWM波形。相位可調(diào)PWM模式(WGM[1:0]=1):雙向計數(shù)器,所以最高PWM頻率比快速PWM模式慢了一半。

43、             T2定時器的分頻系數(shù)與T0不同,注意區(qū)別

44、             T1定時器在讀取數(shù)據(jù)時,先讀低八位,再讀高八位。在寫入數(shù)據(jù)時,先寫高八位,再寫低八位。就像對高位壓棧一樣。

45、             由于T1可以修改計數(shù)器的上限值(TOP),所以可以產(chǎn)生頻率可變的PWM波形,而T0/T2定時器無法做到這一點

46、             T1的工作模式由WGM1[3:0]決定,由此可以看出T1有16種工作模式。普通模式(WGM1[3:0]=0)。CTC模式(GWM1[3:0]=4或12)?焖貾WM模式(GWM1[3:0]=5,6,7,14,15)有兩路同時輸出,OC1A,OC1B

47、             T1輸入捕捉功能:觸發(fā)信號由ICP1輸入或者又模擬比較器AC0輸入。觸發(fā)時,TCNT1的值被寫入到ICR1中置位ICF1。此外,ICNC(Input Capture NoiseCanceler)為噪聲抑制功能,實現(xiàn)原理就是延遲4個CK檢測電平變化,如果連續(xù)4個CK不變,則認為是真正的觸發(fā)。ICES(Input Capture Edge Select)為觸發(fā)邊緣的選擇,0為下降沿,1為上升沿

48、             模擬比較器(正極AIN0和負極AIN1),SFIOR(Special Funciton IO Register)中的ACME(Analog Comparator Multiplexer Enable)模擬比較多路使能,置1并且ADC失能,比較器負極接到ADC的多路開關(guān)。置0,比較器負極接到AIN1。ACSR(AnalogComparator Control and Status Register)模擬比較器控制和狀態(tài)寄存器。ACD(AnalogControl Disable)置1時,切斷模擬比較器的開關(guān)。在改變設(shè)置時,應(yīng)先失能ACIE,禁止產(chǎn)生模擬器比較中斷。ACO(Analog Comparator Output)模擬比較器輸出。ACIS[1:0](AnalogComparator Interrupt Select)模擬比較器中斷模式選擇

49、             AVCC為ADC模塊的獨立電源。參考電源可選擇片內(nèi)2.56V,AVCC或者外部參考電源

50、             ADMUX(ADC多路復(fù)用選擇寄存器),ADLAR(ADC LeftAdjust Result)結(jié)果左對齊。ADCSRA(ADC控制和狀態(tài)寄存器A),ADEN,ADC使能位。ADSC(ADC Start Conversion)開始轉(zhuǎn)換位。ADATE(ADC Auto Trigger Enable)自動觸發(fā)開始轉(zhuǎn)換,信號源由SFIOR的ADTS位決定。ADPS[2:0]預(yù)分頻選擇位

51、             如果AVREF接到外部電源,那么就不能使用內(nèi)部參考電源。

52、             ADC模塊在使能ADATE(自動觸發(fā)轉(zhuǎn)換)后,利用T0的溢出中斷來觸發(fā)開始轉(zhuǎn)換,一定要開啟T0的中斷允許位(TOIE0),否則無法觸發(fā)轉(zhuǎn)換

53、             一次正常的ADC轉(zhuǎn)換過程需要13個采樣時鐘,假定ADC采樣時鐘頻率為200kHZ,那么最高的采樣頻率為200kHZ/13=15.384kHZ,所以由香農(nóng)定理,被測信號的最高頻率為7.7kHZ

54、             通用同步/異步串行接收/發(fā)送器(Universal Synchronous and Asynchronous Serial Recevier andTransimitter)支持四種工作模式:普通異步模式、雙倍速異步模式、主機同步模式和從機同步模式。UCSRC中的UMSEL(U Mode Select)位用于選擇同步或異步模式。UCSRA中的U2X用于控制是否使用倍速模式。

55、             波特率計算公式:BAUD=fosc/(16(UBRR+1))。

56、             UCSRA中的UDRE(U Data Register Empty)置1時(數(shù)據(jù)寄存器為空),UDR才能夠被寫入,一旦被寫入,硬件自動將其中的內(nèi)容送到TXD上串行移出。RXD和TXD均可以產(chǎn)生相應(yīng)的中斷,并在進入中斷后標志自動清0。

57、             由于UBRRH (U Baud Rate Register)和UCSRC的物理地址相同,只是在最高位URSEL的不同,而寫操作和讀操作的對象不同。當URSEL為0時,對象為UBRRH;當URSEL為1時,對象為UCSRC。(讀UCSRC時,需要連續(xù)讀兩次才能得到結(jié)果,第一次讀的是UBRRH的值)

58、             USART的初始化包括:設(shè)置波特率,使能接收和發(fā)送器,設(shè)置幀格式

     數(shù)據(jù)發(fā)送:while(!(UCSRA& (1 << UDRE))); UDR = data;UDRE在UDR被寫入值后被硬件自動清0,如果在UDR空中斷沒有對UDR賦值,那么UDRE沒有清0,退出中斷后會再次觸發(fā)中斷。但是TXC中斷可以硬件自動清0TXC標志

    數(shù)據(jù)接收:while(!(UCSRA & (1 << RXC)));data = UDR;RXC在UDR數(shù)據(jù)被讀出后被硬件自動清0,所以在RXC中斷時必須讀取UDR,以清0RXC;蛘呤謩忧0RXC

     TXD和RXD功能由TXEN和RXEN的設(shè)置來開啟和關(guān)閉

59、             如果UCSRA中的FE,PE,DOR在RXC中斷中需要讀出進行錯誤檢測,那么一定要先讀UCSRA再讀UDR

60、             串行外設(shè)接口(Serial Peripheral Interface,SPI.飛思卡爾公司提出),兩線串行接口(Two-wireSerial Interface,TWI)。SPI一般有四根信號線:MOSI,MISO,SCLK,/SS.可以想象一下主機和從機從MOSI到MISO收尾相連形成環(huán)(本質(zhì)就是串行移位唄~),當數(shù)據(jù)全部交換完畢后,主機拉高/SS,停止SPI傳輸。這就是為什么SPI比TWI(I2C)快的原因:因為數(shù)據(jù)是全雙工,并且數(shù)據(jù)走不同的通道。

61、             SPI有四種工作模式,取決于同步時鐘的極性(Clock Polariy)和同步時鐘的相位(Clock Phase)2個參數(shù)。

62、             SPI的主機方式最高速率為(CK/2),從機方式最高速率為(CKI/4)

63、             數(shù)據(jù)寄存器SPDR。在讀SPDR時,讀取的是緩沖寄存器內(nèi)容;寫SPDR時,寫到移位寄存器中。一旦將數(shù)據(jù)寫入SPDR,硬件自動傳輸一次SPI通信,如果中斷允許,則進入SPI中斷。

64、             SPI速率一般為1MHZ,最高可達10MHZ

65、             TWI工作在被控模式時,CPU頻率fcpuclock必須大于TWI時鐘線SCL頻率的16倍。SCL的頻率: (在主機模式下,TWBR應(yīng)大于10.另外特別需要注意的一點: 指的不是4的TWPS次方,應(yīng)該是按照分頻表格,將表格中的1,4,16,64替換 整體)

66、             TWINT中斷標志位,當其被置位時,時鐘線SCL被拉低,并且執(zhí)行中斷向量時,標志不會清0,只能靠手動軟件清0。

67、             如果TWINT被置位,表示正在傳送數(shù)據(jù),此時如果寫入TWDR,那么TWWC(寫沖突)會被置位。也就是說當TWINT被置位時,TWDR應(yīng)該保持穩(wěn)定,這和I2C的協(xié)議是一致的。

68、             TWAR(地址寄存器)的高7位用于存儲自己的地址,最后一位TWGCE(TWI General Call Recognition Enable)為地址匹配成功使能位。如果地址匹配成功,將會產(chǎn)生一次TWI中斷

69、             在I2C的TWI寄存器設(shè)置中,不能使用|賦值,必須整體賦值

70、             CKOPT當系統(tǒng)頻率較高時或者要求抗干擾能力強,設(shè)置為1。如果系統(tǒng)頻率低,設(shè)置為0,這樣可以減少電流的損耗。

71、             片內(nèi)EEPROM,執(zhí)行讀操作時,CPU停止運行4個時鐘周期。而在執(zhí)行寫操作時,CPU停止運行2個時鐘周期

編輯:admin  最后修改時間:2018-05-18

聯(lián)系方式

0755-82591179

郵箱:ivy@yingtexin.net

地址:深圳市南山區(qū)桃源街道平山社區(qū)平山一路2號南山云谷創(chuàng)業(yè)園二期11棟410-411

Copyright © 2014-2026 穎特新科技有限公司 All Rights Reserved.  粵ICP備14043402號-4

久久精品99久久_亚洲一区二区综合_狠狠色伊人亚洲综合成人_亚洲综合爱爱久久网
毛葺葺老太做受视频| 在线观看三级网站| 免费一级特黄特色毛片久久看| 欧美美女性视频| 激情 小说 亚洲 图片: 伦| 欧美三级午夜理伦三级| 免费观看日韩毛片| 大肉大捧一进一出好爽动态图| 精品这里只有精品| 国产成人精品无码播放| www.cao超碰| www,av在线| 波多野结衣与黑人| 国产精品欧美激情在线观看| 中文字幕在线观看第三页| 亚洲免费av一区| 国产卡一卡二在线| 国产精品丝袜久久久久久消防器材| 成人免费观看毛片| 夜夜爽久久精品91| 少妇高潮毛片色欲ava片| 黄色片在线免费| 99热这里只有精品7| 国产原创popny丨九色| 久久婷婷综合色| 国产免费内射又粗又爽密桃视频| 农民人伦一区二区三区| 午夜激情福利在线| 免费拍拍拍网站| 亚洲综合婷婷久久| 男人天堂av片| 中文字幕第38页| 韩日视频在线观看| 性生活免费在线观看| 97超碰在线视| 国模私拍视频在线观看| 国产极品尤物在线| 韩国黄色一级大片| 91看片在线免费观看| 日韩国产一级片| 婷婷视频在线播放| 国产超碰在线播放| 少妇高潮喷水在线观看| 欧美 日韩 国产 在线观看| 欧美丰满熟妇xxxxx| 黄色一级片在线看| 三年中文高清在线观看第6集| 逼特逼视频在线| 欧美中文字幕在线观看视频 | 97超碰成人在线| 亚洲国产精品久久久久婷蜜芽| 欧美日韩在线免费观看视频| 韩国视频一区二区三区| 免费在线观看亚洲视频| 狠狠精品干练久久久无码中文字幕| 日本成人黄色网| 男人揉女人奶房视频60分| www.av毛片| 日本一二三区视频在线| 久久最新免费视频| 青娱乐精品在线| 999热精品视频| 偷拍盗摄高潮叫床对白清晰| 一区二区久久精品| 欧美丝袜在线观看| 国产91av视频在线观看| 亚洲在线观看网站| 男人的天堂视频在线| 美女在线免费视频| 日韩精品一区二区免费| 激情五月六月婷婷| 丰满少妇大力进入| 亚欧无线一线二线三线区别| 无码人妻丰满熟妇区毛片| 999精品网站| 亚洲综合婷婷久久| 国产高清精品软男同| 成人免费观看在线| 黄色免费福利视频| 国产日韩成人内射视频| 日本美女视频一区| 日本久久久网站| 久久精品午夜福利| wwww.国产| 99re在线视频免费观看| 亚洲 欧美 日韩 国产综合 在线| 国产又粗又大又爽的视频| 亚洲精品天堂成人片av在线播放| h无码动漫在线观看| 久久网站免费视频| 亚洲精品永久视频| 野外做受又硬又粗又大视频√| 你懂的av在线| 午夜免费一级片| av在线播放天堂| 在线观看免费不卡av| 国产成人艳妇aa视频在线 | 毛片毛片毛片毛| 日本一区午夜艳熟免费| 亚洲成人av免费看| 日韩极品视频在线观看| www.夜夜爽| 极品美女扒开粉嫩小泬| 天天成人综合网| 热久久精品免费视频| 日本一级黄视频| 欧美自拍小视频| 欧美黄网在线观看| 一区二区三区网址| 国产av麻豆mag剧集| 在线视频日韩欧美| 亚洲性生活网站| 免费黄色日本网站| 天堂а√在线中文在线| 欧美美女性视频| 亚欧在线免费观看| 91成人在线观看喷潮教学| 六月婷婷激情网| 日本特黄在线观看| 中文字幕线观看| 中文字幕天天干| 黄色片在线免费| 日韩免费高清在线| 欧美成人精品欧美一级乱| 国产一区二区网| 搞av.com| 欧美变态另类刺激| 成年人视频观看| 日本中文字幕在线视频观看| 大桥未久一区二区三区| 99免费视频观看| 欧美日韩激情视频在线观看| 四虎4hu永久免费入口| 国产999免费视频| 999在线精品视频| 国产性生活一级片| 色呦呦网站入口| 欧美少妇在线观看| 波多野结衣av一区二区全免费观看| 男人c女人视频| 人妻少妇精品久久| 成熟老妇女视频| 欧美日韩亚洲自拍| 在线免费黄色网| 国产爆乳无码一区二区麻豆| 国产精品国三级国产av| 波多野结衣之无限发射| 久久精品视频91| 人人爽人人爽av| 国产aaa免费视频| 欧美精品无码一区二区三区| 国产一级片自拍| 国产一线二线三线女| 99热成人精品热久久66| 国产成人无码精品久久久性色| 少妇大叫太大太粗太爽了a片小说| ijzzijzzij亚洲大全| 国产成人一二三区| 日韩在线综合网| 污视频网址在线观看| 国产福利片一区二区| 黄色国产一级视频| 蜜桃免费在线视频| 青青青在线观看视频| 一区二区在线播放视频| 无码毛片aaa在线| 国产精品亚洲二区在线观看| 国产卡一卡二在线| 成人性生生活性生交12| 50度灰在线观看| 成人午夜激情av| 很污的网站在线观看| 天堂在线一区二区三区| 青青草成人免费在线视频| 九九热视频免费| 欧美激情精品久久久久久小说| 一二三四中文字幕| 日本美女视频一区| 99热成人精品热久久66| 青春草国产视频| 超碰超碰超碰超碰超碰| 日日干夜夜操s8| 一级黄色香蕉视频| 日韩 欧美 高清| 精品国产一二三四区| 男女私大尺度视频| 国产 欧美 日韩 一区| 超碰在线免费观看97| 国产精品v日韩精品v在线观看| 狠狠爱免费视频| 各处沟厕大尺度偷拍女厕嘘嘘| 日本香蕉视频在线观看| 少妇高潮大叫好爽喷水| 麻豆md0077饥渴少妇| 成人手机视频在线| 9999在线观看| 国产奶头好大揉着好爽视频| 午夜视频在线网站| 中文字幕第22页| 日本一道在线观看|