PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Mc14499 - avr



Tonykb
14.04.2012, 18:42
Hallo Liebes Forum! :)

So ich hab mich entschlossen mich hier mal anzumelden weil mir niemand mehr weiterhelfen konnte bisher! Ich hoffe Ihr könnt das ändern ;)

Also zunächst mal ein Syntax aus BASCOM:


$regfile = "m8def.dat"
$crystal = 1000000

Dim 0(4) As Byte
Dim 1(4) As Byte
Dim 2(4) As Byte
Dim 3(4) As Byte
Dim 4(4) As Byte
Dim 5(4) As Byte
Dim 6(4) As Byte
Dim 7(4) As Byte
Dim 8(4) As Byte
Dim 9(4) As Byte

Dim Stat As Bit

Dim Frequenz As Integer
Dim Z1 As Integer
Dim Z2 As Integer
Dim Z3 As Integer

Dim X As Integer
Dim Y As Integer

Config Portd.0 = Output
Config Portd.1 = Output
Config Portd.2 = Output

Enb Alias Portd.0
Clk Alias Portd.1
Dat Alias Portd

Frequenz = 245

Do

Z1 = Frequenz Mod 10
Frequenz = Frequenz / 10
Z2 = Frequenz Mod 10
Frequenz = Frequenz / 10
Z3 = Frequenz Mod 10


Do
For X = 0 To 3
Dat = Lookup(x , Z1)
Clk = 1
Clk = 0
Next X
Loop Until X = 3
X = 0

Do
For X = 0 To 3
Dat = Lookup(x , Z2)
Clk = 1
Clk = 0
Next X
Loop Until X = 3
X = 0

Do
For X = 0 To 3
Dat = Lookup(x , Z3)
Clk = 1
Clk = 0
Next X
Loop Until X = 3
X = 0




Loop
End

0:
Data &B00000000
Data &B00000000
Data &B00000000
Data &B00000000

1:
Data &B00000000
Data &B00000000
Data &B00000000
Data &B00000100

2:
Data &B00000000
Data &B00000000
Data &B00000100
Data &B00000000

3:
Data &B00000000
Data &B00000000
Data &B00000100
Data &B00000100

4:
Data &B00000000
Data &B00000100
Data &B00000000
Data &B00000000

5:
Data &B00000000
Data &B00000100
Data &B00000000
Data &B00000100

6:
Data &B00000000
Data &B00000100
Data &B00000100
Data &B00000000

7:
Data &B00000000
Data &B00000100
Data &B00000100
Data &B00000100

8:
Data &B00000100
Data &B00000000
Data &B00000000
Data &B00000000

9:
Data &B00000100
Data &B00000000
Data &B00000000
Data &B00000100


Als aller erstes will ich noch dazu sagen:
Ich weis das die Ansteuerung des Treibers (MC14499) so hier noch nicht funktioniert - ich konnte den Syntax noch nicht abschliesen weil ich leider hier schon hänge..

Mein Problem ist folgendes:
Der AVR soll später über einen Counter und einen Timer die Hz Zahl eines Anliegenden signals ermitteln und dann an 7 segment Anzeigen (3 Stück) weitergeben.
Zum Multiplexen der Anzeigen nutze ich nun den og. IC.

Mein Problem war/ ist eben nur wie ich die Zahlen an den TreiberIC ohne Millionen 'If Then' Schleifen sende...

Ich dachte mir die Zahlen (Durch 4 Bit codiert) In Tabellen zu hauen und dann wie im Syntax über Zählerschleifen (For...) an den IC zu Schicken...

Wenn ich aber den Syntax von oben Compilieren dann Kommen Fehlermeldungen, dass Z1 oder Z2 oder Z3 nicht gefunden wurden ("... Label Not Found").

Was muss ich ändern, oder wie kann ich das eleganter lösen, dass ich nur einen Dreistelligen Wert vom Counter (kommt später noch, hier nur testweise der wert 245) in eine Variable einlese und Diese dann auf 3 Segmentanzeigen ausgeben kann?

BITTE HELFT MIR!!! :)

Danke schonmal
Lg

Tonykb
14.04.2012, 20:26
NOCH EINE ERGÄNZUNG:

Ich habe herausgefunden, dass das Problem darin liegt, dass man beim LOOKUP Befehl die Bezeichnung der Tabelle(Also bei mir Z1,Z2,Z3) nicht durch ebendiese Variablen ausdrücken darf. Das Programm sucht vergebens nach den Tabellen Z1, Z2 oder Z3.

Kann ich Das Irgendwie Anders klären? Vielleicht über eine andre Form der Tabellen? (Mehrdimensional?, hab den Beitrag darüber hier schon gelesen aber leider nicht verstanden...)


Lg Tony :)

Tonykb
15.04.2012, 20:49
Hallo. Nach einem Tag hab ich es nun geschafft.

Ich stehe aber vor einen Neuem Problem. Dieser Chip wird nicht mehr hergestellt.
Ich suche jetzt einen Chip, der 16Bit BCD Code einliest und dann automatisch Multiplext (quasi wie der andere)...

Könnt Ihr mir einen Chip nennen der die kann?

Lg :)

Kampi
15.04.2012, 21:40
Schau dir mal den Chip an:

http://de.farnell.com/freescale-semiconductor/mc14489bpe/led-treiber-5-ch/dp/1457137

Ist der ok?

Tonykb
16.04.2012, 11:32
Schau dir mal den Chip an:

http://de.farnell.com/freescale-semiconductor/mc14489bpe/led-treiber-5-ch/dp/1457137

Ist der ok?

Absolut! =)
Danke Kampi!...

Der wäre soweit ideal nur hoffe ich das dieser nicht auch bald abgesetzt wird... ;)

Wenn jemand noch ne andre Idee hat immer her damit, aber der ist schonmal super!

Lg