welcher Atmel für Torzähler?

Im Unterforum Microcontroller - Beschreibung: Hardware - Software - Ideen - Projekte

Elektronik Forum Nicht eingeloggt       Einloggen       Registrieren




[Registrieren]      --     [FAQ]      --     [ Einen Link auf Ihrer Homepage zum Forum]      --     [ Themen kostenlos per RSS in ihre Homepage einbauen]      --     [Einloggen]

Suchen


Serverzeit: 05 10 2024  23:56:18      TV   VCR Aufnahme   TFT   CRT-Monitor   Netzteile   LED-FAQ   Osziloskop-Schirmbilder            


Elektronik- und Elektroforum Forum Index   >>   Microcontroller        Microcontroller : Hardware - Software - Ideen - Projekte

Gehe zu Seite ( Vorherige Seite 1 | 2 | 3 | 4 | 5 | 6 Nächste Seite )      


Autor
welcher Atmel für Torzähler?

    







BID = 149903

Morgoth

Schreibmaschine



Beiträge: 2930
Wohnort: Rockenhausen (Pfalz)
 

  


Dankeschön!
Mit dem transistor:
Kann der nur mehr , oder war das ein wink mit dem Zaunpfahl ihm mehr zu geben?
denn eigentlich wollte ich nur mit einer Spannung arbeiten.
Aber so ne schaltung heb ich dann wohl doch such schonmal gemacht, nur erinnere ich mich dunkel hier dann gesagt bekommen zu haben, dass sie uneffektiv ist (für die damalige Anwendung). Seitdem hab ich mich halt auf die Collectorschaltungen beschränkt.


[ Diese Nachricht wurde geändert von: Morgoth am 14 Jan 2005 11:24 ]

BID = 149916

Morgoth

Schreibmaschine



Beiträge: 2930
Wohnort: Rockenhausen (Pfalz)

 

  

so, schaltplan nochmal aktualisiert, aber jetzt werden formeln gepaukt...




_________________
Es irrt der Mensch solang er strebt

BID = 149919

perl

Ehrenmitglied



Beiträge: 11110,1
Wohnort: Rheinbach


Zitat :
Kann der nur mehr , oder war das ein wink mit dem Zaunpfahl ihm mehr zu geben?
denn eigentlich wollte ich nur mit einer Spannung arbeiten.

Das kannst du machen wie du lustig bist. Wenn du willst war das der Wink die LEDs vor dem Regler anzuschließen z.B. um ihn zu entlasten. Dann reicht die Spannung auch noch für ein paar bunte LEDs.

Mit einem solchen Kleinleistungstransistor BC... kannst du so Spannung zwischen 1V und vielleicht 25V schalten.
Mit einem BUV... kommst du ohne Schaltungsänderung bis auf einige hundert Volt.



P.S.:
Ich sehe gerade, dein Schaltplan ist falsch.
Die Emitter gehören an Masse und es müssen npn- Transistoren sein !


_________________
Haftungsausschluß:



Bei obigem Beitrag handelt es sich um meine private Meinung.



Rechtsansprüche dürfen aus deren Anwendung nicht abgeleitet werden.



Besonders VDE0100; VDE0550/0551; VDE0700; VDE0711; VDE0860 beachten !

[ Diese Nachricht wurde geändert von: perl am 14 Jan 2005 12:15 ]

BID = 149921

perl

Ehrenmitglied



Beiträge: 11110,1
Wohnort: Rheinbach


Zitat :
perl hat am 14 Jan 2005 12:12 geschrieben :

.... und es müssen npn- Transistoren sein !



Dieser Fehler keht auf mein Konto.
BC327 und 328 sind pnp, die ensprechenden npn heißen BC337 und 338.

BID = 149922

Morgoth

Schreibmaschine



Beiträge: 2930
Wohnort: Rockenhausen (Pfalz)

oh, hab deine worte missverstanden, dann ist ja ne emitterschaltung das was ich immer mache
aber warum npn? laut conrad katalog ist dein BC327 doch ein pnp
und ganau den hab ich ja auch ausgewählt
edit: ok dann iss gut

