ATMEGA8L - programuje to nekdo?

Diskuze a poradna o programátorech a programování různých obvodů

Moderátor: Moderátoři

Zpráva
Autor
Uživatelský avatar
Atlan
Příspěvky: 4514
Registrován: 10 kvě 2004, 00:00
Bydliště: Košice

#16 Příspěvek od Atlan »

ano je to skoro to iste... hladj programator na PIC napr JDM
Stan3

#17 Příspěvek od Stan3 »

http://www.cmail.cz/doveda/konstrukce/pgm_pic/index.htm

Tenhle programátor je také docela dobrý. Upravoval jsem si to pro sériový port a funguje perfektně(zatím jsem zkoušel 16F84A, a 12F508/509). Jako software používám WinPic800.
Alexxx

#18 Příspěvek od Alexxx »

Koukal jsem na ty programátory a pro mě by to bylo na dlouhé večery stavět. Navíc bych se musel opět učit programovat v tom a asi bych se nakonec nedostal k tomu čemu bych rád. Nenaprogramoval by nekdo 1ks PIC10F200? Bude prlnic uplne jednoduchou funkci.

Popis:
1) Po pripojeni baterie se spusti blikani na LED (200ms blik/1000ms cykl)2) Pri stisku mikrotlacitka zacne PIC odpocitavat cca 10 minut, pri jejim dokonceni se spusti blikani jako v bodu 1)
Pozn. Pri odpocitavani je tlacitko nefunkcni. PIC resetuje citac na 10 minut pouze kdyz blikaji LED (aby nebylo mozne oddalovat blikani)

Tot vse!
Naprogramoval by to nekdo pro me a poslal dobirkou?

Diky moc Alex
Uživatelský avatar
ceeert
Příspěvky: 105
Registrován: 05 dub 2009, 00:00
Bydliště: Plzen

#19 Příspěvek od ceeert »

Ja bych se hlásil,kdybys to nechtěl hned,ale tak za cca 2-3 týdny. Ted nemam moc času na zbyt. Udelal bych to s tou tiny13. Měnič (násobič) 2x lze snadno udelat s jednim vývodem:),ktery budí LEDku,pokud by to bylo potřeba.
Pokud mas programátor na mega8 pres lpt tak předpokládám ze umí tiny13 naprogramovat také...
Ceeert
Alexxx

#20 Příspěvek od Alexxx »

to ceeert: to bych ti byl moc vdecny. Usetrilo by mi to hodne prace. Stacil by jen naprogramovat CPU a poslat. Ostatni bych si uz nejak spajel dohromady. Zdrojvy kod bude urcite jen na par radku. Navic je tak jednuduchy ze nepredpokladam nejake kolizni stavy a tak.

Kolik bys za to chtel?
Uživatelský avatar
ceeert
Příspěvky: 105
Registrován: 05 dub 2009, 00:00
Bydliště: Plzen

#21 Příspěvek od ceeert »

Alexxx píše:to ceeert: to bych ti byl moc vdecny. Usetrilo by mi to hodne prace. Stacil by jen naprogramovat CPU a poslat. Ostatni bych si uz nejak spajel dohromady. Zdrojvy kod bude urcite jen na par radku. Navic je tak jednuduchy ze nepredpokladam nejake kolizni stavy a tak.

Kolik bys za to chtel?

Kdybys to komerčně neprodával,tak za cenu poštovného:) zdrojové kódy bysme dali k dispozici...
Ceeert
Alexxx

#22 Příspěvek od Alexxx »

Měl bych to jen k pokusům ... myslím, že kdyby to fungovalo (v což pevně doufám že bude) tak by si to stejně asi každý postavil sám...

Pokud bys tedy mel chvilku casu a naprogramoval to, tak mi pisni.

Diky moc.
Uživatelský avatar
nekmil
Příspěvky: 787
Registrován: 06 bře 2005, 00:00
Bydliště: Havířov

