PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : config 1wire - weitere Pins lassen sich nicht mehr benutzen



MAxK
29.05.2005, 14:47
Hallo ich habe in meinem Programm diese Zeile:
Config 1wire=portd.6
Nun hngen an diesem Port an Pin0 und an 1 RX, TX für den Datenaustausch.
Ich möchte nun an den freibleibenden Pins noch Taster dranhängen(als als Eingang nutzen).
Frei sind noch 2,3,4,5,7
Wie konfiguriere ich dies, damit ich die Pins als Eingnge nutzen kann?
Gruß Max

uwegw
29.05.2005, 15:00
wenn du die rs232 schnittstelle im programm verwendest, werden sie automatisch passend als ein/ausgang geschaltet. ebenso beim 1wire...

um die einzelnen pins als eingänge zu schalten, nimmst du den config pinX befehl:

Dim Taste As Bit 'variable die das ergebnis der tastenabfrage aufnimmt
Config Pind.2 = Input 'pin 2 am port d als eingang schalten

If Pind.2 = 1 Then Taste = 1 Else Taste = 0 'anschluss abfragen und das ergebnis in taste speichern

MAxK
29.05.2005, 18:35
Ich stelle hier mal einen Auszug des Programms rein, da ih immer noh keine Lösung gefunden habe(;

Wie gesagt die Eingänge funktionieren nicht. Ich habe das STK500 und will dessen Taster nutzen.


$regfile = "2313def.dat"
$crystal = 3686400
$baud = 9600

Config Portb = Output
Config Pind.2 = Input
Config Pind.3 = Input
Config Pind.4 = Input
Config Pind.5 = Input
Config Pind.7 = Input

Config 1wire = Portd.6

....


A = 9
B = 9
If Usr.rxc = 1 Then
X = Udr
Select Case X
Case "p" : Toggle Portb.0
A = 1
Case "l" : Toggle Portb.1
A = 2
Case "n" : Toggle Portb.2
A = 3
Case "r" : Goto Anfang
End Select '
End If

If Pind.2 = 0 Then B = 1
If Pind.3 = 0 Then B = 2
If Pind.4 = 0 Then B = 3
If Pind.5 = 0 Then B = 4
If Pind.7 = 0 Then B = 5

Print A ; B ; Tint ; Tfr

PicNick
30.05.2005, 08:57
Hi,
der Config ist nur dazu da, die Werte zu "overriden", die du bei den Compiler-options eingestellt hast.
Solange du nicht wirklich einen 1Wire-Befehl einbaust, tut sich absolut nix,
d.h. deine Pins funktionieren normal.
Wenn nicht, hat's jedenfalls nix mit 1wire zu tun.