AVR mega128開發板 聯系 楊迪 15336417867 0531-55508458 QQ:1347978253 http://www.easyele.cn 產品概述:AVR mega128開發板是AVRVi開發的基于Atmega128單片機的綜合學習開發系統,板載學習資源,集成JTAG仿真器和ISP下載功能,核心板可拆卸獨立使用,是你學習AVR單片機,參加各類電子設計競賽,快速搭建產品的不二選擇。AVR mega128開發板亦可以作為單片機培訓,高校實驗室,課程設計等的實驗器材。為了更好的支持客戶的學習和開發,此開發板板通訊接口升級為USB接口,方便計算機沒有串口的朋友,學習起來更加簡捷。貨號:EasyAVRM128SK-A 規格: 套 重量:300克 單價498/套。 參數特色: 1.采用核心板和主板分離的形式,在系統的學習之后,可以把核心板直接用于產品中,快速搭建系統。 2.開發板上集成了AVR JTAG ICE仿真器和AVR ISP編程器,超高性價比。 3.您只需要再擁有一臺計算機,而不需要購買仿真器和編程器就可以學習開發了。 4.信號調理電路,輸入0~10V,軌至軌信號調理。 5.系統資源適中,性價比高。 6.豐富的學習資源,完善的產品支持。 7.EasyAVR教給你從開發環境建立,軟件編譯,到下載,傳真,硬件設計等一系列電子工程師必備的技能,真正學以致用。 AVR mega128開發板板上資源: M128 所有引腳引出,可以利用杜邦頭很方便的進行接插擴展,標準2.54針距,可以直接插在萬用板上使用,便于進行實驗 m128 DB Core 自帶5V、3V3 雙路電源穩壓 m128 DB Core 外部晶振多種選擇,既可以使用板上已經焊接好的14.7456M的晶振,也可以自己根據自己的需求擴展,晶振的切換通過跳線實現m128 DB Core 帶有JTAG ISP 標準接口 m128 DB Core 自帶一路標準RS232-TTL轉換電路,方便實現串口通信 AVR mega128 開發板底板:板載JTAG 仿真器 板載STK500 下載內核 2路獨立可調的信號調理電路,可控增益G=0.1-10 2路RS232 串行接口 1路RS485 接口 8 路LED 顯示 4 位動態7 段數碼管,利用74HC595進行驅動 4 位獨立按鍵 板載IIC 總線PCF8563 實時鐘芯片 板載IIC 總線EEPROM AT24c01 1 路有源蜂鳴器 1 路18B20 溫度傳感器接口,支持單總線器件。(12820可選:10元每個) 1602LCD 接口(送1602液晶) 12232、12864 LCD 接口(LCD12864可選:80元每個) 想找一份好工作嗎? 你想成為一名電子設計工程師嗎? 你對電子設計有濃厚興趣,而沒有工具嗎? 看了很久的程序方面的書籍,卻沒有實踐的機會嗎? 需要開發產品,想快速入門? 想參加電子設計大賽,機器人大賽嗎? 這個性價比高的專業工具是你的不二選擇,它不僅僅是一個AVR mega128 開發板,他還是一個強大的開發工具,通過它進行學習后,對電子產品的設計有進一步的認知,建立起學習ARM,DSP,FPGA的良好基礎。AVR mega128 開發板集成了AVR學習板,AVR開發板,AVR編程器,AVR仿真器,AVR核心板的功能,并且可以分開獨立使用。 銷售清單: 1、調試好的AVR mega128開發板一塊(板載JTAG ISP 二合一,已經寫入自檢程序) 2、ATmega128核心板一塊 3、USB供電線一條 4、標準串口(RS232)通訊線纜一條 5、資料光盤一張 6、使用說明書(實驗講義)一本 7、保修卡即訂單清單一份 8、贈送LCD1602液晶一塊
上傳時間: 2013-11-10
上傳用戶:zm7516678
ICCAVR簡介ICCAVR 是一種使用ANSI 標準C 語言來開發微控制器(MCU)程序的一個工具,它是一個綜合了編輯器和工程管理器的集成工作環境(IDE)。源文件全部被組織到工程之中,文件的編輯和工程(project)的構筑也在IDE 的環境中完成。編譯錯誤在狀態窗口中顯示,用鼠標單擊編譯錯誤時,光標會自動跳轉到出錯行。這個工程管理器還能直接產生INTEL HEX格式的燒寫文件和可以在AVR Studio 中調試的COFF 格式的調試文件。這里特別要提一下ICCAVR 中的應用構筑向導,可以在Tools 欄中選擇“ApplicationBiulder”或者直接點擊快捷工具欄中的“Application Biulder”圖標,就可以打開應用構筑向導對話框,可以根據需要設定芯片種類,各個端口初始值,是否使用定時器,中斷,UART等,選好以后單擊“OK”就可以得到所需的硬件初始化程序段,非常可靠而且方便。圖1給出了初始化UART 的一個例子:下面介紹一下創建并編譯一個工程文件的簡要步驟:1.新建一個源文件從file 菜單中選擇new,創建一個新文件,在改文件中輸入源程序并進行編輯和修改,然后存盤,在存盤時必須指定文件類型,如命名為:try.c 。寫一個新文件的步驟:首先用Biulder 初始化需要用到的硬件資源,生成初始化程序,然后再寫需要的代碼實現所要的功能。2.新建一個project從projrct 菜單中選擇new 命令,IDE 會彈出一個對話框,在對話框中用戶可以指定工程存放的文件夾和工程的名稱。在建立一個新工程之后,在工程管理器的窗口會出現三個子目錄,Files, Headers, Documents,這時就可以將要編譯的文件添加到project 中了。3.把文件添加到工程中可以在project-files 里單擊右鍵,選擇需要添加的文件;也可以在編輯窗口中單擊右鍵選擇彈出窗口的“Add To Project”命令。4.編譯源文件在編譯之前特別要注意在Project Options 中選擇與硬件相應的芯片。如本次實驗就選擇ATMEGA8515,如圖2 所示。在project 中選擇make project,也可以直接單擊快捷鍵F9,這時要是有錯則會彈出出錯信息,修改調試正確以后單擊快捷鍵ISP 就可以燒寫到硬件中去了。
標簽: ICCAVR
上傳時間: 2013-10-25
上傳用戶:569342831
AVR 單片機和C語言的集成開發環境 ICCAVR編譯器簡介 ICCAVR是一個綜合了編輯器和工程管理器的集成開發環境(IDE),是一個純32位的程序,可在Windows 95/98/ME/NT/2000/XP下運行。Ø 源文件全部被組織在工程之中,文件的編輯和工程的構筑也在IDE的環境中完成。編譯錯誤在狀態窗口中顯示,用鼠標單擊編譯錯誤時,光標會自動跳轉到編輯窗口中引起錯誤的那一行。同時這個工程管理器還能直接產生INTEL HEX格式的燒錄文件和用于AVR Studio調試的COFF格式的文件。Ø ICCAVR是一個32位的程序,支持長文件名。Ø ICCAVR提供了全部的庫源代碼及一些簡單的應用實例供初學者參考,特別是提供庫源代碼,對于用戶理解庫函數的參數及返回值等是非常有益的,并且用戶能夠根據庫源代碼對ICCAVR提供的庫函數進行剪裁和擴充
上傳時間: 2013-10-30
上傳用戶:pkkkkp
異常向量表重映射 向量表是異常產生時內核獲取異常處理函數入口地址的一塊連續內存,每一個異常都在向量表固定的偏移地址,且偏移地址都是以字對齊的,通過該偏移地址內核就可以獲取異常處理函數的入口指針,從而跳轉到異常處理函數入口,執行異常處理函數。
上傳時間: 2013-11-25
上傳用戶:rnsfing
HT49 MCU中看門狗計時器的設定 在單片機應用中,為了預防程序進入死循環,或跳到不希望的地方,采用看門狗計時器來防止。在程序中要是一直不清除看門狗計時器,一定時間后,看門狗計時器就會溢出,系統重新復位。以HT49R50A-1 為例,本文介紹了HT49 系列單片機看門狗計時器的用法。
上傳時間: 2014-11-26
上傳用戶:gokk
C51原理及相關基礎入門知識 第一章:C51 流程控制語句一、分類條件語句、循環語句和開關語句。下面將對這些語句作詳細介紹。(1) 條件語句條件語句的一般形式為:if(表達式)語句 1;else語句 2;上述結構表示: 如果表達式的值為非0(TURE)即真, 則執行語句1, 執行完語句1 從語句2 后開始繼續向下執行; 如果表達式的值為 0(FALSE)即假, 則跳過語句1 而執行語句2。所謂表達式是指關系表達式和邏輯表達式的結合式。注意:1. 條件執行語句中"else 語句2;"部分是選擇項, 可以缺省, 此時條件語句變成:if(表達式) 語句1;表示若表達式的值為非 0 則執行語句1 , 否則跳過語句1 繼續執行。2. 如果語句1 或語句2 有多于一條語句要執行時, 必須使用"{"和"}" 把這些語句包括在其中, 此時條件語句形式為:if(表達式){語句體 1;}else{語句體 2;}3. 條件語句可以嵌套, 這種情況經常碰到, 但條件嵌套語句容易出錯, 其原因主要是不知道哪個if 對應哪個else。例如:if(x>20||x<-10)if(y<=100&&y>x)printf("Good");elseprintf("Bad");對于上述情況,規定: else 語句與最近的一個if 語句匹配, 上例中的 else 與 if(y<=100&&y>x) 相匹配。為了使 else 與if(x>20||x<-10) 相匹配, 必須用花括號。如下所示:if(x>20||x<-10){if(y<=100&&y>x)printf("Good");}
上傳時間: 2013-10-24
上傳用戶:Sophie
LPC1700系列ARM是基于第二代ARM Cortex-M3內核的微控制器,是為嵌入式系統應用而設計的高性能、低功耗的32位微處理器,適用于儀器儀表、工業通訊、電機控制、燈光控制、報警系統等領域。其操作頻率高達100MHz,采用3級流水線和哈佛結構,帶獨立的本地指令和數據總線以及用于外設的低性能的第三條總線,使得代碼執行速度高達1.25MIPS/MHz,并包含1個支持隨機跳轉的內部預取指單元。
上傳時間: 2013-10-27
上傳用戶:wyc199288
at91rm9200啟動過程教程 系統上電,檢測BMS,選擇系統的啟動方式,如果BMS為高電平,則系統從片內ROM啟動。AT91RM9200的ROM上電后被映射到了0x0和0x100000處,在這兩個地址處都可以訪問到ROM。由于9200的ROM中固化了一個BOOTLOAER程序。所以PC從0X0處開始執行這個BOOTLOAER(準確的說應該是一級BOOTLOADER)。這個BOOTLOER依次完成以下步驟: 1、PLL SETUP,設置PLLB產生48M時鐘頻率提供給USB DEVICE。同時DEBUG USART也被初始化為48M的時鐘頻率; 2、相應模式下的堆棧設置; 3、檢測主時鐘源(Main oscillator); 4、中斷控制器(AIC)的設置; 5、C 變量的初始化; 6、跳到主函數。 完成以上步驟后,我們可以認為BOOT過程結束,接下來的就是LOADER的過程,或者也可以認為是裝載二級BOOTLOER。AT91RM9200按照DATAFLASH、EEPROM、連接在外部總線上的8位并行FLASH的順序依次來找合法的BOOT程序。所謂合法的指的是在這些存儲設備的開始地址處連續的存放的32個字節,也就是8條指令必須是跳轉指令或者裝載PC的指令,其實這樣規定就是把這8條指令當作是異常向量表來處理。必須注意的是第6條指令要包含將要裝載的映像的大小。關于如何計算和寫這條指令可以參考用戶手冊。一旦合法的映像找到之后,則BOOT程序會把找到的映像搬到SRAM中去,所以映像的大小是非常有限的,不能超過16K-3K的大小。當BOOT程序完成了把合法的映像搬到SRAM的任務以后,接下來就進行存儲器的REMAP,經過REMAP之后,SRAM從映設前的0X200000地址處被映設到了0X0地址并且程序從0X0處開始執行。而ROM這時只能在0X100000這個地址處看到了。至此9200就算完成了一種形式的啟動過程。如果BOOT程序在以上所列的幾種存儲設備中找到合法的映像,則自動初始化DEBUG USART口和USB DEVICE口以準備從外部載入映像。對DEBUG口的初始化包括設置參數115200 8 N 1以及運行XMODEM協議。對USB DEVICE進行初始化以及運行DFU協議。現在用戶可以從外部(假定為PC平臺)載入你的映像了。在PC平臺下,以WIN2000為例,你可以用超級終端來完成這個功能,但是還是要注意你的映像的大小不能超過13K。一旦正確從外部裝載了映像,接下來的過程就是和前面一樣重映設然后執行映像了。我們上面講了BMS為高電平,AT91RM9200選擇從片內的ROM啟動的一個過程。如果BMS為低電平,則AT91RM9200會從片外的FLASH啟動,這時片外的FLASH的起始地址就是0X0了,接下來的過程和片內啟動的過程是一樣的,只不過這時就需要自己寫啟動代碼了,至于怎么寫,大致的內容和ROM的BOOT差不多,不同的硬件設計可能有不一樣的地方,但基本的都是一樣的。由于片外FLASH可以設計的大,所以這里編寫的BOOTLOADER可以一步到位,也就是說不用像片內啟動可能需要BOOT好幾級了,目前AT91RM9200上使用較多的bootloer是u-boot,這是一個開放源代碼的軟件,用戶可以自由下載并根據自己的應用配置。總的說來,筆者以為AT91RM9200的啟動過程比較簡單,ATMEL的服務也不錯,不但提供了片內啟動的功能,還提供了UBOOT可供下載。筆者寫了一個BOOTLODER從片外的FLASHA啟動,效果還可以。 uboot結構與使用uboot是一個龐大的公開源碼的軟件。他支持一些系列的arm體系,包含常見的外設的驅動,是一個功能強大的板極支持包。其代碼可以 http://sourceforge.net/projects/u-boot下載 在9200上,為了啟動uboot,還有兩個boot軟件包,分別是loader和boot。分別完成從sram和flash中的一級boot。其源碼可以從atmel的官方網站下載。 我們知道,當9200系統上電后,如果bms為高電平,則系統從片內rom啟動,這時rom中固化的boot程序初始化了debug口并向其發送'c',這時我們打開超級終端會看到ccccc...。這說明系統已經啟動,同時xmodem協議已經啟動,用戶可以通過超級終端下載用戶的bootloader。作為第一步,我們下載loader.bin.loader.bin將被下載到片內的sram中。這個loder完成的功能主要是初始化時鐘,sdram和xmodem協議,為下載和啟動uboot做準備。當下載了loader.bin后,超級終端會繼續打印:ccccc....。這時我們就可以下在uboot了。uboot將被下載到sdram中的一個地址后并把pc指針調到此處開始執行uboot。接著我們就可以在終端上看到uboot的shell啟動了,提示符uboot>,用戶可以uboot>help 看到命令列表和大概的功能。uboot的命令包含了對內存、flash、網絡、系統啟動等一些命令。 如果系統上電時bms為低電平,則系統從片外的flash啟動。為了從片外的flash啟動uboot,我們必須把boot.bin放到0x0地址出,使得從flash啟動后首先執行boot.bin,而要少些boot.bin,就要先完成上面我們講的那些步驟,首先開始從片內rom啟動uboot。然后再利用uboot的功能完成把boot.bin和uboot.gz燒寫到flash中的目的,假如我們已經啟動了uboot,可以這樣操作: uboot>protect off all uboot>erase all uboot>loadb 20000000 uboot>cp.b 20000000 10000000 5fff uboot>loadb 21000000 uboot>cp.b 210000000 10010000 ffff 然后系統復位,就可以看到系統先啟動boot,然后解壓縮uboot.gz,然后啟動uboot。注意,這里uboot必須壓縮成.gz文件,否則會出錯。 怎么編譯這三個源碼包呢,首先要建立一個arm的交叉編譯環境,關于如何建立,此處不予說明。建立好了以后,分別解壓源碼包,然后修改Makefile中的編譯器項目,正確填寫你的編譯器的所在路徑。 對loader和boot,直接make。對uboot,第一步:make_at91rm9200dk,第二步:make。這樣就會在當前目錄下分別生成*.bin文件,對于uboot.bin,我們還要壓縮成.gz文件。 也許有的人對loader和boot搞不清楚為什么要兩個,有什么區別嗎?首先有區別,boot主要完成從flash中啟動uboot的功能,他要對uboot的壓縮文件進行解壓,除此之外,他和loader并無大的區別,你可以把boot理解為在loader的基礎上加入了解壓縮.gz的功能而已。所以這兩個并無多大的本質不同,只是他們的使命不同而已。 特別說名的是這三個軟件包都是開放源碼的,所以用戶可以根據自己的系統的情況修改和配置以及裁減,打造屬于自己系統的bootloder。
上傳時間: 2013-10-27
上傳用戶:wsf950131
LPC1700系列ARM是基于第二代ARM Cortex-M3內核的微控制器,是為嵌入式系統應用而設計的高性能、低功耗的32位微處理器,適用于儀器儀表、工業通訊、電機控制、燈光控制、報警系統等領域。其操作頻率高達100MHz,采用3級流水線和哈佛結構,帶獨立的本地指令和數據總線以及用于外設的低性能的第三條總線,使得代碼執行速度高達1.25MIPS/MHz,并包含1個支持隨機跳轉的內部預取指單元。
上傳時間: 2013-11-17
上傳用戶:lbbyxmraon
ARM指令集(2) 1.跳轉指令 在ARM中有兩種方式可以實現程序的跳轉:一種是刀‘轉指令;另一種是直接向PC寄存器(R15)中寫入目標地址值。 通過直接向PC寄存器中寫入目標地址值可以實現在46B地址空間中任意跳轉,這種跳轉指令又稱為長跳轉。如果在長跳轉指令之前使用MOV LR,PC等指令,則可以保存將來返回的地址值,這樣就實現了在46B地址空間中的子程序調用。 在ARM版本5及以上的體系中,實現了ARM指令集和Thumb指令集的混合使用。指令使用目標地址值的bit[0]來確定目標程序的類型。bit[0]的值為1時,目標程序為Thumb指令;bit[0]值為0時,目標程序為ARM指令。 在ARM版本5以前的體系中,傳送到PC寄存器中的目標地址值的低兩位bits[1∶0]被忽略,跳轉指令只能在ARM指令集中執行,即程序不能從ARM狀態切換到Thumb狀態。非T系列ARM版本5體系不含Thumb指令,當程序試圖切換到Thumb狀態時,將產生未定義指令異常中斷。 ARM跳轉指令可以從當前指令向前或向后的32MB地址空間跳轉。這類跳轉指令有以下4種。
上傳時間: 2013-11-20
上傳用戶:妄想演繹師