Thông báo

Collapse
No announcement yet.

Các Đề Tài VDK 8051

Collapse
X
 
  • Lọc
  • Giờ
  • Show
Clear All
new posts

  • #76
    Xin chào mọi người! Bác nào có key của phần mềm virtual serial port driver không share cho mình với....xin cám ơn thật nhiều nhiều....

    Comment


    • #77
      Nguyên văn bởi hoangphat Xem bài viết
      sau đây em chia sẽ thêm bài đèn giao thông (thấy nhìu người cần bài này)
      đây là mạch đèn dùng cho ngã tư

      đây là code
      Code:
      org 000H
      ljmp begin
      org 30h
      
      #define DEN1 P0
      #define DEN2 P2
      #define TIME1 R4
      #define TIME2 R5
      #define NUM1 R6
      #define NUM2 R7
      
      RED1 BIT P3.0
      Y1 BIT P3.1
      B1 BIT P3.2
      RED2 BIT P3.3
      Y2 BIT P3.4
      B2 BIT P3.5
      
      BEGIN:
      ;----------KHOI TAO-----
      MOV P3,#00H
      SETB B1
      SETB RED2
      MOV TIME1,#26
      MOV TIME2,#31
      MOV NUM1,#1
      MOV NUM2,#1
      
      LOOP:
      
      DEC TIME1
      DEC TIME2
      LCALL HIEN_THI
      LCALL DELAY1S
      
      CJNE TIME1,#0,KT_DEN2
      
      CJNE NUM1,#1,KT_NUM1_2
      MOV NUM1,#2
      MOV TIME1,#6
      CLR B1
      SETB Y1
      LJMP KT_DEN2
      
      KT_NUM1_2:
      CJNE NUM1,#2,KT_NUM1_3
      MOV NUM1,#3
      MOV TIME1,#31
      CLR Y1
      SETB RED1
      LJMP KT_DEN2
      
      KT_NUM1_3:
      MOV NUM1,#1
      MOV TIME1,#26
      CLR RED1
      SETB B1
      LJMP KT_DEN2
      
      KT_DEN2:
      
      CJNE TIME2,#0,LOOP
      
      CJNE NUM2,#1,KT_NUM2_2
      MOV NUM2,#2
      MOV TIME2,#26
      CLR RED2
      SETB B2
      LJMP LOOP
      
      KT_NUM2_2:
      CJNE NUM2,#2,KT_NUM2_3
      MOV NUM2,#3
      MOV TIME2,#6
      CLR B2
      SETB Y2
      LJMP LOOP
      
      KT_NUM2_3:
      MOV NUM2,#1
      MOV TIME2,#31
      CLR Y2
      SETB RED2
      LJMP LOOP
      
      HIEN_THI:
      MOV A,TIME1
      MOV B,#10
      DIV AB
      RL A
      RL A
      RL A
      RL A
      ADD A,B
      MOV DEN1,A
      
      MOV A,TIME2
      MOV B,#10
      DIV AB
      RL A
      RL A
      RL A
      RL A
      ADD A,B
      MOV DEN2,A
      RET
      
      DELAY1S:
      mov r1,#100
      noop1:
      mov r2,#500
      noop2:
      mov r3,#20
      noop3:
      djnz r3,noop3
      djnz r2,noop2
      djnz r1,noop1
      
      ret
      END
      chúc các pác thành công
      anh ới post lại hình cho em xem với em cần lắm anh ạ!thank anh
      mà anh ơi sao không có đèn led 7 đoạn đếm ngược à, em cần thêm đếm nữa
      Last edited by hamster.khin; 02-11-2010, 22:33.

      Comment


      • #78
        Đo nhiệt độ hiển thị lcd với lm35

        Giống với led7 nhưng hiển thị trên lcd (cái này không phải của mình):
        Code:
        #include <sfr51.inc>
            RS BIT P0.0
            RW BIT P0.1
            EN BIT P0.2    
            DATA_LCD EQU P2
            WRA BIT P3.1
            INT BIT P3.2
            RDA BIT P3.0
        ;==================================
        MAIN:
            MOV P3,#0FFH
            MOV R0,#0
            MOV TMOD,#10H
            MOV A,#3CH
        	LCALL LCD_COMMAND
        	MOV A,#0CH
        	LCALL LCD_COMMAND
        	MOV A,#01H
        	LCALL LCD_COMMAND
            MOV P1,#0FFH;chon p1 la cong vao
        BACK:
           SETB INT
           CLR WRA;dat wr=0
           SETB WRA ;dat wr=1 de bat dau chuyen doi
          HERE:
           JB INT,HERE;cho intr to de ket thuc chuyen doi
           CLR RDA;ket thuc chuyen doi cho phep doc rd
           MOV A,#01H
           LCALL LCD_COMMAND
           MOV A,#80H
           LCALL LCD_COMMAND
           MOV DPTR,#STR
           LCALL WRITE_CH
           MOV A,#C0H
           LCALL LCD_COMMAND
           MOV A,P1;doc du lieu vao thanh ghi a
           LCALL HIEN_THI
           SETB RDA;dua rd=1 de cho lan doc sau
           LCALL TRE500MS
           SJMP BACK
        ;---------------
        HIEN_THI:
           MOV B,#2
           DIV AB
           MOV R2,B
           MOV B,#10
           DIV AB
           MOV R3,B
           MOV B,#10
           DIV AB
           MOV R4,B
           MOV R5,A
           CJNE A,#0,TG
           SJMP TG1
           TG: LCALL WRITE_NUM
           MOV A,R4
           LCALL WRITE_NUM
           MOV A,R3
           LCALL WRITE_NUM
           SJMP TG4
           TG1:
           MOV A,R4
           CJNE A,#0,TG2
           SJMP TG3
           TG2: LCALL WRITE_NUM
           TG3:
           MOV A,R3
           LCALL WRITE_NUM
           TG4:
           MOV A,#'.'
           LCALL WRITE
           CJNE R2,#1,TK
           MOV A,#5
           LCALL WRITE_NUM
           SJMP TK1
           TK:
           MOV A,#0
           LCALL WRITE_NUM
           TK1:
        RET
        ;==================================
        WRITE_NUM:
            MOV DPTR,#STR1
            MOVC A,@A+DPTR
            LCALL WRITE
        RET
        ;----------------
        WRITE:
        	SETB RS
        	CLR RW
            SETB EN
        	MOV DATA_LCD,A
        	CLR EN
        	LCALL WAIT_LCD
        	RET
        ;---------------
        WRITE_CH:
        	MOV A,R0
        	MOVC A,@A+DPTR
        	CJNE A,#'#',TT
        	SJMP EXIT_WR
        TT:
        	LCALL WRITE
        	INC R0
        	SJMP WRITE_CH
        EXIT_WR:
        	MOV R0,#0
        	RET
        ;---------------
        LCD_COMMAND:
        	
        	CLR RS
        	CLR RW
            SETB EN
        	MOV DATA_LCD,A
        	CLR EN
        	LCALL WAIT_LCD
        	RET
        ;---------------
        WAIT_LCD:
        	SETB RW
        	CLR RS
        	CLR EN
        	MOV DATA_LCD,#0FFH
        	SETB EN
        	JB DATA_LCD.7,WAIT_LCD
        	CLR EN
        	CLR RW
        	RET
        ;---------------
        TRE500MS:
        MOV R1,#50
        TRE:
        MOV TH1,#HIGH(-10000)
        MOV TL1,#LOW(-10000)
        CLR TF1
        SETB TR1
        TRE1: JNB TF1,TRE1
        CLR TR1
        DJNZ R1,TRE
        RET
        ;---------------
        STR1:
        DB	"0123456789"
        ;----------------
        STR: DB "NHIET DO (oC) #"
        ;==================================
        END
        Tiện mọi người cho hỏi bao nhiêu bài viết thì được edit bài cũ thoải mái nhỉ?

        Comment


        • #79
          post lại ảnh cho bài đèn giao thông đếm ngược
          Click image for larger version

