AVR-es áramkörök stabilitása , és megbízhatósága?

Hogyan programozzak AVR chipet? Programozók beállításai...
Bascom nyelvű programok...
Avatar
DOGMAN
Chipgyilok
Hozzászólások: 293
Csatlakozott: 2006. augusztus 27. vasárnap, 6:00

Hozzászólás Szerző: DOGMAN »

Hu Robi, te aztán belementél a közepébe :D
Avatar
Robert
Elektronbűvölő
Hozzászólások: 10213
Csatlakozott: 2005. december 9. péntek, 7:00

Hozzászólás Szerző: Robert »

Ha már meg volt a kérdés, akkor ötletbörze elindult :P.
Meg ha már végigszivattam magamat a problémák egy részével más már ne fusson bele.... Itt meg túl sok ilyen volt 1 kupacban :).
Avatar
kefeur
Tranzisztorgyógyász
Hozzászólások: 187
Csatlakozott: 2008. február 17. vasárnap, 7:00

Hozzászólás Szerző: kefeur »

Na ebből fogok oksodni !
Köszi szépen :)
1, eepromba 33- tól írok , előtte levők tartalék

8, ezt nem értem
Ilyen TILOS!
Select case...
case....
case....
end select
nem lehet köözbe heverésző utasítás!
Itt mi heverészik?
select case e
Én úgy tudtam Pl: case 5: innentől
idáig hajtja végre ha e=5
case 6 :

15, A stop kezelésben jelzőbitek is változnak , sok funkciónak tovább kell működni.

Az int-bemeneten 1K-330nF van.

A többi világos , és köszönet érte
Kefeur
Avatar
Robert
Elektronbűvölő
Hozzászólások: 10213
Csatlakozott: 2005. december 9. péntek, 7:00

Hozzászólás Szerző: Robert »

Select case valami
lowerline
case 3:
case 4:
end select


A lowerline nem lehet benne......


A case-ban futottam bele, hogy a
select case valami
case 2
.
.
.
case 3
.
.
.
end select
esetén a case utáni részt nem mindig kezelte jól... Ezért én szubrutinba kapokolok mindent.....



STOP rész ok, de a INT=low level nem a legjobb megoldás, mert ha nyomod a stop gombot csak ebbe a rutinba "beragad"....
mintha folyamatos INT lenne....
Avatar
kefeur
Tranzisztorgyógyász
Hozzászólások: 187
Csatlakozott: 2008. február 17. vasárnap, 7:00

Hozzászólás Szerző: kefeur »

:D Már ez is világos.
Holnap fojtatom .
Köszönet még egyszer.
Kefeur
Avatar
DOGMAN
Chipgyilok
Hozzászólások: 293
Csatlakozott: 2006. augusztus 27. vasárnap, 6:00

Hozzászólás Szerző: DOGMAN »

Sziasztok!

Van egy áramköröm:
mega8 (1Mhz)
ds1307 óra+elem
2*16 karakteres lcd
2 tranyóval meghúzható relé egy-egy lábon
3 nyomógomb belső felhúzóval felhúzva megnyomáskor földre zárnak
táp: valami kapcsüzemű telefon adapter+7805 kondikkal szűrve

Program:
do loopban:
- óra lekérdezése
- döntés hogy a visszaszámlált idő elérte-e a kivánt értéket, ha igen akkor behúzza a relét
- kiirja az lcd-re az időt, egyéb adatokat
- figyeli a gombokat

gosubbal ugrok a gombnyomások eseményére, az órába mentés kiolvasásra, function van írva az i2c írás olvasásra.

Ez jól is működik míg a programozó rá van dugva, amint lehúzom elkezd villogni a szöveg az LCD-n (nem a világítás, hanem a betűk eltűnnek és visszajönnek)
_nem resetel_ mert mikor fel-fel villan a kijelző akkor látom hogy méri az időt rendesen, benntartja a relét amig kell, szóval csak az LCD adatbusz bolondul meg...

ha megfogom a panelt kézzel random helyen akkor helyrejön
ha lógatom a levegőben akkor is jó, de amint valamely része szilárd testhez közeledik (leteszem az asztalra, befogomm satuba) azonnal meghülyül

ha rajta van a programozó, és a mega8 teteje felé nyúlok szintén elkezd villogni....főleg ha a gombok kivezetései fele van az ujjam.

Gondolom valami zajt szed ösze mit próbáljak ki??? 100nF-ek et közel tettem a procihoz, táp előírtan szűrve...

a gombokra tegyek kondit??? (ha gombok fele nyúloka procinál vagy a panelen, akkor a legerősebba jelenség)
Avatar
DOGMAN
Chipgyilok
Hozzászólások: 293
Csatlakozott: 2006. augusztus 27. vasárnap, 6:00

Hozzászólás Szerző: DOGMAN »

Kicseréltem a tápot egy PC tápra, most alapban már nem csinálja, csak ha a gomboknál megérintem a panelt, vagy a gombokhoz közelítek az ujjammal.

Nem lenne elég a belső felhúzó ellenállás???
Máskor is igy használtam de sosem volt vele gond.
Avatar
kapu48
Elektronbűvölő
Hozzászólások: 3375
Csatlakozott: 2008. augusztus 29. péntek, 6:00

Hozzászólás Szerző: kapu48 »

Tegyél külső felhúzó ellenállást + hidegítő 100n kondit.
Ha hosszú a vezeték a gombokhoz? Ajánlott árnyékoltra cserélni.
Avatar
DOGMAN
Chipgyilok
Hozzászólások: 293
Csatlakozott: 2006. augusztus 27. vasárnap, 6:00

Hozzászólás Szerző: DOGMAN »

A panelon vannak a gombok, kb 1 centire a procitól.
most teszek rá ellenállást

