Teade

Collapse

Foorumi reeglid.

Foorumi reeglistik on uuendatud. Palume tutvuda ja arvesse võtta.
See more
See less

LCD programm

Collapse
X
 
  • Filter
  • Kellaaeg
  • Show
Clear All
new posts

    LCD programm

    on 1X16 LCd
    DB0-DB3 on yhendatud GND'i
    DB4 LPT data 3
    DB5 LPT data 4
    DB6 LPT data 5
    DB7 LPT data 6
    Enable data 2
    RW__ data 1
    RS data 0

    kuna see asi on nii spetsiifiliselt ühendatud, siis pole sobivat programmi leidnud. Äkki keegi viitsiks midagi kirjutada... (tahaks nt panna sinna prose hõivatuse %)või kui seda ei saa, siis võiks kirjutada, mis yldse panna annaks sinna...


    #2
    Lase DB0-DB3 miinusest lahti ja kasuta levinud LPT ühendus viisi (8bit).

    Comment


      #3
      ei mul on vaja just nii seda asja ka juhtida... lihtsalt rohkem jalgu pole vabakasutuses ja muud moodi ei saa...

      vabandan yhe vea pärast. DB0 ja DB1 on flotima jäetud... mitte pole GND'is

      mida yldse nagu äidata annaks selle LCD'ga praegu?

      LCDst rohkem:
      pärit lauatelefonist
      HD44780 kivi baasil tehtud.

      Comment


        #4
        See on 4-bitine ühendusviis. Käsk ja daata saadetakse 2 portsuna. Midagi erilist selles pole, PICi jalgu hoiab kõvasti kokku. LCD initis ütled, et 4-bitine interfeis ja käske saadad samuti vastavalt.
        - Vend Hieronymus tunneb Motorola toodete nimekirja kõige paremini, las tema ütleb.
        - Motorola poolt loodud kiipide hulgas ei ole teda üles tähendatud. - Tähendab: ta on Intelist!

        Comment


          #5
          aga mõnda head softi arvutile pole?
          OP:XP home
          port:LPT
          vajadus: prose hõivatuse % ja hea oleks vee midagi näidata seal(temp nt) ei tea mis võimalik on... mingit winampimist vaja pole...

          Comment


            #6
            ok tundub, et mingit valmis softi pole, siis võiks ise kirjutada. teen basicus.

            kuidas see 4 bit rääkimine käib? kuidas ta aru saab, et nyyd tulevad need teised 4 biti vms. Ja mis tuleb veel teha, et alustada rääkimist... alustuseks prooviks lihtsalt asja tööle saada...

            ma olen nii aru saanud, et RS on high, kui ma talle neid saadan... ja low kui saadan muid käske...
            ja R\W on samuti HIGH
            ja Enable on kogu aeg high kui ma LCD'ga räägin...

            kuid pole aru saanud sellest kuidas saada datat temasse ja neist teistest käskudest... (e ma ei jaga midagi, mis DB jalgadesse jookseb)

            Comment


              #7
              RS=H, kui saadad daatat, LOW, kui käske.En strobeerib daata sisse.
              1. En=LOW
              2. RS= 1
              3. Daata vanem poolbait liinile (kui daata on 0x54, saadad ainult 5).
              4. En=1
              5. oota
              6. En=0
              7. Daata noorem 1/2 bait liinile (4)
              8. En=1
              9. oota
              10. En=0

              Enne kõike tee LCD-le init.

              Kood:
              ; *************************************************************************************************************
              ; ********************************************* lähtesta displeile ********************************************
              ; *************************************************************************************************************
              Init_LCD:    call  Wait_2ms    	&#59; las rahuneb veel veidi    
                movlw  b'00110000'   &#59; Set 8 bit interface 
                call  Send_CMD_W         
                movlw  b'00110000'   &#59; Set 8 bit interface     
                call  Send_CMD_W         
                movlw  b'00110000'   &#59; Set 8 bit interface     
                call  Send_CMD_W         
                movlw  b'00100000'   &#59; Set 4 bit interface     
                call  Send_CMD_W         
                movlw  b'00101000'   &#59; 4 bit 2 line 5x7     
                call  Send_CMD_4b         
                movlw  b'00001000'   &#59; Displei off     
                call  Send_CMD_4b         
                movlw  b'00000001'   &#59; Clear Display
                call  Send_CMD_4b         
                movlw  b'00000110'   &#59; Cursor increment no Shi(f)t     
                call  Send_CMD_4b         
                movlw  b'00001100'   &#59; Disp On Cursor Off Blink On     
                call  Send_CMD_4b         
                movlw  b'00101000'   &#59; 4 bit 2 line 5x7     
                call  Send_CMD_4b         
                return
              - Vend Hieronymus tunneb Motorola toodete nimekirja kõige paremini, las tema ütleb.
              - Motorola poolt loodud kiipide hulgas ei ole teda üles tähendatud. - Tähendab: ta on Intelist!

              Comment


                #8
                ok tänan... loodan et suudan välja nuputada ja homme midagi valmis kirjutada. kui veel kysida tahan, eks siis teate kust otsida

                Comment


                  #9
                  ok...

                  mis keeles see pisike koodijupp kirjutatud on?

                  kuidas see sama asi basicus välja võiks näha.

                  basic seda keelt ei tunne.

                  ja assemblerit ei oska...

                  võibola saaks isegi C'ga hakkama...(kasutades borland 5 või 4)

                  ma oletan et need movlw'd on need, mis saadavad porti infi...
                  aga need call käsud... neist ei saa midagi aru

                  Comment


                    #10
                    Teen teil elu lihtsaks, selleks on vaja LCD, natuke kaablit (printeri pordiga yhendamiseks, pistikuga voi jootes), takisti, plaadipotekas ja proge JALCDS. Lisan copy yhest foorumist. Otsingusona JALCDS.

                    Kui keegi soovib oma arvutile sellist LCD ekraani, mis oskab näidata arvuti kohta mitmesugust infot. Siis seda on lihtne ise valmistada.
                    Vajalikud detailid:
                    1.LCD display-saab tellida Tevalost, erinevate suurustega.(erinev ridade ja märkide arv)
                    Näiteks selline:L1672-B1J lCD 16x2 STN LE (908) (2realine, 16 märki reas)
                    http://www.tevalo.ee/cgi-bin/web_store.cgi...=9&pricelist=on
                    2.LPT pordi juhet.
                    3.Potensiomeeter 10k
                    4.Takisti ~30 oomi

                    Skeem on näiteks siin,
                    http://www.gideontech.com/guides/lcd/lcd06.gif
                    Jooda asjad selle järgi kokku.

                    Pildid valmistamisest siin:http://www.hot.ee/marec/lcd/

                    Siis installi driver,
                    saad siit, http://www.driverlinx.com/DownLoad/DlPortIO.htm

                    Tarkvara saad siit, http://www.jalcds.de/

                    kui tahad muud tarkvara proovida siis saad siit, http://lcdriver.pointofnoreturn.org/v1files.html

                    Veiko

                    Comment


                      #11
                      nagu ma juba ennist ütlesin, siis ma ei soovi seda klassikalist värki... mul on selline juba oemas... tahaks just seda 4bitist tööle saada...

                      Comment


                        #12
                        Call kutsub välja mingi alamprogrammi, Bascius on sellne käsk olemas küll.
                        movlw laeb registrisse W konstandi mis käsus teisel kohal, b tähendab binary väärtust. Basicus: mingi_muutuja= number (nt. muutuja = 56).
                        Callitav alamproge saatis etteantud numbri (käsu) LCD-le eespool kirjeldatud algoritmi alusel.

                        PS. Kood oli tõesti assembleris.
                        - Vend Hieronymus tunneb Motorola toodete nimekirja kõige paremini, las tema ütleb.
                        - Motorola poolt loodud kiipide hulgas ei ole teda üles tähendatud. - Tähendab: ta on Intelist!

                        Comment


                          #13
                          Originally posted by felch@Apr 29 2005, 21:09
                          RS=H, kui saadad daatat, LOW, kui käske.En strobeerib daata sisse.
                          1. En=LOW
                          2. RS= 1
                          3. Daata vanem poolbait liinile (kui daata on 0x54, saadad ainult 5).
                          4. En=1
                          5. oota
                          6. En=0
                          7. Daata noorem 1/2 bait liinile (4)
                          8. En=1
                          9. oota
                          10. En=0

                          kas punktid 1 ja 2 võib teha yhe käsiga?
                          ja kuidas ma selle daata sisse saadan?
                          out 888, xxxxx (mis x'ide asemele läheb)
                          ja kuidas aru saada, mis ma sinna saadan, et mis see 0x54 teeb nagu...

                          Comment


                            #14
                            Jah, En=0 olgu lähteseis, võngutad otsa vaid vajadusel. RS olgu vajalikul nivool kogu baidi saatmise tsükli jooksul.
                            Baidi sisuga on raskem. 1. poolbaidi võid saata lihtsalt otse porti, tema noorem poolbait läheb tuulde aga see pole tähtis.
                            2. poolbait tuleb tervest teisendada. Kui Basicus annab nihutada, tee nii:
                            - bait=bait & 0x0F (kümnendesüsteemis 0F=16)
                            - nihuta tulemust 4 korda vasakule, saad 0xF0 (240)
                            - saada tulemus porti (out 888, 240)
                            - Vend Hieronymus tunneb Motorola toodete nimekirja kõige paremini, las tema ütleb.
                            - Motorola poolt loodud kiipide hulgas ei ole teda üles tähendatud. - Tähendab: ta on Intelist!

                            Comment


                              #15
                              to felch. bloody tahab seda asja juhtida arvuti programmiga nagu aru sain, mitte PIC-iga. Või ma eksin?

                              to bloody-orc: kui Visual Basic käepärast siis tõmba SIIT
                              VB proge (LCD juhtimiseks läbi LPT) koos lähtekaga ja saad koodi muuta vastavalt vajadusele.
                              Aga jah kui PICiga siis hoopis teine lugu.

                              Comment

                              Working...
                              X