Thông báo

Collapse
No announcement yet.

Cho e hỏi về lập trình ngắt ngoài nhận xung

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

  • Cho e hỏi về lập trình ngắt ngoài nhận xung

    Có anh chị nào bít cách lập trình cho ngắt ngoài nhận xung, nếu đúng xung đó thì trình phục vụ ngắt chạy, phần lập trình phát xung e đã làm được, riêng phần lập trình để nhận xung đó thì e pó tay rồi, chả là e đang làm chống nhiễu cho cảm biến hồng ngoại. Anh chị nào bít giúp 2 với nhá!!! cám ơn các anh nhìu lắm!

  • #2
    $MOD51
    ;************************************************* **************
    ; - Su dung ngat de dieu khien sang tat den p1.0 den p1.3
    ;************************************************* **************
    org 0h;vector reset khi ta bam nut reset
    ljmp main
    org 03h;vector ngat ngoai 0 khi co ngat xay ra no se nhay den 03h
    ljmp ex_int0
    org 0bh;vector timer 0
    ljmp timer_int0
    org 13h;vector ngat ngoai 0
    ljmp ex_int1
    org 1bh;vector timer 0
    ljmp timer_int1
    org 23h;vector port noi tiep
    ljmp le_int
    org 30h
    main:
    mov p1,#0h
    mov p2,0ffh
    mov ie,#8Fh;chon cac ngat o thanh ghi IE nay o day tui chon tat ca
    back:
    jnb p2.1,back1
    setb tf0
    acall back
    back1:
    jnb p2.2,back
    setb tf1
    sjmp back

    ;******************************
    ;Su dung ngat ngoai0 (p3.2)
    ;Su dung ngat ngoai1 (p3.3)
    ;Su dung ngat timer0 khi co CF0 duoc set=1(khi time bao tran)(o day tui thiet ke bam nut p2.1)
    ;Su dung ngat timer0 khi co CF1 duoc set=1(khi time bao tran)(o day tui thiet ke bam nut p2.2)
    ;Su dung ngat ngat port noi tiep khi co RI set=1(thu)
    ;hay TI set=1(phat)(2 co nay chi duoc set bang phan cung)

    ;******************************
    ex_int0:
    cpl p1.0
    reti
    end1:
    timer_int0:
    cpl p1.1
    reti
    ex_int1:
    cpl p1.2
    reti
    timer_int1:
    cpl p1.3
    reti
    le_int:
    reti
    end
    bạn dùng trình mô phỏng để xem
    Tóm tắt lại để ngắt xảy ra bao gồm các bước sau:
    -Chọn ngắt ở thanh ghi IE
    -Chọn ngắt ưu tiên ở thanh ghi IP(nếu không nó theo nguyên hỏi vòng tuần tự)
    -Cờ ngắt phải được bật ứng với mỗi ngắt
    -Khi có ngắt xảy ra nó sẽ nhảy đến vector ngắt tương ứng
    Bạn nên xem thêm tài liệu để hiểu rõ hơn

    Comment

    Về tác giả

    Collapse

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

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

    Collapse

    Đang tải...
    X