#23 Příspěvek od nekmil »

Tohle jsem narychlo sesmolil jen tak pro inspiraci

'-------------------------------------------------------------------------------
'name : LED_blik_Attiny13.bas
'copyright : (c)6/2009, nekmil@cbox.cz
'micro : ATtiny13
'BASCOM-AVR : 1.11.9.4
'-------------------------------------------------------------------------------
'
' tlačítko připojeno na PB.3 a GND
'
' LED připojeny katodami na PB.4 a PB.5 přes rezistor na Ucc
''
' zkoušeno v simulátoru v BASCOMu
'-------------------------------------------------------------------------------

'$sim 'pouze pro simulaci, při překladu pro procesor odstranit !!!

$regfile = "attiny13.dat"
$crystal = 1200000 'ponechat v továrním nastavení 9,6MHz/8 = 1,2MHz

Dim I As Byte 'pomocná proměnná
Config Pinb.3 = Input 'kofigurujeme Pinb.3 jako vstup (tlačítko)
Portb.3 = 1 'a nastavíme mu pullup
Config Portb.4 = Output 'kofigurujeme PORTb.4 jako výstup (LED_1)
Config Portb.5 = Output 'kofigurujeme PORTb.5 jako výstup (LED_2)

'přiřadíme vývodům nějaká jména
Key Alias Pinb.3
Led_1 Alias Portb.4
Led_2 Alias Portb.5

Const On = 0
Const Off = 1
'počáteční stav
Led_1 = Off 'nesvítí
Led_2 = Off 'nesvítí
'--------------------------------------------
Main:
'blikáme a kontrolujeme tlačítko
Do
Toggle Led_1 'převrátíme LEDky, tedy rozsvítíme
Toggle Led_2
Gosub Key_press 'zkontrolujeme tlačítko
Waitms 100 'počkáme např. 100ms +-
Toggle Led_1 'převrátíme LEDky, tedy zhasneme
Toggle Led_2
For I = 1 To 10 'zde máme pauzu 10x100ms=1s, během které-
Gosub Key_press '- 10x zkontrolujeme tlačítko
Waitms 100 'počkáme 100ms
Next I 'tlačítko by se dalo obsluhovat i v přerušení
Loop 'ale zvolil jsem pro jednoduchost toto řešení
'--------------------------------------------
'podprogram kontroly tlačítka
Key_press:
If Key = 0 Then 'tlačítko stisknuto
Bitwait Key , Set 'čekáme na puštění tlačítka
Led_1 = Off 'zhasneme LEDky
Led_2 = Off
Wait 600 'čekáme 10 minut
Goto Main 'znovu na začátek
End If
Return
End 'end program

:1000000009C018951895189518951895189518956C
:10001000189518958FE98DBFC0E9E8E84E2EDD27C9
:100020005D2EEEE3F0E0A0E6B0E0A89584B7082EE0
:10003000877F84BF88E1992781BD91BD88278D93F3
:100040003197E9F76624BB98C39ABC9ABD9AC49AC3
:10005000C59A88B390E1892788BB88B390E2892745
:1000600088BB1FD084E690E03AD088B390E189271E
:1000700088BB88B390E2892788BB81E080936000C9
:10008000009160000A3010F009F00AC00AD084E63E
:1000900090E025D0A0E68C918F5F8C9308F4F0CF90
:1000A000D8CFB3990AC0A6E38C9183FBE6F7C49A34
:1000B000C59AE8E5F2E004D0CCCF0895F894FFCFDC
:1000C00088EE93E00CD03197D9F708953197F1F786
:1000D0000895689462F80895E89462F80895EF939B
:1000E000FF93EE27E82BE92B31F0ECE2F1E03197BA
:0C00F000F1F70197D1F7FF91EF9108950F
:00000001FF
Naposledy upravil(a) nekmil dne 27 čer 2009, 11:04, celkem upraveno 3 x.
Alexxx

