English version


biprog - nejen ISP programátor

Záložky:   Úvod - Vlastnosti - Popis hardware - Popis software - Čítač - ToDo - Zpětná vazba - Download


Pohled na osazenou desku:
biprog.jpg (39kB)

Pohled ze strany spojů:
biprog-bottom.jpg (33kB)

Biprog v krabičce:
biprog-closed.jpg (9kB)

Úvod

Na webu je možné najít bezpočet různých stránek s konstrukcí ISP programátoru pro mikropočítače AVR firmy
Atmel. Některé programátory jsou vytvořeny na základě aplikační poznámky AVR910 a využívají tedy zejména
program AVRprog. Jiné naopak využívají pro své řízení STK500 plugin AVR Studia a jejich firmware je napsán
na základě aplikační poznámky AVR068.
Je zřejmé, že HW je v obou případech téměř shodný. To mě přivedlo k nápadu udělat další variantu hardware
a k němu napsat software, který by byl schopen pracovat s oběma ovládacími programy. Záměr se podařilo
naplnit a výsledkem mého snažení je zde popsaný programátor biprog.


Vlastnosti programátoru

Automatická změna režimu (AVRISP/AVR910) podle ovládacího programu
Poslední použitá polarita signálu RESET je uložena v paměti EEPROM a platí i po zapnutí
Poslední použitá frekvence SCK je uložena v paměti EEPROM a platí i po zapnutí
Podpora všech ISP mikroprocesorů Atmel včetně AT89S51/52, AT89S8252 a AT89S2051/4051
Jednostranná, snadno amatérsky zhotovitelná, deska plošných spojů
Nevyužité porty ATmega8 jsou vyvedeny na konektor a umožňují i jiné využití hardware

Popis hardware

Využití svítivých diod:

Deska zdroje a patic (Socket Board)

biprog+s_board.jpg (18kB)

USB varianta (HW 2.1)

Použití převodníku USB/RS232

Kompletní převodník USB/RS232 lze pořídit už za 350,- Kč. Já jsem vyzkoušel tento:
PC-USB2RS232.jpg (9kB)
Nainstaloval jsem ovladač z přiloženého CD a ve "Správci zařízení" (Windows XP) se objevil nový sériový port - Prolific
USB-to-Serial Comm Port (COM3). Konektor jsem propojil s biprogem, spustil AVR studio a vyzkoušel komunikaci.
Jak AVRprog, tak STK500 plugin fungují naprosto stejně, jako přes reálný sériový port. AVRDUDE jsem nezkoušel,
ale předpokládám, že musí fungovat také.

Podpora procesorů AT89LP4052 (HW 3.0)

HW 4.1 (přidáno 23. 11. 2007)

Pan Jan Švíka navrhl a realizoval nový HW 4.1 s integrovaným RS232 převodníkem a 6-ti pinovým ISP konektorem:
HW4_1.png (47kB)
Popis konstrukce od jeho autora je ve formátu pdf a můžete si ho stáhnout.


Podklady pro výrobu všech HW verzí biprogu najdete v sekci Download.

Popis software (firmware)

Veškerý software je psán v assembleru AVR.

Část AVRprog

AVRprog.gif (12kB)
Část, spolupracující s programem AVRprog, je převzata z konstrukce Programmer für AVR-Prog und avrdude.
Byly pouze respektovány rozdíly mezi AT90S2313 a ATmega8. Dále byly provedeny některé změny s cílem ušetřit
registry a zcela přepracována hlavní smyčka. Tady jsem zase opisoval z programu, který jsem našel
na Stránce Ondřeje Pužmana. Na rozdíl od části AVRISP zde není implementováno uložení polarity signálu RESET
do paměti EEPROM. Program je kompatibilní i s AVRDUDE (AVR910, AVR911, AVR109, butterfly).
Frekvence signálu SCK přímo zde měnit nejde, ale používá se tatáž frekvence, která byla naposledy nastavena při použití
AVRISP.

Část AVRISP

Tato část je zcela původní. Byla napsána na základě aplikační poznámky AVR068. Jako ovládací program se používá
plugin STK500 AVR Studia anebo AVRDUDE (avrispv2, stk500v2). Pro upgrade firmware je možné využít i "tlačítko"
Upgrade na záložce "Board" (od AVRstudia 4.14 na záložce "HW Settings"). Vyžaduje to však malou úpravu v adresáři
STK500. Nejdříve je třeba přejmenovat původní aplikaci s názvem "Upgrade.exe" na nějaké jiné jméno. Potom je třeba
do tohoto adresáře překopírovat program "AVRProg.exe" a přejmenovat ho na "Upgrade.exe". Při stisknutí "tlačítka"

Volba frekvence ISP