_________________
Es irrt der Mensch solang er strebt

[ Diese Nachricht wurde geändert von: Morgoth am 14 Jan 2005 12:21 ]

BID = 149925

perl

Ehrenmitglied



Beiträge: 11110,1
Wohnort: Rheinbach

Nun gehts also drunter und drüber. Sorry.

Also:
mit npn Transistoren machst du es so wie ich anfangs schrieb,
mit pnp kannst du es so machen wie du es in der Schaltung gezeichnet hast.
Allerdings würde ich npn bevorzugen, da die generell etwas bessere elektrische Daten haben.


_________________
Haftungsausschluß:



Bei obigem Beitrag handelt es sich um meine private Meinung.



Rechtsansprüche dürfen aus deren Anwendung nicht abgeleitet werden.



Besonders VDE0100; VDE0550/0551; VDE0700; VDE0711; VDE0860 beachten !

BID = 149933

Morgoth

Schreibmaschine



Beiträge: 2930
Wohnort: Rockenhausen (Pfalz)

hab jetzt wieder umgebaut, aber das jetzt upzuloaden wäre ja wohl unsinn (so ne kleine änderung)
der regler schafft 1A, das sollte langen, weiß noch nichtmal was ich für nen netzteil davor hänge, also plan ich zuerst mal mit den 5V weiter

_________________
Es irrt der Mensch solang er strebt

BID = 150601

Morgoth

Schreibmaschine



Beiträge: 2930
Wohnort: Rockenhausen (Pfalz)

Bin gerade dabei das programm zu schreiben, und es klappt bisher (denke ich) ganz gut. aber was ich nch nicht herausgefunden habe:
wie kriege ich nen vernünftigen piepton hin an ausgang PB7?
kann mir da jemand ein makro machen ausgehend von ner Taktfrequenz von 1MHz, und der piepton sagen wir mal mit um die 1Khz? sollte so eine halbe sekunde lang sein.

_________________
Es irrt der Mensch solang er strebt

BID = 155716

Morgoth

Schreibmaschine



Beiträge: 2930
Wohnort: Rockenhausen (Pfalz)

so, schaltung ist aufgebaut, und das programm im grundgerüst geschrieben. nur dummerweise macht der µC genau nix, wenn ich messe schwirren alle pins so auf 1,6V rum
hier das proggie:


Code :


INCLUDE "m8def.inc"
.DEF stack = R16
.DEF countA = R17
.DEF countB = R18
.DEF ausgang = R19
.EQU ton = 7
.CSEG
.ORG 000
RJMP Start
.ORG INT0addr
RJMP TorA
.ORG INT1addr
RJMP TorB
Start:
ldi ausgang, 0xFF
out DDRB, ausgang
out DDRC, ausgang
ldi stack, 0b11011110
out DDRD, stack
ldi stack, 0b11000000
out PORTD, stack
ldi stack, 0x00
out PORTB, stack
ldi stack, 0x00
out PORTC, stack
sei
ldi stack, 0b00100000
out MCUCR, stack
SLEEP
.MACRO Beep
sbi PORTD, ton
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
cbi PORTD, ton ; irgendwann sinnvoll erweitern
.ENDMACRO
.MACRO Delay
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
.ENDMACRO
LDI stack, HIGH(RAMEND)
OUT SPH, stack
LDI stack, LOW(RAMEND)
OUT SPL, stack
LDI countA,0b00000000
LDI countB,0b00000000
Routine:
OUT PORTB, countA
OUT PORTC, countB
SLEEP
TorA:
Beep
ldi stack, 0b00000001
ADD countA, stack
Delay
Delay
Delay
Delay
RETI
TorB:
Beep
ldi stack, 0b00000001
ADD countB, stack
Delay
Delay
Delay
Delay
RETI



_________________
Es irrt der Mensch solang er strebt

[ Diese Nachricht wurde geändert von: Morgoth am 27 Jan 2005 19:18 ]

BID = 155719

Morgoth

Schreibmaschine



Beiträge: 2930
Wohnort: Rockenhausen (Pfalz)

