Thông báo

Collapse
No announcement yet.

không hiểu tại sao????

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

  • không hiểu tại sao????

    sự tình là thế này:
    em viết một chương trình gồm hai môdun:
    môdun 1: pwm dùng ngắt T0 chế độ 8 bit
    môdun 2: giao tiếp dùng ngắt T1 chế độ 16 bi
    thời gian ngăt của T0 nhỏ hơn thời gian ngắt của T1.cả hai đều hoạt động tốt.
    nhưng vấn đề phát sinh khi trong chương trình chính (main em dùng dữ liệu lấy được khi giao tiếp để đóng ngắt P3 như sau

    ....
    main:
    .....
    mov b,23h ; 23h là địa chỉ chứa byte lấy được trong phần giao tiếp ( đa check, ok)
    mov a,200 ; 200 là giá trị muốn so sánh.
    subb a,b
    jnc here ; a lớn hơn b thì nhảy đến here
    mov p3,#00h ; ngược lại
    here:
    mov p3,#ffh
    ........
    ljmp main
    -theo lý thì khi do chân p3 thì chỉ có hai giá trị 0V hoặc 5V.(lý tưởng). nhưng đàng này nó chỉ thây đổi từ 0v ->2v (xài con 89s52 và 89c51).
    không hiểu là bị gì nữa. cón ai gặp trường hợp tương tự chửa?????
    HIC CHO EM CHÚT Ý KIẾN GÓP Ý. THANKSSSSSSSSSSSS

    sau khi tắt ngắt T0 đi thì lại hoạt động bình thường.không hiểu do đâu???
    Last edited by dellos87; 22-02-2009, 23:59. Lý do: đã check lại

  • #2
    cái nhãn HERE bác đặt ngay dưới lệnh MOV P3,#00h thì cũng như không roài, trước sau gì nó cũng xuất FF ra P3. bác chèn lệnh JMP xxx trước nhãn HERE xem sao.

    Comment


    • #3
      Mức 1 không được 5v nhưng cũng phải 4 v trở lên,bọn 89sxx toàn thế mà bạn thử kiểm tra lai coi
      |

      Comment

      Về tác giả

      Collapse

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

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

      Collapse

      Đang tải...
      X