#24 Příspěvek od Alexxx »

to nekmil: díky moc za příklad. Koukám, že je to programované ve vyšším jazyce než assembler a vypadá to dost jednoduše - že bych zauvažoval o koupi programátoru :o))

Předpokládám, že kdybych měli ledky blikat současně tak by to bylo takto:

Main:
Led_1 = Off 'svítí
Led_2 = Off 'nesvítí

'blikáme a kontrolujeme tlačítko
Do
Toggle Led_1 'převrátíme LEDky
Toggle Led_2
Gosub Key_press 'zkontrolujeme tlačítko
Waitms 100 'LED budou svitit 100ms +-
Toggle Led_1 'převrátíme LEDky
Toggle Led_2
Waitms 1000 'LED budou zhasnute 1000ms +-
Gosub Key_press 'zkontrolujeme tlačítko
Loop

Pokud by to fungovalo ... mohl by to nekdo hodit do CPU a poslat? ... dal bych mu k ceně součástek a poštovného 100Kč.

Díky moc.
Uživatelský avatar
nekmil
Příspěvky: 787
Registrován: 06 bře 2005, 00:00
Bydliště: Havířov

#25 Příspěvek od nekmil »

Tak jsem ten program trochu upravil viz výše.
Programátor na LPT je velmi jednoduchý.

http://www.edisk.cz/stahnout-soubor/978 ... 3.6MB.html
Alexxx

#26 Příspěvek od Alexxx »

Takže programátor pro Attiny13 je viz schema ok? Predpokladam, kdyz ma Attiny13 interni krystal, tak nepotrebuji pripojovat k programatoru externi.

Prosimte jaky program tedy pouzit pro psani kodu v tom jazyce cos uvedl vyse? Umi ten program i nahrat vse do toho procesoru?

Diky moc.
Přílohy
programator.JPG
(26.64 KiB) Staženo 79 x
Andrea
Příspěvky: 9340
Registrován: 07 zář 2007, 00:00

#27 Příspěvek od Andrea »

Alexxx píše:Predpokladam, kdyz ma Attiny13 interni krystal, tak nepotrebuji pripojovat k programatoru externi.

Co máš pořád s tím interním krystalem, AVR mají interní RC oscilátor, pokud to chceš super přesné, řízené krystalem, tak ho musíš dát zvenčí.
Uživatelský avatar
nekmil
Příspěvky: 787
Registrován: 06 bře 2005, 00:00
Bydliště: Havířov

#28 Příspěvek od nekmil »

Tak jak píše Andrea, při programování nic připojovat netřeba.
Osobně bych k připojování čehokoliv na LPT byl velmi opatrný, proto tam mám ten 74245.
Člověk je "blbec" někde jenom škrtne a LPT je kaput.
Jinak je to psáno ve vývojovém prostředí BASCOM-AVR, volná verze je omezena na 4kB kódu.
Programátor používám AVRDUDE s grafickým rozhraním Burn O Mat.
Ale lze ho "připojit" do toho výv. prostředí jako externí programátor stiskem jediné ikony. Vše potřebné je v tom odkazu.
Alexxx

#29 Příspěvek od Alexxx »

S tím krystalem, na obrázku v tom odkaze je připojený krystal na vstupech. Pro můj případ ale tedy neni třeba. Zkusím to tedy splácat sám podle schématu a uvidím.

Ještě jednou díky za rady.
Uživatelský avatar
nekmil
Příspěvky: 787
Registrován: 06 bře 2005, 00:00
Bydliště: Havířov

#30 Příspěvek od nekmil »

V tom článku je jako příklad uveden zastaralý procesor z řady 90 a ty neměly vnitřní RC oscilátor, řada AVR již je schopna běhu "přímo z prodejny" :D
Odpovědět

Zpět na „Programování PIC, ATMEL, EEPROM a dalších obvodů“