eza rész figyeli:

Kód: Egész kijelölése

'Definiciók:
B_up Alias pind.2
B_dw Alias Pind.3
B_en Alias Pind.4

Config B_up = Input
Config B_dw = Input
Config B_en = Input

B_up = 1                                                    'nyomógomb felhúzó
B_dw = 1                                                    'nyomógomb felhúzó
B_en = 1                                                    'nyomógomb felhúzó

Prell=0

Kód: Egész kijelölése

' do-loopban
      If B_up = 0 And Prell = 0 Then
         Prell = 1
         Decrease = 0
         Gosub Set_hours
      Elseif B_dw = 0 And Prell = 0 Then
         Prell = 1
         Decrease = 1
         Gosub Set_hours
      Elseif B_en = 0 And Prell = 0 Then
         Prell = 1
      Elseif B_up = 1 And B_dw = 1 And B_en = 1 Then
         Prell = 0
      End If
nem szabadna prellegnie de ugy pörög ha megnyomom mint az állat :D

Na bedugom a pákát...
Avatar
Robert
Elektronbűvölő
Hozzászólások: 10213
Csatlakozott: 2005. december 9. péntek, 7:00

Hozzászólás Szerző: Robert »

A belső felhúzó értéke kicsi (azaz nagy), 30...80 kohm! Így már szép antenna is tud lenni... Felhúzónak 1k...4k7 közti javasolt...


Szokásos kérdés:
Strack, frames, rendben? igaz megnövelted az alapban adottat?
Avatar
DOGMAN
Chipgyilok
Hozzászólások: 293
Csatlakozott: 2006. augusztus 27. vasárnap, 6:00

Hozzászólás Szerző: DOGMAN »

Minden szép és jó a felhúzó volt kevés
10k-t tettem mindhárom gombra, szépen stabilan megy
Köszi a segítséget. (versenyre ez is be lesz nevezve :))
Avatar
kapu48
Elektronbűvölő
Hozzászólások: 3375
Csatlakozott: 2008. augusztus 29. péntek, 6:00

Hozzászólás Szerző: kapu48 »

Utólagos gondolatom:

Kód: Egész kijelölése

B_up Alias pind.2 
B_dw Alias Pind.3 
B_en Alias Pind.4 

Config B_up = Input 
Config B_dw = Input 
Config B_en = Input 
’Ez a rész szerintem nem jó!:
B_up = 1                                                    'nyomógomb felhúzó 
B_dw = 1                                                    'nyomógomb felhúzó 
B_en = 1                                                    'nyomógomb felhúzó
’Mert logikailag bemenetnek nem lehet értéket adni!
’Inkább így kellene:
Portd.2 = 1
Portd.3 = 1
Portd.4 = 1
Legalábbis a nagykönyvben így van megírva.
Avatar
DOGMAN
Chipgyilok
Hozzászólások: 293
Csatlakozott: 2006. augusztus 27. vasárnap, 6:00

Hozzászólás Szerző: DOGMAN »

kapu48 írta:Utólagos gondolatom:

Kód: Egész kijelölése

B_up Alias pind.2 
B_dw Alias Pind.3 
B_en Alias Pind.4 

Config B_up = Input 
Config B_dw = Input 
Config B_en = Input 
’Ez a rész szerintem nem jó!:
B_up = 1                                                    'nyomógomb felhúzó 
B_dw = 1                                                    'nyomógomb felhúzó 
B_en = 1                                                    'nyomógomb felhúzó
’Mert logikailag bemenetnek nem lehet értéket adni!
’Inkább így kellene:
Portd.2 = 1
Portd.3 = 1
Portd.4 = 1
Legalábbis a nagykönyvben így van megírva.
Bascom könyvben van ez ??? Mer akkor kikeresem és átnézem.

Én úgy tudom az B_up = 1 ugyanaz mint a Portd.2 = 1, mert az "Alias" csak a forráskódban segít eligazodni, és fordításkor a portcím lesz úgyis a valódi hivatkozás(mintha Portd.2-őt írtam volna B_up helyett).
Avatar
kapu48
Elektronbűvölő
Hozzászólások: 3375
Csatlakozott: 2008. augusztus 29. péntek, 6:00

Hozzászólás Szerző: kapu48 »

Én nem vitatkozok ezen veled, hiszen a saját baját mindenki úgy oldja meg ahogy akarja!
Mindenesetre te magad idézted be sajátmagad: „B_up Alias PinD.2” !!!
Nem hiszem, hogy a fordító tudná ide most neki „pind.2” helyet „Portd.2” kellene fordítania?
Szerintem nem véletlenül nevezik kétféleképe ugyanazt a lábat. BEMENE = Pind.2, KIMENET = Portd.2 ?
:twisted: :?:
[/b]
Avatar
DOGMAN
Chipgyilok
Hozzászólások: 293
Csatlakozott: 2006. augusztus 27. vasárnap, 6:00

Hozzászólás Szerző: DOGMAN »

Bocs, én úgy olvastam, hogy az "alias"-ra szól a megjegyzésed... azt hogy pin-t írtál észre sem vettem.

Ha portd.2-t definiálok bemenetnek, beállítom a belső felhúzót, és utána lehúzom földre egy kapcsolóval, akkor nem változik meg a port állapota.
Legalábbis ha jól emlékszem.
Csak akkor ha pind.2-ként definiálom.
Az viszont lehet hogy így nem lehet felhúzni a belsővel, és ezért kellett rá külső ellenállás.
És nem vitatkozni akarok veled, hanem megérteni a dolgokat, azért kérdezek, néha látszólag hülyeségeket. Speciel mostmeg elnéztem a válaszodban a pin/port fogalmat.
Válasz küldése