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

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

3天內(nèi)不再提示

怎樣執(zhí)行Atmel Studio中的編碼與將代碼部署到AVR微控制器之間的全面平滑集成

454398 ? 來源:網(wǎng)絡整理 ? 作者:網(wǎng)絡整理 ? 2019-11-18 09:08 ? 次閱讀

步驟1:準備Arduino

怎樣執(zhí)行Atmel Studio中的編碼與將代碼部署到AVR微控制器之間的全面平滑集成

由于我們將Arduino Uno用作ISP程序員,因此我們首先必須上傳一個草圖,該草圖將負責通過串行端口(USART)接收數(shù)據(jù),并且通過它們的SPI端口將其正確輸出到目標微控制器。

因此,打開Arduino IDE,轉(zhuǎn)到File》 Examples》 ArduinoISP。

打開草圖后,在在文件頂部,對引腳名稱和連接進行了一些注釋。下一步將解決這些問題,但請確保它們與本教程匹配。

連接您的arduino并單擊“上傳”按鈕。

第2步:將ArduinoISP編程器連接到AVR

對于第一步,您將需要以下材料:

》色的跳線(是的,很重要);

01紅色LED

01黃色LED

02個不同顏色的LED,您可以選擇(我們使用藍色和白色)

01 10uF電解電容

04 200 ohm 1/8W電阻

這些其他材料取決于項目。在我們的情況下,我們將尋求一個使用8 MHz晶振和具有相同值的內(nèi)部時鐘的解決方案。因此:

01 8 MHz晶體

02 20 pF陶瓷電容器

根據(jù)圖片將所有組件連接在一起。

請注意,對于每個接收到晶體引線之一的路徑,都有一個陶瓷電容器將該路徑連接到地面路徑。

LED的陽極由他們的線索略有彎曲。注意白色LED,該白色LED將被加載的代碼閃爍。由于軟件的限制,不允許組件翻轉(zhuǎn),導致LED交叉。

電解電容器是極化的,因此請確保將較長的引線連接到RESET,而將較小的引線連接到RESET。連接到GND。

一個很好的建議是使跳線的顏色代碼與圖片中所示的顏色相同。這有助于進一步的硬件調(diào)試。

步驟3:集成Atmel Studio

將ArduinoISP草圖加載到Arduino板上的Arduino IDE,這意味著您已經(jīng)在計算機中安裝了AVRDUDE。

AVRDUDE是一個命令行應用程序,可在計算機端進行固件加載過程。長話短說,AVRDUDE讀取由編譯和轉(zhuǎn)換過程生成的.hex文件,并將其排隊,以便通過串行端口正確輸出。從那里,您的Uno板上的USB串行轉(zhuǎn)換器(USB端口旁邊的黑色正方形)從USB線讀取它,將其發(fā)送到Arduino Uno板上的ATMEGA,最后通過SPI將其輸出到目標微控制器。/p》

Atmel Studio最酷的功能之一就是對外部工具(如AVRDUDE本身)的支持。基本上,Atmel Studio對此開放了足夠的定制空間,只需按一下按鈕,您就可以執(zhí)行完整的命令行程序調(diào)用,并將固件部署到目標微控制器。

足夠了,

打開Atmel Studio 6。

轉(zhuǎn)到“工具”》“外部工具”

在字段中填充,如圖所示。在我的情況下,“命令”字段將使用您機器中的位置avrdude填充:C:\ Program Files(x86)\ Arduino \ hardware \ tools \ avr \ bin \ avrdude.exe

在“參數(shù)”字段中,填充以下行:

-U lfuse:w:0xe6:m -U hfuse:w:0xd9:m -e -v -patmega328p -carduino -PCOM2 -b19200 -D -Uflash:w:“ $(ProjectDir)Debug \ $(ItemFileName).hex”:i -C“ C:\ Program Files(x86)\ Arduino \ hardware \ tools \ avr \ etc \ avrdude.conf”

這些是AVRDUDE解釋并轉(zhuǎn)換為寫操作的固件部署參數(shù)或信息。

在這一行中,有三點需要更改:

您正在使用Arduino Uno的COM端口。為了檢查,請去設備管理器》 COM&LPT端口,并且您應該看到列出的Arduino。

找到avrdude.conf的文件路徑。一個簡單的Windows搜索應該可以幫助您解決這個問題。

