
|
INFO - FAQ - CC2-Forum - CCPro-Forum |
|
||
|
> Hi, beschäftige mich jetzt wieder mit dem nervenzerfezenden c-control. > > zu erst, bin blutiger anfänger. > > wer kann mir ein beispiel geben, wie ich mit der 10er tastatur ein programm aufrufe,zb: > > taste "1" > relais 1,2,4,6,8 zieht an, > > taste "2" > relais 1,3,5,7, zieht an > Hi Markus, hier findest Du ein Beispiel zur Auswertung einer 12er Tastatur. ( z.B. 4 x 3 Tasten Folientastatur ) Die Tastatur bildet einen Spannungsteiler der bei Tastenbetätigung untersschiedliche Spannungen abgreift. Die Vergleichswerte dieser Spannungen liegen in der Tabelle. Du musst also einen Spannungsteieler aus 12 gleichen Widerständen von 3.3 Kilo-Ohm mit der Tastatur verbinden. Zur Erkennung das keine Taste gedrückt ist benötigst Du nich einen Widerstand von 560 Kilo-Ohm von +5V zum A/D-Port. Es geht auch mit anderen Widerstandswerten, damm musst Du aber die Werte in der Tabelle anpassen. Beachte bitte das in diesem Beispiel nur eine Printausgabe bei Tastenbetätigung erfolgt. Am einfachsten ersetzt Du diese Zeile duch eine Sprunganweisung ( ON VAR GOSUB ) in Unterprogramme. Von dort aus schaltest Du dann die Relais. ' --- Definitions -------------------- define Analog AD[8] ' Inputport define Eingabe byte[1] ' Input define Vergleich byte[2] ' reference define Taste byte[3] ' Button define Alt byte[4] ' Old Value define N byte[5] ' Counter ' --- Program Operationen ------ Alt = 0: Taste = 0 #Loop Taste = 0 Eingabe = Analog for N = 0 to 11 looktab Spannungen, N, Vergleich if abs(Eingabe-Vergleich)<3 then Taste=N+1 next if Taste = Alt then goto Loop Alt = Taste if Taste = 0 then goto Loop print Taste-1 ' HIER SPRUNG IN UNTERPROGRAMME ZUM SCHALTEN DER RELAIS goto Loop table Spannungen 152 173 90 0 193 111 23 214 132 46 68 235 tabend Gruss, Peter |
| Antwort schreiben |