und nochmal der schaltpla, wie er jetzt wirklich aufgebaut ist




_________________
Es irrt der Mensch solang er strebt

BID = 156148

Morgoth

Schreibmaschine



Beiträge: 2930
Wohnort: Rockenhausen (Pfalz)

ok, folgende änderungen:
-Die 1,6V kommen von den 7447ern, der µC bringt selbst nur ca 56mV pro Pin mit
-der reset pin hat sein potential korrekt fast bei der betriebsspannung
-das programm hab ich inzwichen so verändert dass es wirklich läuft, und im simulator genau das tut was es soll.

nun ne frage: kann es vllt sein, dass der µC nicht anläuft, und ich vllt irgendwie seine interne taktgebung zuerst aktivieren muss? und wenn ja, wie mach ich das?

_________________
Es irrt der Mensch solang er strebt

BID = 156199

Morgoth

Schreibmaschine



Beiträge: 2930
Wohnort: Rockenhausen (Pfalz)

AUA falsches Hex format aaaaaargh, einen hab ich daran totprogrammiert, bleiben noch 2 bis es richtig funzt...
also weiter mit den problemen: schaltung geht jetzt theoretisch, aber das ding will die interrupts nicht erkennen (momentaner widerstand vor den fototransistoren ist 1k)
edit: nein, daran scheints nicht zu liegen, wie aktiviere ich die interrups richtig? kann da jemand nen codeausschnitt posten?

_________________
Es irrt der Mensch solang er strebt

[ Diese Nachricht wurde geändert von: Morgoth am 28 Jan 2005 20:26 ]

BID = 156207

perl

Ehrenmitglied



Beiträge: 11110,1
Wohnort: Rheinbach

Unkommentierte Sourcen lese ich normalereise überhaupt nicht, aber mir ist auffallen, daß dein Macro Beep allenfalls einen Einzelimpuls von einigen µs Dauer produziert.

Wenn du nicht weißt wie man mit den Interrupts umgeht, solltest du vielleicht zuerst mal den Pin pollen.
Wenn dann alles funktioniert, kannst du ja versuchen eine ISR zu schreiben.


_________________
Haftungsausschluß:



Bei obigem Beitrag handelt es sich um meine private Meinung.



Rechtsansprüche dürfen aus deren Anwendung nicht abgeleitet werden.



Besonders VDE0100; VDE0550/0551; VDE0700; VDE0711; VDE0860 beachten !

BID = 156240

Morgoth

Schreibmaschine



Beiträge: 2930
Wohnort: Rockenhausen (Pfalz)

gute idee
hätt ich können selbst drauf kommen...
ehm der beep ist ja das einzige kommentierte, der ist ja nicht wirklich fertig, und wird natürlich dann wenn ich rausgefunen hab wie man SINNVOLL nen ton erzeugt ausgeweitet werden (hab mir verschiedene tonprogramme runtergeladen, muss mich da noch durcharbeiten)...
was ich für den interrupt brauche ist ein befehl oder sonstwas, der dafür sorgt dass nur fallende flanken auf INT0 und INT1 ausgewertet werden im moment sollter er laut anleitung alles auswerten, tut aber in der praxis nix auswerten

edit: morgen schreib ich mal kommentare dazu, und stell die aktuelle version rein

_________________
Es irrt der Mensch solang er strebt

[ Diese Nachricht wurde geändert von: Morgoth am 28 Jan 2005 21:34 ]

BID = 156360

Morgoth

Schreibmaschine



Beiträge: 2930
Wohnort: Rockenhausen (Pfalz)

so, hier der aktuelle Code mit kommentaren


Code :

.INCLUDE "m8def.inc" 