保險絲的位值,取決于您計劃項目配置的方式。只需更改-U lfuse:w:0xe6:m中間的十六進制值和要配置的保險絲名稱即可。

請注意帶有.hex的行部分在中間。這是AVRDUDE將在其中查找文件的參數(shù)中的引用。 $(ProjectDir)和$(ItemFileName)是bash腳本變量,一旦調(diào)用&Deploy動作,就會根據(jù)您的項目名稱和位置適當替換。

其他參數(shù)只是AVRDUDE關于目標的準則微控制器以及在何處可以找到固件文件和AVRDUDE配置文件。

基本上,這一行參數(shù)使AVRDUDE執(zhí)行4個寫操作:

第一個寫低熔絲AVR

第二,高保險絲

第三項操作是完全擦除閃存,以避免寫錯誤

,第四項是使用固件寫入完整的閃存

有關參數(shù)的完整列表,請訪問:https://asensar.com/blog/2013/programming-arduino-using-avrdude/

步驟4:編譯并部署它!

所有配置一次完成,就該進行測試了!

將一個簡單的LED閃爍固件寫入目標微控制器,如

完成后,轉(zhuǎn)到“工具”》“部署”。

您應該在輸出窗口的圖片上看到類似屏幕的內(nèi)容。這是AVRDUDE的詳細輸出,告訴您它執(zhí)行了什么。

首先顯示一些部署信息,然后顯示一些內(nèi)存統(tǒng)計信息,這些信息對于大型項目確實非常有用,最后輸出寫操作摘要。在這里,您可以觀察到前面提到的4個寫入中的3個。這兩個保險絲加上閃光燈。

完成后,您已經(jīng)可以通過閃爍的LED看到代碼在工作!恭喜!

此配置對于您隨后的所有項目都是永久的,因此不必介意再次進行所有操作。您可能會在項目之間更改的一件事是必須在上一步的arguments字段上重新配置保險絲配置。

有關最佳保險絲計算器,請訪問:http://www。 engbedded.com/fusecalc/

故障排除:

您可能會遇到AVRDUDE找不到或打開COM端口的情況。如果發(fā)生這種情況,請確保您沒有打開Arduino IDE。這將導致AVRDUDE在連接到Arduino IDE時嘗試聲明COM端口。為解決此問題,請關閉Arduino IDE,將開發(fā)板與計算機斷開連接,關閉Atmel Studio,重新連接開發(fā)板,然后重新啟動Atmel Studio 6。

責任編輯:wv

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • Arduino
    +關注

    關注

    187

    文章

    6453

    瀏覽量

    185929
  • AVR微控制器
    +關注

    關注

    0

    文章

    11

    瀏覽量

    6795
