Brauchst Du Portd nicht für den INT0 ?
Oder stellt sich der selber.. durch config INT0 ?
Den Zeichensatz kannst Du natürlich verwenden :-)
Druckbare Version
Brauchst Du Portd nicht für den INT0 ?
Oder stellt sich der selber.. durch config INT0 ?
Den Zeichensatz kannst Du natürlich verwenden :-)
achso meinst du das! darüber hab ich noch gar nicht nachgedacht! ;) ich glaube config int0 genügt... bis jetzt hat es funktioniert ;)
gruss bluesmash
hallo roberto!
ich habe heute eine neue spielerei entwickelt für unser drehlicht :)
probier mal folgenden code aus... portb.6 und 7 (die brauche ich für mein neues drehlicht mit 2 farben...) kanst du löschen und wahrscheinlich die timer anpassen... dann sollte es funktionieren...
den vorschlag von robert hab ich noch nicht eingebaut und die zahlen fehlen immer noch... das werde ich später dann noch machen...
config portd.2 brauche ich jetzt auch für den interrupt da ich nun auch einen hall sensor verwende und ich den internen pullup des portes verwende...
viel spass damit :)Code:$regfile = "m8def.dat"
$crystal = 8000000
$framesize = 256
$swstack = 256
$hwstack = 256
Config Portb = Output
Config Portd.6 = Output
Portd.6 = 0
Config Portd.7 = Output
Portd.7 = 0
Dim Umdrehung As Word
Dim Spaltenzeit As Byte
Dim A As Byte
Dim X As Byte
Dim X_7 As Byte
Dim I As Byte
Dim L As Byte
Dim Anzeige As String * 30
Dim Zeichen As String * 1
Dim Zeichenasc As Byte
Dim Spalte(150) As Byte
Dim Laenge As Byte
Dim Spalten As Byte
Dim Index As Word
Dim Stelle As Byte
Dim Spalteanz As Byte
Dim Spalteleer As Byte
Dim Spalteleer_7 As Byte
Config Int0 = Falling
On Int0 Int0isr
Enable Int0
Config Portd.2 = Input
Portd.2 = 1
Config Timer0 = Timer , Prescale = 64
On Timer0 Timer0isr
Enable Timer0
Config Timer1 = Timer , Prescale = 8
On Timer1 Timer1isr
Enable Timer1
Enable Interrupts
Start Timer0
Start Timer1
Anzeige = "Roman Sutter"
Portd.6 = 1
Portb.7 = 0
Do
Spalteleer = 133
Incr L
Zeichen = Mid(anzeige , L , 1)
Laenge = Len(anzeige)
Spalten = Laenge * 7
Zeichenasc = Asc(zeichen)
If Zeichen = " " Then
For I = 1 To 7
Incr Stelle
Spalte(stelle) = 255
Next I
End If
If Zeichenasc >= 65 And Zeichenasc <= 90 Then
Index = Zeichenasc - 65
Index = Index * 5
For I = 1 To 5
Incr Stelle
Spalte(stelle) = Lookup(index , Abc_gross)
Incr Index
Next I
Incr Stelle
Spalte(stelle) = 255
Incr Stelle
Spalte(stelle) = 255
End If
If Zeichenasc >= 97 And Zeichenasc <= 122 Then
Index = Zeichenasc - 97
Index = Index * 5
For I = 1 To 5
Incr Stelle
Spalte(stelle) = Lookup(index , Abc_klein)
Incr Index
Next I
Incr Stelle
Spalte(stelle) = 255
Incr Stelle
Spalte(stelle) = 255
End If
If Zeichenasc >= 48 And Zeichenasc <= 57 Then
Index = Zeichenasc - 48
Index = Index * 5
For I = 1 To 5
Incr Stelle
Spalte(stelle) = Lookup(index , 123)
Incr Index
Next I
Incr Stelle
Spalte(stelle) = 255
Incr Stelle
Spalte(stelle) = 255
End If
Loop Until L = Laenge
Do
nop
Loop
Int0isr:
Waitms 5
Umdrehung = Timer1
Umdrehung = Umdrehung / 1200
Spaltenzeit = Umdrehung
Timer1 = 0
Timer0 = 0
A = 0
Spalteanz = 0
If X <> Spalten Then
Spalteleer = Spalteleer - 7
Spalteleer_7 = Spalteleer + 7
If Spalteleer = X_7 Then
Spalteleer = 133
X = X + 7
X_7 = X + 7
End If
Else
Portd.6 = 0
Portd.7 = 1
End If
Return
Timer0isr:
Load Timer0 , Spaltenzeit
Incr A
If A > X Then
If A > Spalteleer Then
If A > Spalteleer_7 And A > X_7 And A > Spalteanz Then
Portb = 255
Else
Incr Spalteanz
Portb = Spalte(spalteanz)
End If
Else
Portb = 255
End If
Else
Incr Spalteanz
Portb = Spalte(spalteanz)
End If
Return
Timer1isr:
Return
Abc_gross:
Data &B10000001 , &B01101111 , &B01101111 , &B01101111 , &B10000001
Data &B00000001 , &B01101101 , &B01101101 , &B01101101 , &B10010011
Data &B11000111 , &B10111011 , &B01111101 , &B01111101 , &B01111101
Data &B00000001 , &B01111101 , &B01111101 , &B10111011 , &B11000111
Data &B00000001 , &B01101101 , &B01101101 , &B01111101 , &B01111101
Data &B00000001 , &B01101111 , &B01101111 , &B01111111 , &B01111111
Data &B10000011 , &B01111101 , &B01101101 , &B01101101 , &B01100011
Data &B00000001 , &B11101111 , &B11101111 , &B11101111 , &B00000001
Data &B11111111 , &B01111101 , &B00000001 , &B01111101 , &B11111111
Data &B11111011 , &B01111101 , &B00000001 , &B01111111 , &B11111111
Data &B00000001 , &B11101111 , &B11010111 , &B10111011 , &B01111101
Data &B00000001 , &B11111101 , &B11111101 , &B11111101 , &B11111101
Data &B00000001 , &B10111111 , &B11001111 , &B10111111 , &B00000001
Data &B00000001 , &B11011111 , &B11101111 , &B11110111 , &B00000001
Data &B10000011 , &B01111101 , &B01111101 , &B01111101 , &B10000011
Data &B00000001 , &B01101111 , &B01101111 , &B01101111 , &B10011111
Data &B10000011 , &B01111101 , &B01110101 , &B01111011 , &B10000101
Data &B00000001 , &B01101111 , &B01100111 , &B01101011 , &B10011101
Data &B10011101 , &B01101101 , &B01101101 , &B01101101 , &B01110011
Data &B01111111 , &B01111111 , &B00000001 , &B01111111 , &B01111111
Data &B00000011 , &B11111101 , &B11111101 , &B11111101 , &B00000011
Data &B00000111 , &B11111011 , &B11111101 , &B11111011 , &B00000111
Data &B00000011 , &B11111101 , &B11100011 , &B11111101 , &B00000011
Data &B00111001 , &B11010111 , &B11101111 , &B11010111 , &B00111001
Data &B00011111 , &B11101111 , &B11110001 , &B11101111 , &B00011111
Data &B01111001 , &B01110101 , &B01101101 , &B01011101 , &B00111101
Abc_klein:
Data &B11111011 , &B11010101 , &B11010101 , &B11010101 , &B11100001
Data &B00000001 , &B11110101 , &B11101101 , &B11101101 , &B11110011
Data &B11100011 , &B11011101 , &B11011101 , &B11011101 , &B11111011
Data &B11110011 , &B11101101 , &B11101101 , &B11110101 , &B00000001
Data &B11100011 , &B11010101 , &B11010101 , &B11010101 , &B11100111
Data &B11101111 , &B10000001 , &B01101111 , &B01111111 , &B10111111
Data &B11001111 , &B10110101 , &B10110101 , &B10110101 , &B10000011
Data &B00000001 , &B11101111 , &B11011111 , &B11011111 , &B11100001
Data &B11111111 , &B11111111 , &B10100001 , &B11111111 , &B11111111
Data &B11111011 , &B11111101 , &B11011101 , &B01000011 , &B11111111
Data &B00000001 , &B11110111 , &B11101011 , &B11011101 , &B11111111
Data &B11111111 , &B01111101 , &B00000001 , &B11111101 , &B11111111
Data &B11000001 , &B11011111 , &B11100111 , &B11011111 , &B11100001
Data &B11000001 , &B11101111 , &B11011111 , &B11011111 , &B11100001
Data &B11100011 , &B11011101 , &B11011101 , &B11011101 , &B11100011
Data &B11000001 , &B11010111 , &B11010111 , &B11010111 , &B11101111
Data &B11101111 , &B11010111 , &B11010111 , &B11100111 , &B11000001
Data &B11000001 , &B11101111 , &B11011111 , &B11011111 , &B11101111
Data &B11101101 , &B11010101 , &B11010101 , &B11010101 , &B11111011
Data &B11011111 , &B00000011 , &B11011101 , &B11111101 , &B11111011
Data &B11000011 , &B11111101 , &B11111101 , &B11111011 , &B11000001
Data &B11000111 , &B11111011 , &B11111101 , &B11111011 , &B11000111
Data &B11000011 , &B11111101 , &B11110011 , &B11111101 , &B11000011
Data &B11011101 , &B11101011 , &B11110111 , &B11101011 , &B11011101
Data &B11001111 , &B11110101 , &B11110101 , &B11110101 , &B11000011
Data &B11011101 , &B11011001 , &B11010101 , &B11001101 , &B11011101
123:
gruss bluesmash
fallses noch wen interessiert (sorry, dassich so spät damit ankomm *auf die uhr schaut* ;)) das mit dem lasersystem ist so:
du hast einen laser und einen motor mit in dem fall warscheinlich 7 spiegeln.
diese 7 spiegel sind jeweils in einem anderen winkel am motor angebracht, so dass wenn die oberste zeile benutzt werden soll dafür immer nur ein spiegel zuständig ist. über die zeit wann der laser an ist macht man die spalten, aber das war ja klar...
Martin ^^
Danke für die Info :-)
Hallo allerseits!
Ich habe mich gerade erst in den Thread eingelesen. Und genau genommen passt meine Frage nicht wirklich in dieses Forum. Ich möchte aber keinen neuen Thread eröffnen. Würde aber gern ein Thema aufnehmen, dass ganz zu Anfang kurz angeschnitten wurde.
Ich arbeite gerade am Entwurf eines rotierenden Bakenempfängers. Und stehe vor dem Problem der Spannungsübertragung. Habe einige Versuch mit selbstgewickelten Spulen aus Kupflackdraht gemacht, aber war nicht wirklich erfolgreich damit.
@RatberZitat:
Zitat von Ratber
Da bin ich im Grundsatz Deiner Meinung. Die Idee von @Roberto ist aber schon clever gemacht.
Könntest Du bitte einmal beschreiben wie der rotierende Trafo an Deinem Entwurf funktioniert hat bzw. aufgebaut war?
@Bluesmash
Wie hast Du bei Dir die Spannungsübertragung gelöst?
Danke.
Viele Grüße
Uwe
Hallo Uwe
Ich habe die übertragung ganz einfach mit einem schleifer und schleifring gelöst. dabei habe ich den GND über die motorwelle übertragen. war aber nur eine quick&dirty lösung...
gruss bluesmash
Zitat:
Zitat von Bot-Builder
Da ist nicht viel zu erklären.
Im Grunde 2 Flachwicklungen als Tonne die ineinander passen.
Flach geht es übrigens auch.
Der Rest ist etwas Elektronik.
Heute würde ich einfach zwei bidirektionale Funkmodule nehmen die mittlerweile sehr preiswert in kleiner Bauform zu bekommen sind.
Jetzt hilf mir mal. Wie stellt Du Dir Leistungsübertragung mit zwei Funkmodulen vor?Zitat:
Zitat von Ratber
Also das mit den Wicklungen ist zumindest theoretisch so weit klar. Allerdings bin ich mir über die konstruktiven Details nicht im Klaren. Gleichviele Wicklungen (wieviele?) auf beiden Seiten? Wie dick war Dein Kupferlackdraht?Zitat:
Zitat von Ratber
Primärseite mit Recheckspannung von einigen Kiloherz. Auf der Sekundärseite das ganze gleichrichten und mit Elko puffern. Ist es das was mit "Rest ist etwas Elektronik" meinst? Wie viel Spannung bzw. welche Leistung kann man damit übertragen.
viele Grüße
Uwe
Nein die Funkübertragung war für die Daten gedacht.
Damals hab ich das wie gesagt kapazitiv über die Welle gemacht.
Heute bekommt man sehr günstig bidirektionale Module so das man sich da keinen großen Kopf mehr machen muß.
Die Energieübertragung wäre einfacher zu bewerkstelligen.
Ich habe glockenförmige Luftspulen genommen damit der Platzbedarf gering bleibt.
Auf der Primärseite habe ich mit einigen khz getaktet um die Verluste zu reduzieren.
Für mehr Leistung passende Ferrithälften drumrum und etwas Feintuning also abstimmung auf die Drehzahl des Rotors.
Die Drahtstärken und genauen Geometrieen der Spulen habe ich aber nicht mehr.
Wäre für dich aber auch wertlos da man sich die Werte eh erst rechnerisch je nach Geometrie erarbeiten muß.