
|
INFO - FAQ - CC2-Forum - CCPro-Forum |
|
>Hallo Dein Problem ist ganz logisch, du verwendest byteport 2 und dieser beinhaltet die digiports 9-16. Lies mal in der Beschreibung. gruss gerd ' Hallo liebes Forum, ich bin hier auf ein unlösbares Problem in > ' meinem sehr simpelen Programm gestoßen. > > ' Ich schalte Port[16] an, doch er geht nach dem Schreiben auf > ' mein LCD_Display einfach aus. ????? Warum ????? > > ' anbei mein Source... hoffe er ist einigermaßen Übersichtlich... > > ' Ich wäre für ein wenig hilfe wirklich dankbar.... > > ' LG Chris INFO@Sturmfabrik.de > > > > > ' ---- cut here :) ----- > > 'Definition LCD-Ports > >    define lcd_buf byte >    define lcd_param byte >    define i byte >    define l byte >    define LCD_VARIABLE byte >    define lcd_port byteport[2] >    define lcd_rs port[14] >    define lcd_rw port[13] >    define lcd_e port[15] > > > 'Definiton LCD-Letterset > >    define A_ &H41 >    define B_ &H42 >    define C_ &H43 >    define D_ &H44 >    define E_ &H45 >    define F_ &H46 >    define G_ &H47 >    define H_ &H48 >    define I_ &H49 >    define J_ &H4A >    define K_ &H4B >    define L_ &H4C >    define M_ &H4D >    define N_ &H4E >    define O_ &H4F >    define P_ &H50 >    define Q_ &H51 >    define R_ &H52 >    define S_ &H53 >    define T_ &H54 >    define U_ &H55 >    define V_ &H56 >    define W_ &H57 >    define X_ &H58 >    define Y_ &H59 >    define Z_ &H5A >    define NUM1_ &H31 >    define NUM2_ &H32 >    define NUM3_ &H33 >    define NUM4_ &H34 >    define NUM5_ &H35 >    define NUM6_ &H36 >    define NUM7_ &H37 >    define NUM8_ &H38 >    define NUM9_ &H39 >    define LZ &H20 >    define MINUS &H2D >    define NULL &H30 >    define stern &H2a >    define GLEICH &H3D >    define DOPPELPUNKT &H3A > > > 'Definition Digital-Ports > >    define ausgang1 port[1] >    define ausgang2 port[2] >    define ausgang3 port[3] >    define ausgang4 port[4] >    define ausgang5 port[5] >    define ausgang6 port[6] >    define ausgang7 port[7] >    define ausgang8 port[8] >    define ausgang16 port[16] >    define analog1 ad[1] >    >    > 'Das Programm .... > > ausgang16=on          ' ausgang16 anschalten (LED leuchtet) > wait (analog1=255)       ' warten das der Taster am analogport1 gedrückt wird > beep 250000,10,20        ' Kiloherzpiepen als Einschaltsound > > gosub LCD_CLS          'LCD_DISPLAY initialisieren bzw. löschen > > > > > > 'In erste Zeile des LCD_Display ersten 15 Zeichen schreiben > >    lcd_param = 1 : gosub LCD_GOTOLINE > >      for i = 0 to 14 >        looktab titeltext, i, LCD_VARIABLE >        lcd_param = LCD_VARIABLE :gosub LCD_SCHREIBEN >      next > > > > > > 'In Zweite Zeile des LCD_Display zweiten 15 Zeichen schreiben > >    lcd_param = 2 : gosub LCD_GOTOLINE > >      for i = 15 to 29 >        looktab titeltext, i, LCD_VARIABLE >        lcd_param = LCD_VARIABLE :gosub LCD_SCHREIBEN >      next > > > > > > pause 200            'nach dem Schreiben warten > > > > > >    for i=0 to 15 > >         lcd_param=1: gosub LCD_GOTOLINE 'erste Zeile des LCD Display wählen >         gosub LCD_SHIFT_LEFT      'LCD Display Zeile nach Links schieben > >         LCD_Param=2: gosub LCD_GOTOLINE 'zweite Zeile des LCD Display wählen >         gosub LCD_SHIFT_LEFT      'LCD Display Zeile nach Links schieben >         >     next > > > > > > > gosub LCD_CLS 'LCD Display löschen und zurücksetzen         > > > > lcd_param = 1 : gosub LCD_GOTOLINE       'erste Zeile des LCD Display wählen > > > > 'Meldung für Ausgang1 ausgeben. "AUSGANG1" > >    for i = 0 to 12 >      looktab aeins, i, LCD_VARIABLE >      lcd_param = LCD_VARIABLE :gosub LCD_SCHREIBEN >    next > > > > > > > lcd_param = 2 : gosub LCD_GOTOLINE       'zweite Zeile des LCD Display wählen > > > > > > > 'Meldung für Ausgang1 ausgeben. "-**************-" > >    for i = 0 to 15 >      looktab balken, i, LCD_VARIABLE >      lcd_param = LCD_VARIABLE :gosub LCD_SCHREIBEN >    next > > > > ausgang1=on                   ' Digitalausgang 1 anschalten > > > > > pause 20           'nen bisschen warten, damit Spannungsspitzen ausgeschlossen werden. > > > > > lcd_param = 1 : gosub LCD_GOTOLINE > > > > > > ' S.O. Schaltmeldung ausgeben.... "BETRIEBSBEREIT" >   for i = 0 to 15 >    looktab schaltmeldung, i, LCD_VARIABLE >    lcd_param = LCD_VARIABLE :gosub LCD_SCHREIBEN >   next >  >  > > > beep 250000,10,25 > > pause 50 > > end > > > > > > > > > > > > 'LCD DISPLAY STEUERSET > > #LCD_INIT > lcd_port = OFF > lcd_param=&H38 : gosub LCD_WRITECMD > lcd_port=&B00000010 > tog lcd_e > tog lcd_e > lcd_param = &H28 : gosub LCD_WRITECMD > lcd_param = &H0C : gosub LCD_WRITECMD > > #LCD_CLS > lcd_param = &H02 : gosub LCD_WRITECMD > lcd_param = &H01 : gosub LCD_WRITECMD > return > > #LCD_SHIFT_RIGHT > lcd_param = &B00011100 : gosub LCD_WRITECMD > return > > #LCD_SHIFT_LEFT > lcd_param = &B00011000 : gosub LCD_WRITECMD > return > > #LCD_GOTOLINE > if lcd_param = 1 then lcd_param = &H80 > if lcd_param = 2 then lcd_param = &HC0 > goto LCD_WRITECMD > > #LCD_WRITECMD > lcd_buf = OFF > goto LCD_WRITE > > #LCD_SCHREIBEN > lcd_buf = &B00100000 > > #LCD_WRITE > lcd_port = lcd_buf or (lcd_param shr 4) ' Hi-Nibble > tog lcd_e > tog lcd_e > lcd_port = lcd_buf or (lcd_param and &H0F) ' Lo-Nibble > tog lcd_e > tog lcd_e > return > > > > > 'MELDUNGSSET > > table titeltext > NUM9_ K_ W_ lz minus lz B_ R_ O_ A_ D_ C_ A_ S_ T_ P_ O_ W_ E_ R_ C_ O_ N_ N_ E_ C_ T_ I_ O_ N_ > tabend > > table aeins > A_ U_ S_ G_ A_ N_ G_ NUM1_ lz NUM2_ NUM3_ NULL V_ > tabend > > table azwei > A_ U_ S_ G_ A_ N_ G_ NUM2_ lz NUM2_ NUM3_ NULL V_ > tabend > > table adrei > A_ U_ S_ G_ A_ N_ G_ NUM3_ lz NUM2_ NUM3_ NULL V_ > tabend > > table avier > A_ U_ S_ G_ A_ N_ G_ NUM4_ lz NUM2_ NUM3_ NULL V_ > tabend > > table afuenf > A_ U_ S_ G_ A_ N_ G_ NUM5_ lz NUM2_ NUM3_ NULL V_ > tabend > > table asechs > A_ U_ S_ G_ A_ N_ G_ NUM6_ lz NUM2_ NUM3_ NULL V_ > tabend > > table asieben > A_ U_ S_ G_ A_ N_ G_ NUM7_ lz NUM2_ NUM3_ NULL V_ > tabend > > table aacht > A_ U_ S_ G_ A_ N_ G_ NUM8_ lz NUM2_ NUM3_ NULL V_ > tabend > > > table schaltmeldung > lz B_ E_ T_ R_ I_ E_ B_ S_ B_ E_ R_ E_ I_ T_ lz > tabend > > table balken > minus lz stern stern stern stern stern stern stern stern stern stern stern stern lz minus > tabend > > > > > > > > > ' ---- cut here ----- > > > > |
| Antwort schreiben |