Name:	traffic.jpg
Views:	1
Size:	136.4 KB
ID:	1345657
          chúc các pác vui và thành công
          8051 là con em viết thành thạo. em sẵn sàng giúp đỡ các pác nếu em có thể
          liên lạc với em qua địa chi email: Mob: 01882.076.989

          Comment


          • #80
            moi nguoi oi co ai giup minh mach quang cao voi.mach cua minh lamchu HAPPY NEW YEAR .moi chu cai cua minh co 50 con led do .minh chua giao tiep duoc .ai co the cho minh xin mach nguyen ly duoc ko.gui cho minh vao day nhe : lehung2891987@gmail.com.
            cam on moi nguoi rat nhieu

            Comment


            • #81
              day la mach giao thong nga tu co uu tien vao ba dem.minh lam bang VDK ban nao can thi vao day lay nhe.duoi day la mach va chuong trinh cua minh.http//:mediafire.com/lehung

              Comment


              • #82
                o co trao doi gi thi liên he voi minh nhe.lehung2891987@gmail.com

                Comment


                • #83
                  Nguyên văn bởi hoangphat Xem bài viết
                  post lại ảnh cho bài đèn giao thông đếm ngược
                  [ATTACH]25634[/ATTACH]
                  chúc các pác vui và thành công
                  à há! Bác lấy mạch của ai vậy!hiii...Giá trị lịnh kiện của mạch reset sao hỏng đúng vậy!

                  Comment


                  • #84
                    mach nay minh lam bai tap lam do

                    Comment


                    • #85
                      Nguyên văn bởi robocon2011 Xem bài viết
                      à há! Bác lấy mạch của ai vậy!hiii...Giá trị lịnh kiện của mạch reset sao hỏng đúng vậy!
                      uhm sai đúng rồi mạch này em vẽ cũng lâu rồi mà nó đâu quan trọng miễn mạch thật làm tốt là đc rồi nó là mạch mô phỏng mà
                      8051 là con em viết thành thạo. em sẵn sàng giúp đỡ các pác nếu em có thể
                      liên lạc với em qua địa chi email: Mob: 01882.076.989

                      Comment


                      • #86
                        ở đây cũng khá nhiều mạch rồi, các bạn chắc cũng hiểu biết về timer và counter quá rỏ rồi. bây giờ chúng ta nói về truyền thông nối tiếp nhé. tôi biết các bạn cũng quan tâm đến vấn đề này lám. viết giao diện visual basic 6.0 và truyền nhận dữ liệu qua cỏng com nhe..nếu các bạn thấy đúng thì chúng ta cùng trao đổi...

                        Comment


                        • #87
                          cảm ơn vu_spiderman.mình đọc mãi mới đến phần này.Mình đang lập trình VB giao tiếp với VDK 89c51 qua 232 để điều khiển 2 động cơ bước quay thuận nghịch.bạn cho mình hỏi cái các lệnh ở phần
                          Private Sub mnuConnect_Click()
                          Private Sub mnuCom_Click
                          Private Sub UpdateStatus()
                          Private Function ValidatePort() As Boolean
                          Private Sub SetPort(NewSettings As String)
                          Private Sub mnuDataBSel_Click(Index As Integer)
                          Private Sub mnuParitySel_Click(Index As Integer)
                          Private Sub mnuSpeedSel_Click(Index As Integer)
                          Private Sub mnuStopSel_Click(Index As Integer)
                          có nghĩa là gì .mấy cái này đõng vai trò gì
                          mong được chỉ giáo .thanks

                          Comment


                          • #88
                            Nguyên văn bởi pipo198 Xem bài viết
                            cảm ơn vu_spiderman.mình đọc mãi mới đến phần này.Mình đang lập trình VB giao tiếp với VDK 89c51 qua 232 để điều khiển 2 động cơ bước quay thuận nghịch.bạn cho mình hỏi cái các lệnh ở phần
                            Private Sub mnuConnect_Click()
                            Private Sub mnuCom_Click
                            Private Sub UpdateStatus()
                            Private Function ValidatePort() As Boolean
                            Private Sub SetPort(NewSettings As String)
                            Private Sub mnuDataBSel_Click(Index As Integer)
                            Private Sub mnuParitySel_Click(Index As Integer)
                            Private Sub mnuSpeedSel_Click(Index As Integer)
                            Private Sub mnuStopSel_Click(Index As Integer)
                            có nghĩa là gì .mấy cái này đõng vai trò gì
                            mong được chỉ giáo .thanks
                            no don gian thôi bat dau cua chuong trinh do ma..ban xem lai cau truc trong chuong trinh VB ban se hieu thoi:
                            private sub tenchuongtrinh/tensukien(bien tham chieu)

                            Comment


                            • #89
                              cảm ơn vu_spiderman rất nhiều

                              Comment


                              • #90
                                anh có thể giúp em về đồ án dùng 89c51 điều khiển động cơ DC được không? Cảm ơn anh nhiều!

                                Comment

                                Về tác giả

                                Collapse

                                vu_spiderman Tìm hiểu thêm về vu_spiderman

                                Bài viết mới nhất

                                Collapse

                                Đang tải...
                                X