精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

電子發燒友App

硬聲App

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示
創作
電子發燒友網>電子資料下載>可編程邏輯>AVR C語言開發難不難?資料下載

AVR C語言開發難不難?資料下載

2021-04-17 | pdf | 208.31KB | 次下載 | 2積分

資料介紹

Avr單片機和其他單片機一樣,有自己的指令和寄存器,特定的IO口操作方法,有定時器AD轉換,串行口,PWM輸出,EEPROM等。為了縮短大家學習的時間,快速的了解avr編程思路,擬定avr程序設計系列教程。我使用avr也不是很長時間,技術有限,錯誤再所難免,還請指出,以期改正。 【說明】:本頁是針對從來沒有碰過單片機或者用過單片機而沒有用c語言的朋友,如果你已經用過其他單片機,此頁說明可能對你沒有很大幫助,且顯得有些幼稚,請你跳過。 本站所有程序都是在icc+avrstudio下進行的,如果你沒有配置好環境 采用icc的原因之一是它自帶一個非常好用的application builder,生成的代碼結構清晰,層次清楚,特別適合新手,如下圖。 非常好用的 icc application builder 下面通過一個簡單的程序,分析avr程序要素,使用icc的程序生成器,Application Builder 界面如下: icc的程序生成器 進入該界面后,我更改設置,Target CPU,及目標芯片設置位mega16這個非常常用的芯片,Xtal speed 及晶振頻率,我選了我用的7.3728MHz。 下面我們來看看我們得到的代碼。【說明】:“#”只是為了方便解釋代碼,并非為程序內容。 #1 //ICC-AVR application builder : 2006-11-3 14:42:54 #2 // Target : M16 #3 // Crystal: 7.3728Mhz #4 #include #5 #include #6 void port_init(void) #7 { #8 PORTA = 0x00; #9 DDRA = 0x00; PORTB = 0x00; DDRB = 0x00; PORTC = 0x00; //m103 output only DDRC = 0x00; PORTD = 0x00; DDRD = 0x00; #10 } #11 //call this routine to initialize all peripherals #12 void init_devices(void) #13 { #14 //stop errant interrupts until set up #15 CLI(); //disable all interrupts #16 port_init(); #17 MCUCR = 0x00; #18 GICR = 0x00; #19 TIMSK = 0x00; //timer interrupt sources #20 SEI(); //re-enable interrupts #21 //all peripherals are now initialized #13 } #1——#3,注釋行,分別說明了程序生成者是ICC-AVR application builder,生成時間,CPU類型,晶振大小,在本例中晶振大小沒有用途,但在實際操作中,晶振大小將影響定時器的設置,PWM波形的輸出,串口波特率的設定,總線時序等多方面的問題。 #4——#5,包含特定頭文件,學過c語言的人都知道,c語言里幾乎每個程序都要包含特定的頭文件,在這里,iom16v.h和macros.h都在icc程序安裝文件夾下一個include的目錄中,iom16v.h和你選擇的芯片相對應,如果你選擇的是atmega32,那個這個文件就是iom32v.h,等等,在這樣的文件中定義了對應的芯片的各個硬件地址。macros.h文件中定義了一些宏命令和一些老的語言寫法。通常每一個程序都要包含這個頭文件。 #6 void port_init(void),定義函數port_init,函數的用途是初始化串口,前面一個void表示函數沒有輸出,括號里的void表示這個函數沒有輸入變量。 #7,#10 C語言中所有函數體都要寫在{}內,一個開始,一個結束。 #8,定義PA口為0x00,及PA口上的所有管腳輸出為低電平,同樣道理,如果些微PORTA=0xFF,則都輸入高電平,0xFF及二進制的11111111,如果想讓某一位輸出高,其他為低,如00000001,則是PA0輸出為高電平,PA1——PA7輸出為低電平。說明:每個口線與單片機實際引腳的對應關系請參看技術手冊。 #9,定義引腳的輸出輸入模式,1為輸出,0為輸入。當使用輸出模式及設置為1時,PORTA的值將影響內部上拉電阻的使用,如果PORTA對應管腳的值為1,則使用內部上拉電阻,否則不采用。 除了這里說的“=”之外,管腳的控制還有其他算符,|= ,&=! ,^=,==,請參考學習筆記:avr端口操作的例子理解,將在本頁后面部分說明。 同理,下面部分為BCD口的操作。 #11,注釋,說明你可以使用下面的程序來實現初始化。 #13,程序的開始和結束。 #15,內部定義的宏,關閉所有中斷。 #16,調用端口初始化的程序。 #17,MCUCR = 0x00;電源管理及睡眠模式寄存器設置,這里設為0x00,為空閑模式,更多內容,請參看atmega16技術手冊。
下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1電子電路原理第七版PDF電子教材免費下載
  2. 0.00 MB  |  1491次下載  |  免費
  3. 2單片機典型實例介紹
  4. 18.19 MB  |  95次下載  |  1 積分
  5. 3S7-200PLC編程實例詳細資料
  6. 1.17 MB  |  27次下載  |  1 積分
  7. 4筆記本電腦主板的元件識別和講解說明
  8. 4.28 MB  |  18次下載  |  4 積分
  9. 5開關電源原理及各功能電路詳解
  10. 0.38 MB  |  11次下載  |  免費
  11. 6100W短波放大電路圖
  12. 0.05 MB  |  4次下載  |  3 積分
  13. 7基于單片機和 SG3525的程控開關電源設計
  14. 0.23 MB  |  4次下載  |  免費
  15. 8基于AT89C2051/4051單片機編程器的實驗
  16. 0.11 MB  |  4次下載  |  免費

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234313次下載  |  免費
  3. 2PADS 9.0 2009最新版 -下載
  4. 0.00 MB  |  66304次下載  |  免費
  5. 3protel99下載protel99軟件下載(中文版)
  6. 0.00 MB  |  51209次下載  |  免費
  7. 4LabView 8.0 專業版下載 (3CD完整版)
  8. 0.00 MB  |  51043次下載  |  免費
  9. 5555集成電路應用800例(新編版)
  10. 0.00 MB  |  33562次下載  |  免費
  11. 6接口電路圖大全
  12. 未知  |  30320次下載  |  免費
  13. 7Multisim 10下載Multisim 10 中文版
  14. 0.00 MB  |  28588次下載  |  免費
  15. 8開關電源設計實例指南
  16. 未知  |  21539次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935053次下載  |  免費
  3. 2protel99se軟件下載(可英文版轉中文版)
  4. 78.1 MB  |  537793次下載  |  免費
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420026次下載  |  免費
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234313次下載  |  免費
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費
  11. 6電路仿真軟件multisim 10.0免費下載
  12. 340992  |  191183次下載  |  免費
  13. 7十天學會AVR單片機與C語言視頻教程 下載
  14. 158M  |  183277次下載  |  免費
  15. 8proe5.0野火版下載(中文版免費下載)
  16. 未知  |  138039次下載  |  免費