Αγαπητοί μας φίλοι,

Καλώς ήλθατε στην ιστοσελίδα μας. Ελπίζουμε η παραμονή σας κοντά μας να είναι για σας εποικοδομητική εμπειρία.

Προσπαθούμε με διαρκή επαφή μαζί σας να σας ενημερώνουμε για διάφορα ρομποτικα θέματα ποιότητας που ενδεχομένως να σας ενδιαφέρουν.

Σας ευχαριστούμε για το ενδιαφέρον σας και σας ευχόμαστε καλή συνέχεια.

Εγγραφείτε στο φόρουμ, είναι εύκολο και γρήγορο

Αγαπητοί μας φίλοι,

Καλώς ήλθατε στην ιστοσελίδα μας. Ελπίζουμε η παραμονή σας κοντά μας να είναι για σας εποικοδομητική εμπειρία.

Προσπαθούμε με διαρκή επαφή μαζί σας να σας ενημερώνουμε για διάφορα ρομποτικα θέματα ποιότητας που ενδεχομένως να σας ενδιαφέρουν.

Σας ευχαριστούμε για το ενδιαφέρον σας και σας ευχόμαστε καλή συνέχεια.

Θέλετε να αντιδράσετε στο μήνυμα; Φτιάξτε έναν λογαριασμό και συνδεθείτε για να συνεχίσετε.
Καλως ηρθατε στην κοινοτητα μας,για οποιαδηποτε απορια στειλετε e-mail στο info@batteryworld.gr

    ΠΑΡΑΔΕΙΓΜΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ LCD ΟΘΟΝΗΣ ΜΕ BS2

    dimbot
    dimbot
    Master


    Αριθμός μηνυμάτων : 344
    Ημερομηνία εγγραφής : 22/12/2009

    ΠΑΡΑΔΕΙΓΜΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ LCD ΟΘΟΝΗΣ ΜΕ BS2 Empty ΠΑΡΑΔΕΙΓΜΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ LCD ΟΘΟΝΗΣ ΜΕ BS2

    Δημοσίευση  dimbot Δευ Ιαν 18, 2010 10:54 pm

    Κώδικας:

    ' -----[ Program Description ]---------------------------------------------


    ' -----[ Revision History ]------------------------------------------------


    ' -----[ I/O Definitions ]-------------------------------------------------

    TX              PIN    0              ' serial output to LCD


    ' -----[ Constants ]-------------------------------------------------------

    #SELECT $STAMP
      #CASE BS2, BS2E, BS2PE
        T2400      CON    396
        T9600      CON    84
        T19K2      CON    32
      #CASE BS2SX, BS2P
        T2400      CON    1021
        T9600      CON    240
        T19K2      CON    110
    #ENDSELECT

    LcdBaud        CON    T19K2

    LcdBkSpc        CON    $08            ' move cursor left
    LcdRt          CON    $09            ' move cursor right
    LcdLF          CON    $0A            ' move cursor down 1 line
    LcdCls          CON    $0C            ' clear LCD (use PAUSE 5 after)
    LcdCR          CON    $0D            ' move pos 0 of next line
    LcdBLon        CON    $11            ' backlight on
    LcdBLoff        CON    $12            ' backlight off
    LcdOff          CON    $15            ' LCD off
    LcdOn1          CON    $16            ' LCD on; cursor off, blink off
    LcdOn2          CON    $17            ' LCD on; cursor off, blink on
    LcdOn3          CON    $18            ' LCD on; cursor on, blink off
    LcdOn4          CON    $19            ' LCD on; cursor on, blink on
    LcdLine1        CON    $80            ' move to line 1, column 0
    LcdLine2        CON    $94            ' move to line 2, column 0

    LcdCC0          CON    $F8            ' define custom char 0
    LcdCC1          CON    $F9            ' define custom char 1
    LcdCC2          CON    $FA            ' define custom char 2
    LcdCC3          CON    $FB            ' define custom char 3
    LcdCC4          CON    $FC            ' define custom char 4
    LcdCC5          CON    $FD            ' define custom char 5
    LcdCC6          CON    $FE            ' define custom char 6
    LcdCC7          CON    $FF            ' define custom char 7


    ' -----[ Variables ]-------------------------------------------------------

    idx1            VAR    Byte
    idx2            VAR    Byte
    char            VAR    Byte
    newChar        VAR    Byte


    ' -----[ EEPROM Data ]-----------------------------------------------------

    '                      C#----  Data----------------------------------
    CC0            DATA    LcdCC0, $0E, $1F, $1C, $18, $1C, $1F, $0E, $00
    CC1            DATA    LcdCC1, $0E, $1F, $1F, $18, $1F, $1F, $0E, $00
    CC2            DATA    LcdCC2, $0E, $1F, $1F, $1F, $1F, $1F, $0E, $00
    Smiley          DATA    LcdCC3, $00, $0A, $0A, $00, $11, $0E, $06, $00

    Msg2            DATA    "IS VERY COOL!  ", 3


    ' -----[ Initialization ]--------------------------------------------------

    Reset:
      HIGH TX                              ' setup serial output pin
      PAUSE 100                            ' allow LCD to initialize

    DnLoad_Custom_Chars:
      FOR idx1 = 0 TO 35                    ' download 4 characters
        READ CC0 + idx1, char              ' get data from table
        SEROUT TX, LcdBaud, [char]          ' send to LCD
      NEXT


    ' -----[ Program Code ]----------------------------------------------------

    ' Clear the display and remove cursor and blinking attributes.

    Main:
      SEROUT TX, LcdBaud, [LcdBLoff, LcdOn1, LcdCls]
      PAUSE 250
      SEROUT TX, LcdBaud, ["THE BASIC STAMP"]


    ' Scroll "chomper" animation across LCD line 2

    Animation:
      FOR idx1 = 0 TO 15                    ' scroll across line
        READ (Msg2 + idx1), newChar        ' read new character
        FOR idx2 = 0 TO 4                  ' animate a current position
          LOOKUP idx2, [0, 1, 2, 1, newChar], char
          SEROUT TX, LcdBaud, [(LcdLine2 + idx1), char]
          PAUSE 75
        NEXT
      NEXT


    ' Flash LCD backlight (works only with backlit model)

    Flash:
      FOR idx1 = 1 TO 4
        SEROUT TX, LcdBaud, [LcdBLon]
        PAUSE 750
        SEROUT TX, LcdBaud, [LcdBLoff]
        PAUSE 250
      NEXT

      GOTO Main
      END


    ' -----[ Subroutines ]-----------------------------------------------------

    ΠΗΓΗ: www.parallax.com

      Η τρέχουσα ημερομηνία/ώρα είναι Παρ Απρ 26, 2024 9:05 pm