Board.png (15kB)
Na záložce "Board" (od AVRstudia 4.14 na záložce "Main") je možné vybrat si jednu ze šesti možných frekvencí.
Nabízené možnosti skutečně odpovídají reálným hodnotám. První tři jsou realizovány hardwarově pomocí SPI rozhraní,
ostatní jsou realizovány softwarově. Význam poslední možnosti (603 Hz) je zřejmě nulový, protože ovládací program v PC
vždy skončí uplynutím timeoutu. Zkoušel jsem tuto rychlost i s originálním firmware Atmelu (samozřejmě v jiném hardware,
než biprog) a choval se stejně. Uvažuji o možnosti místo nevyužitých 603 Hz implementovat např. frekvenci 1,8432 MHz.
Trochu mi vadí, že skutečnost by neodpovídala nabídce. Jakou frekvenci mi doporučíte zvolit pro náhradu nepoužitelných
603 Hz?

Podpora AT89S8252

8252-Program.gif (49kB)

Podpora AT89S2051/AT89S4051 a AT89LP2052/AT89LP4052

Od verze SW 1.2 (SW 1.3) je možné použít biprog i pro programování uvedených procesorů.
Vyzkoušeny mám pouze typy AT89S2051 a AT89LP4052 , ale neměly by snad být problémy ani s těmi ostatními.
Stejně jako u AT89S8252, je třeba příslušné xml soubory překopírovat do adresáře "Partdescriptionfiles".
Všechny tyto nově podporované mikropočítače umožňují uložit/přečíst uživatelskou signaturu o délce až 32 bytů.
Plugin STK500 pro tuto signaturu nemá bohužel žádnou vhodnou funkci. Využil jsem tedy skutečnosti, že tyto
mikročipy nemají paměť EEPROM. Čtení anebo zápis uživatelské signatury je realizován jako čtení/zápis EEPROM.

NOVÉ (16. 6. 2008) - Podpora procesoru AT89S8253

Od čísla verze 1.5 firmware podporuje biprog nástupce a náhradu procesoru AT89S8252, tedy procesor AT89S8253.
Je to první procesor (z těch, které podporuje biprog), který má jak EEPROM, tak možnost uložení uživatelské
signatury. Aby toho bylo možné využít, musel jsem pro tento procesor vytvořit dva definiční xml soubory.
Oba soubory je možné použít k programování flash paměti procesoru a zatímco soubor AT89S8253_biprog.xml
slouží také k programování EEPROM, tak soubor AT89S8253-User row array_biprog.xml musíte zvolit, pokud budete
chtít zapsat (nebo smazat) uživatelskou signaturu. Aby to fungovalo, musíte samozřejmě oba soubory zkopírovat
do adresáře "Partdescriptionfiles".

NOVÉ (16. 6. 2008) - Podpora AVR studia 4.14

Od verze 4.14 AVR studia má plugin STK500 nové GUI (grafické uživatelské rozhraní). Důsledkem toho je, že pro
správnou funkci programování "Pojistek" (záložka Fuses) a "Zámků" (záložka LockBits) obsahují definiční xml
soubory nový element "V2". Musel jsem tedy tento element doplnit také do všech již dříve vytvořených xml souborů
pro AT89Sx051, AT89LPx052 i AT89S8252 (pro ten se soubor nově jmenuje AT89S8252_biprog.xml). Definiční
xml soubor pro AT89S8253 jsem samozřejmě udělal hned v této rozšířené podobě.

Příklad jiné aplikace

CITAC.gif (11kB) Jako ovládací program je v tomto případě použita aplikace CITAC.exe pana Davida Matouška.

Co ještě chybí (ToDo)

V plánu mám následující úpravy či rozšíření:
1) SW - Manuální změna frekvence SPI pomocí tlačítka
2) SW - Indikace zvolené frekvence blikáním LED
Pokud by někdo měl nějaký nápad na jiné úpravy anebo by se chtěl ujmout navržených úprav sám, neváhejte mě
kontaktovat !

Zpětná vazba

Na tomto místě budu postupně uveřejňovat zajímavé odkazy, týkající se biprogu.
Pan Vladimír Anděl věnoval zkušenostem se stavbou biprogu na svém webu celou stránku.
Najdete na ní pěkný stručný návod a obrazec plošných spojů pro tiskárny s rozlišením 300 dpi.
Zjistil jsem, že o biprogu se píše i na několika čínských stránkách. Jedna z nich je třeba tady.
Na stránkách robotika.cz je mimo jiné také pěkný přehled programátorů pro procesory AVR.

Download

biprog je "cardware" pro nekomerční použití!
biprog is "Cardware" for non-commercial use!
Pokud ho budete používat, pošlete prosím pohlednici s vyobrazením vašeho města či kraje na následující adresu:
If you have found it useful, please send me a traditional postcard with your city/region view. My postal address is:
Lubos Ruckl
TELCOM servis Decin, s. r. o.
Folknarska 21
405 01 Decin 2
Czech republic


Pro download souborů použijte pravé tlačítko myši a v nabídce vyberte "Uložit cíl jako ...".

countlogo_nt.gif (4kB) ukazuje, že spolu s Vámi navštívilo
od 8. 12. 2005 tuto stránku teprve Counter uživatelů internetu ...

Úvodní stránka
Bootloader
Deska patic a zdroj pro "ISP" programování
Programátor AT-master
Programátor TSP-IC
Jakékoliv ohlasy a otázky pište prosím na adresu: lubos.ruckl@quick.cz
Aktualizováno 16. 6. 2008