Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum

Re: Tastaturabfrage mit Berechnung Kategorie: Programmierung C (von GEMINI1606 - 18.01.2010 12:14)
Als Antwort auf Tastaturabfrage mit Berechnung von Ehlers - 17.01.2010 23:02
Ich nutze:
C-Control Pro Mega128, CC-Pro 128 Application Board
> Hallo Kommune,
> Ich bin fürchterlicher Neuling in der Programmierung  der Ccontrol pro Mega 128,
> habe mir aber zum Ziel gesetzt meine Heizung mit diesem Teil zu steuern.
> Das Prog-Teil zur Ã?berwachung und Regelung der einzelnen Heizkreise habe ich zum laufen gebracht.
> Nun benötige ich noch eine Abfrage über die Folientastatur  um den Regelwert meiner Räume
> in die Steuerung zu implementieren.
> Dafür habe ich mir eine zweistellige Variable Ref ausgedacht.
> In meinem kleinen Testprogramm gelingt es mir auch  die Variablen g_zehner und g_einer einzu-
> lesen.
> Wo es bei mir nur hängt ist die Beiden zu verknüpfen, sodass ich aus G_zehner =2 und g_einer =3
> zum B. 23 in die Variable ref bekomme.
>
> Kann mir bitte einer der Experten helfen?
>
> Nicht lachen, dies ist das Testprogramm:
>
> void Tastenabfrage(void)
> {
>         do
>      {
>      if (count == 1)
>      {
>      label0:
>      key_in=Key_Scan();
>      if (key_in==0) goto label0;
>      key_ch=Key_TranslateKey(key_in);
>      AbsDelay(200);
>      g_zehner=key_ch;
>      a=g_zehner;
>      LCD_CursorPos(0x45);
>      LCD_WriteChar(g_zehner);
>      key_in=0;
>      }
>      if (count == 2)
>      {
>      ref = 0;
>      label1:
>      key_in=Key_Scan();
>      if (key_in==0) goto label1;
>      key_ch=Key_TranslateKey(key_in);
>      AbsDelay(200);
>      g_einer=key_ch;
>      LCD_CursorPos(0x45+1);
>      LCD_WriteChar(g_einer);
>     // ref =( g_zehner-48)*10+(g_einer-48); dies führt immer zu Fehlberechnungen !!!!!!!
>      LCD_CursorPos(0x54);
>      LCD_WriteChar(ref);
>      key_in=0;
>      }
>
>      count++;
>      AbsDelay(200);
>      if (count == 3)break;
>
>      }while(1);

Hallo Ehlers,

da du bereits ein Key_TranslateKey machst, müsste da nicht die Berrechnung so aussehen:

ref =(g_zehner*10)+g_einer;

kanns leider nicht testen, aber das sollte so gehen.

GruÃ?
GEMINI1606


    Antwort schreiben


Antworten:

Re: Tastaturabfrage mit Berechnung (von Ehlers - 18.01.2010 12:41)
    Re: Tastaturabfrage mit Berechnung (von KarlH - 18.01.2010 18:47)
        Re: Tastaturabfrage mit Berechnung (von Ehlers - 18.01.2010 23:01)
            Re: Tastaturabfrage mit Berechnung (von Ehlers - 19.01.2010 21:34)