收藏 人收藏

    評論

    相關推薦

    微控制器內(nèi)部的存儲有哪些

    微控制器(MCU)內(nèi)部的存儲微控制器系統(tǒng)的重要組成部分,它負責存儲程序代碼、數(shù)據(jù)以及控制邏輯等信息。這些存儲
    的頭像 發(fā)表于 08-22 10:41 ?460次閱讀

    微控制器的結(jié)構(gòu)和應用

    微控制器(Microcontroller Unit,簡稱MCU)作為嵌入式系統(tǒng)的核心部件,其原理和應用在現(xiàn)代科技發(fā)展占據(jù)了舉足輕重的地位。本文將從微控制器的原理、基本結(jié)構(gòu)、工作原理、性能特點以及廣泛的應用領域等方面進行詳細闡述
    的頭像 發(fā)表于 08-22 10:40 ?503次閱讀

    如何CYKIT-028 TFT模塊與Raspberry Pi和ESP32微控制器結(jié)合使用?

    我目前正在探索如何 CYKIT-028 TFT 模塊與 Raspberry Pi 和 ESP32 微控制器結(jié)合使用。 不過,在選擇集成開發(fā)環(huán)境(IDE)和使用 PSOC Creator 的必要性
    發(fā)表于 05-21 07:36

    8位Atmel 微控制器ATMEGA325V-8AU技術手冊

    電子發(fā)燒友網(wǎng)站提供《8位Atmel 微控制器ATMEGA325V-8AU技術手冊.pdf》資料免費下載
    發(fā)表于 05-06 14:59 ?0次下載

    深入探討微控制器的內(nèi)部結(jié)構(gòu)和工作機制

    中央處理單元(CPU): CPU是微控制器的核心部分,負責解析和執(zhí)行程序的指令。它的性能直接影響整個微控制器的運行效率。
    發(fā)表于 04-10 14:41 ?687次閱讀
    深入探討<b class='flag-5'>微控制器</b>的內(nèi)部結(jié)構(gòu)和工作機制

    針對 C2000? 微控制器集成微控制器 (MCU) 電源解決方案數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《針對 C2000? 微控制器集成微控制器 (MCU) 電源解決方案數(shù)據(jù)表.pdf》資料免費下載
    發(fā)表于 03-04 14:12 ?0次下載
    針對 C2000? <b class='flag-5'>微控制器</b>的<b class='flag-5'>集成</b><b class='flag-5'>微控制器</b> (MCU) 電源解決方案數(shù)據(jù)表

    Wdg_17_Scu與BSW集成,如果沒有調(diào)試,微控制器停止運行的原因?

    時,如果沒有調(diào)試,微控制器停止運行。 移除 JTAG 后,微控制器停止并無法重新啟動。 相關詳情: 我正在使用帶有 Trace32 Powerview 的勞特巴赫調(diào)試
    發(fā)表于 01-23 08:27

    繼電器光耦在微控制器的應用

    繼電器是電子系統(tǒng)的重要組件,用作使用低功率信號控制高功率電路的開關。繼電器與微控制器集成在各種應用變得越來越普遍。該領域的一個重大進步
    的頭像 發(fā)表于 01-05 16:09 ?336次閱讀
    繼電器光耦在<b class='flag-5'>微控制器</b><b class='flag-5'>中</b>的應用

    Microchip AVR DD系列微控制器產(chǎn)品特性

    的功能集,包括多電壓輸入/輸出(MVIO),非常·適合復雜應用,或在具有多個功率域的復雜設計作為配套微控制器(MCU)使用。
    的頭像 發(fā)表于 12-28 09:38 ?514次閱讀

    微控制器基礎】——從歷史切入,了解微控制器的五個要素(上)

    微控制器基礎】——從歷史切入,了解微控制器的五個要素(上)
    的頭像 發(fā)表于 12-07 10:55 ?419次閱讀
    【<b class='flag-5'>微控制器</b>基礎】——從歷史切入,了解<b class='flag-5'>微控制器</b>的五個要素(上)

    微控制器基礎】—— 從歷史切入,了解微控制器的五個要素(下)

    微控制器基礎】—— 從歷史切入,了解微控制器的五個要素(下)
    的頭像 發(fā)表于 12-06 17:23 ?439次閱讀
    【<b class='flag-5'>微控制器</b>基礎】—— 從歷史切入,了解<b class='flag-5'>微控制器</b>的五個要素(下)

    面向汽車高端微控制器的虛擬化

    面向汽車高端微控制器的虛擬化 固結(jié)技術 低層薄SW層 管理程序(或VMM)作為主要組件 SW集成虛擬機(VM)
    的頭像 發(fā)表于 12-01 10:55 ?585次閱讀
    面向汽車高端<b class='flag-5'>微控制器</b>的虛擬化

    微控制器基礎】——電路的“數(shù)字與邏輯”(上)

    微控制器基礎】——電路的“數(shù)字與邏輯”(上)
    的頭像 發(fā)表于 10-26 16:34 ?416次閱讀
    【<b class='flag-5'>微控制器</b>基礎】——電路<b class='flag-5'>中</b>的“數(shù)字與邏輯”(上)

    MCU微控制器是什么?微控制器和微處理之間的區(qū)別

    微控制器(通常簡稱為MCU或MC)是指完全獨立于單個芯片的非常小的微型計算機。歐時電子指南詳細探討什么是微控制器以及它與微處理等相關產(chǎn)品之間
    的頭像 發(fā)表于 10-26 15:01 ?1363次閱讀

    如何降低微控制器系統(tǒng)的噪聲影響(2)

    如何降低微控制器系統(tǒng)的噪聲影響(2)
    的頭像 發(fā)表于 10-25 17:41 ?422次閱讀
    如何降低<b class='flag-5'>微控制器</b>系統(tǒng)<b class='flag-5'>中</b>的噪聲影響(2)