1. THÔNG BÁO TUYỂN ADMIN DIỄN ĐÀN 2013
    Tìm kiếm nhà trọ - Ở ghép
    THÔNG BÁO BÁN ÁO SPKT.NET CHO THÀNH VIÊN DIỄN ĐÀN


    HÃY TÌM KIẾM Ở ĐÂY TRƯỚC KHI ĐẶT CÂU HỎI
    {xen:phrase loading}

Giúp đoạn code về truyền thông nối tiếp

Thảo luận trong 'CLB Điện - Điện tử' bắt đầu bởi hackerlinz, 25 Tháng năm 2012.

  1. hackerlinz New Member

    Số bài viết: 20
    Đã được thích: 0
    Điểm thành tích: 0
    Mình có đoạn code nhấn một phím là nó hiển thị một kí tự, mình muốn thêm phần truyền thông nối tiếp vào đoạn code nhưng không biết thêm từ chỗ nào? Các bạn giúp mình nha, luôn tiện các bạn giải thích cho mình từng dòng lệnh luôn, thanks

    Code:

    ; NHAN PHIM HIEN THI CAC KI TU
    ORG 0000H
    B00: MOV DPTR,#MA_7_DOAN
    MOV R2,#00H ;BIEN DEM
    B11: JB P1.0,B11
    MOV A,R2
    MOVC A,@A+DPTR
    MOV P0,A
    CALL DELAY
    INC R2
    CJNE R2,#10,B11
    SJMP B00
    DELAY: MOV R0,#20
    DEL1: MOV TMOD,#01H
    MOV TH0,#3CH
    MOV TL0,#0B0H
    SETB TR0
    JNB TF0,$
    CLR TF0
    DJNZ R0,DEL1
    RET
    MA_7_DOAN:
    DB 0C0H, 0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
    END


  2. minhthanh_mtp New Member

    Số bài viết: 24
    Đã được thích: 0
    Điểm thành tích: 1
  3. vancanh Member

    Số bài viết: 67
    Đã được thích: 1
    Điểm thành tích: 6
  4. minhthanh_mtp New Member

    Số bài viết: 24
    Đã được thích: 0
    Điểm thành tích: 1
  5. minhthanh_mtp New Member

    Số bài viết: 24
    Đã được thích: 0
    Điểm thành tích: 1
    Bạn Vancanh code không chạy, mình đã sữa lại nhưng vẫn bị lỗi. Bạn coi giúp mình nha

    Phần phat:

    ; NHAN PHIM HIEN THI CAC KI TU
    ORG 0000
    MOV SCON,#50H ;KHOI TAO THANH GHI SCON
    MOV TMOD,#20H ;KHOI TAO THANH GHI TMOD DE TRUYEN DU LIEU TIMER1
    MOV TH1,#-3 ;DUNG TIMER 1 DE DIEU KHIEN TOC DO BAUD
    SETB TR1 ;CHO TIMER 1 CHAY
    MOV DPTR,#MA_7_DOAN
    MOV R2,#00H ;BIEN DEM


    B11:
    JB P1.0,B11
    CALL DELAY50MS ;DELAY100MS DE CHONG DONG PHIM
    CALL DELAY50MS
    INC R2
    CJNE R2,#11,B12
    MOV R2,#0
    B12: MOV A,R2
    MOVC A,@A+DPTR




    MOV SBUF,A ;DUA DU LIEU VAO THANH DI DEM PHAT
    JNB TI,$ ;KIEM TRA CO TI =1 KHI DA PHAT XONG DU LIEU
    CLR TI ;XOA CO TI DE CHUAN BI CHO LAN PHAT TIEP THEO
    JMP B11
    DELAY50MS:

    Phần thu:

    ORG 0000H
    MOV SCON,#50H
    MOV TMOD,#20H
    MOV TH1,#-3
    SETB TR1
    MOV P0,#0FFH
    TD:JNB RI,TD ;KIEM TRA CO RI XEM CO DU LIEU TRONG DEM THU CHUA-KHI CO DATA THI CO RI=1
    CLR RI ;XOA CO RI CHO LAN NHAN TIEP THEO
    MOV A,SBUF ;LAY DATA DUA VAO THANH GHI A DE XU LY
    MOV P0,A
    JNB RI,TD
    END

    Khi nhấn phím đầu tiên nó không hiển thị số 0 mà nó hiển thị số 1, khi nhấn đến số cuối cùng thì ok nhấn 1 lần nửa nó không lặp lại mà hiển thị số 8
  6. vancanh Member

    Số bài viết: 67
    Đã được thích: 1
    Điểm thành tích: 6
    Bạn đã copy đầy đủ code của mình viết chưa. Code mình viết cho bạn ở trên đã test trên proteus và chạy ok. bạn xem kỹ lại. Bạn down lại file về desktop.rar test lại
  7. minhthanh_mtp New Member

    Số bài viết: 24
    Đã được thích: 0
    Điểm thành tích: 1
    Ý mình là chỉ có con IC tớ hiển thị thôi, còn con IC chủ không hiển thị gì hết. Lúc đầu không cho hiển thị gì hết ,Khi nhấn công tắc thì mới hiển thị số. Bạn giúp mình nha, thanks
  8. vancanh Member

    Số bài viết: 67
    Đã được thích: 1
    Điểm thành tích: 6
    Mình viết như thế là đã giao tiếp được rồi. Bạn nên nghiên cứu để biết cách chỉnh sửa cho đúng yêu cầu. Nếu bạn chỉnh sửa được thì có nghĩa là bạn hiểu thì nó sẽ cái của bạn chứ ko phải của người khác. Chúc bạn thành công.
  9. minhthanh_mtp New Member

    Số bài viết: 24
    Đã được thích: 0
    Điểm thành tích: 1
    Mình làm được rồi, thanks bạn nhiều

    Phát:

    ; NHAN PHIM HIEN THI CAC KI TU
    ORG 0000H
    MOV DPTR,#MA_7_DOAN


    MOV TMOD,#20H ;KHOI TAO THANH GHI TMOD DE TRUYEN DU LIEU TIMER1
    MOV SCON,#50H ;KHOI TAO THANH GHI SCON
    MOV TH1,#-3 ;DUNG TIMER 1 DE DIEU KHIEN TOC DO 9600 BAUD
    SETB TR1 ;CHO TIMER 1 CHAY


    B11: JB P1.0,B11
    CALL DELAY50MS ;DELAY100MS DE CHONG DONG PHIM
    CALL DELAY50MS
    CJNE R2,#10,B12
    MOV R2,#00H ;BIEN DEM
    B12: MOV A,R2
    INC R2
    MOVC A,@A+DPTR
    MOV SBUF,A ;DUA DU LIEU VAO THANH DI DEM PHAT
    JNB TI,$ ;KIEM TRA CO TI =1 KHI DA PHAT XONG DU LIEU
    CLR TI ;XOA CO TI DE CHUAN BI CHO LAN PHAT TIEP THEO
    JMP B11
    DELAY50MS:
    MOV 7EH,#200
    DEL50MS:
    MOV 7FH,#250
    DJNZ 7FH,$
    DJNZ 7EH,DEL50MS
    RET


    MA_7_DOAN:
    DB 0C0H, 0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
    END

    Thu:

    ORG 0000H
    MOV TMOD,#20H
    MOV SCON,#50H
    MOV TH1,#-3
    SETB TR1 ;KHOI DONG TIMER1
    MTP: JNB RI,MTP ;KIEM TRA CO RI XEM CO DU LIEU TRONG DEM THU CHUA-KHI CO DATA THI CO RI=1
    CLR RI ;XOA CO RI CHO LAN NHAN TIEP THEO
    MOV A,SBUF ;LAY DATA DUA VAO THANH GHI A DE XU LY
    MOV P0,A
    SJMP MTP
    END

Chia sẻ trang này