步驟1:功能和零件
*來自usbtiny isp的編程邏輯,成熟的avr-dude支持
*小占用空間
*最少的組件
*為目標設備供電
請注意,目標mcus的io線不受保護。您可以根據框架http://www.v-usb上的工作,在SCK和MOSI上添加1k-2k電阻,以防止可能的錯誤連接
引用
.obdev.at/vusb/
usbtiny isp http://www.xs4all.nl/~dicks/avr/usbtiny/
零件清單
* attiny45/85(85 )更容易實現)
* 3.6v齊納二極管(1n747,BZX79,。.避免使用1W類型)
* 68ohm電阻x 2
* 1.5K電阻
*迷你面包板170結點
* usb電纜(美元商店的usb打印機電纜很好)
* 1k/2k電阻,用于io線路保護(可選)
需要工具
*一個工作的AVR編程器(是的,這是一個陷阱22,我們需要一個來實現)
*正常工作的avr編程環境
步驟2:面包板布局,原理圖和構造
構造
*遵循面包板布局,可能沒有組件,3個電阻器,2個二極管,1個蓋帽和一個8針的單片機。
*得到一個美元lar shop usb打印機電纜切斷了打印機的一端,將有4條裸露的電線,固定并使其成為4針公接頭,我們將用它來連接面包板。請查閱原理圖以了解布局和引腳分配(J1)。
*注意二極管的極性。
構建并刷新項目
該項目是內置有帶有avr-gcc工具鏈的linux ubuntu透明框。假設您已經有這樣的環境,或者您可以從互聯網上找到如何進行設置的方法。源代碼是從繼承許可的gnu gpl v2。
源代碼遵循v-usb推薦的約定,您可以下載源軟件包vusbtiny.tgz并解壓縮到項目目錄中。在您的源目錄中,有一個main.c,這是我修改過的usbtiny程序員的版本。還有一個usbdrv子目錄,其中包含v-usb層。在構建時,請遵守上述兩個項目的許可條款。我關于程序員邏輯的資料是基于Dick Streefland版本而不是ladyada版本(盡管它們幾乎相同)。
對于那些沒有構建太鏈的人,可以使用以下代碼二進制
單擊下載vusbtiny.hex
并使用avrdude來刷新固件
avrdude -c usbtiny -p t45 -e -V -U flash:w :usbtiny.hex
(如果您的設備是tiny85,請在此處下載-p t45 w/-p t85)
源文件
點擊下載vusbtiny.tgz
將源程序包保存到工作目錄中
tar -zxvf vusbtiny.tgz
*做cd vsubtiny,更改為vusbtiny工作目錄
*根據要使用的芯片為目標設備調整makefile。即PROGRAMMER_MCU = t45或t85
*做make
*附加您喜歡的ISP程序員
*修改makefile并在需要時更改您的avrdude參數。當時的股票是USBTiny程序員。即AVRDUDE_PROGRAMMERID = usbtiny
*通過make install刷新固件
刷新固件后,我們需要正確設置保險絲,在此項目中將引腳1重置為io
* v-usb層要求用于USB定時的ppl時鐘
*禁用復位引腳,因為我們需要將其用作io
avrdude -c usbtiny -p t45 -V -U lfuse:w :0xe1:m -U hfuse:w:0x5d:m -U efuse:w:0xff:m
此設置禁用了通過5V SPI的進一步編程,因為我們需要IO的RESET引腳(pin1)。您將需要聯系HVSP程序員來恢復保險絲。
步驟3:用法和應用
直接在面包板上閃爍
如果您正在使用vusbtiny閃爍8針AVR設備,則只需將目標設備按在編程器頂部即可設備。編程器的設計使編程引腳與目標引腳匹配。雖然有一個技巧,但是您需要隔離編程器mcu上的引腳2和3,因為它們是連接到PC的USB D +和D-引腳。我使用透明膠帶切割以實現此目的,您可以在照片上看到它。下面顯示的是在tiny45上的tiny13v“騎乘”,準備接收固件。
ISP通過跳線閃爍
以通過ISP編程目標電路(系統內編程),則需要ISP電纜。在這里,我沒有使用標準的2x3或2x5排針。取而代之的是,我使用的1x6跳線對面包板更友好,您可以通過將它們映射到J2來制作2x3或2x5引腳接頭,如面包板布局和示意圖所示。下圖顯示了一個tiny2313準備通過ISP進行刷新。
故障排除
*無法刷新固件?檢查您的原始程序員,可能需要通過avrdude中的-B標志來調整時間。嘗試讀取芯片1st,可能是保險絲壞了,可能是您的芯片需要外部時鐘信號。您可能需要將芯片重新設置為默認的第1個。
*如果使用不同的io引腳,檢查代碼和連接,請檢查連接
**您可以用500mw,400mw類型的齊納二極管替換
*您可以嘗試將R3值減小到1.2K或更小
*您更有可能遇到avrdude的計時問題,請嘗試-v標志avrdude,使用較短的USB電纜都有幫助
責任編輯:wv
-
編程器
+關注
關注
9文章
395瀏覽量
42304
發布評論請先 登錄
相關推薦
評論