.DEF stack = R16
.DEF countA = R17
.DEF countB = R18
.DEF ausgang = R19
.EQU ton = 7
.CSEG
.ORG 000
rjmp Start
.ORG INT0addr ;interruptvektor1 (LichtschrankeA)
rjmp TorA ;sprungbefehl nach unterprogramm zum "torhandling"
.ORG INT1addr ;interruptvektor2 (LichtschrankeB)
rjmp TorB ;sprungbefehl nach unterprogramm zum "torhandling"
.MACRO Beep ;generiert (k)einen ton
sbi PORTD, ton
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cbi PORTD, ton ; irgendwann sinnvoll erweitern
.ENDMACRO
.MACRO Delay ;viel pause
nop
nop
.
.
.
nop
nop
nop
.ENDMACRO ;ende der pause
Start:
ldi ausgang, 0xFF
out DDRB, ausgang ;portB als ausgeng definieren
out DDRC, ausgang ;portC als ausgang definieren
ldi ausgang, 0b11010010bb
out DDRD, ausgang ;portD als als ein und ausgang definieren
ldi ausgang, 0b11000000
out PORTD, ausgang ;portC pins auf high und low level setzen (IR-LED's aktivieren)
ldi ausgang, 0x00
out PORTB, ausgang ;portB pins auf logisch 0 setzen (DisplayA auf 0)
ldi ausgang, 0x00
out PORTC, ausgang ;portC pins auf logisch 0 setzen (DisplayB auf 0)
ldi stack, 0b00100000
out MCUCR, stack
ldi stack, HIGH(RAMEND)
out SPH, stack
ldi stack, LOW(RAMEND)
out SPL, stack ;stack aktivieren
ldi countA,0b00000000 ;Torzählerregister A auf 0 Setzen
ldi countB,0b00000000 ;Torzählerregister B auf O Setzen
sei ;interrups aktivieren (torzählung kann ab jetzt beginnen)
Routine: ;schleife auf
ldi ausgang, 0b11000000
out PORTD, ausgang ;PortD auf standartwert setzen (pin7 wird bei Interrupt zurückgesetzt)
out PORTB, countA ;TorzählerA über portB auf Display ausgeben
out PORTC, countB ;TorzählerB über portC auf display ausgeben
rjmp Routine ;schleife zu(soll später durch korrekte sleepfunktion ersetzt werden)
TorA: ;Torbearbeitungsroutine B
Beep ;Beepmacro aufrufen (Piezopiepser ansteuern)
ldi stack, 0b00000001
add countA, stack ;TorzählerA um 1 hochsetzen
Delay ;delaymacro aufrufen und pause machen, bis hoffentlich der ball fertig durchs tor gehuscht ist
Delay
Delay
Delay
reti ;zurück zu Ursprung
TorB: ;Torbearbeitungsroutine B
Beep ;Beepmacro aufrufen (Piezopiepser ansteuern)
ldi stack, 0b00000001
add countB, stack ;TorzählerB um 1 hochsetzen
Delay ;delaymacro aufrufen und pause machen, bis hoffentlich der ball fertig durchs tor gehuscht ist
Delay
Delay
Delay
Delay
reti ;zurück zu Ursprung



_________________
Es irrt der Mensch solang er strebt

[ Diese Nachricht wurde geändert von: Morgoth am 29 Jan 2005 11:28 ]


Vorherige Seite       Nächste Seite
Gehe zu Seite ( Vorherige Seite 1 | 2 | 3 | 4 | 5 | 6 Nächste Seite )
Zurück zur Seite 0 im Unterforum          Vorheriges Thema Nächstes Thema 


Zum Ersatzteileshop


Bezeichnungen von Produkten, Abbildungen und Logos , die in diesem Forum oder im Shop verwendet werden, sind Eigentum des entsprechenden Herstellers oder Besitzers. Diese dienen lediglich zur Identifikation!
Impressum       Datenschutz       Copyright © Baldur Brock Fernsehtechnik und Versand Ersatzteile in Heilbronn Deutschland       

gerechnet auf die letzten 30 Tage haben wir 20 Beiträge im Durchschnitt pro Tag       heute wurden bisher 25 Beiträge verfasst
© x sparkkelsputz        Besucher : 182131628   Heute : 5436    Gestern : 5499    Online : 747        5.10.2024    23:56
2 Besucher in den letzten 60 Sekunden        alle 30.00 Sekunden ein neuer Besucher ---- logout ----viewtopic ---- logout ----
xcvb ycvb
0.0344979763031