Thông báo

Collapse
No announcement yet.

Vì sao phải sử dụng ngắt?

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

  • #46
    em dang lam ve hien thi tan so trong cong nghiep su dung vxl(e chon 89c51 rui) ghep noi LCD.thu 2 phai trinh thay roi ma tinh hinh lam an dao nay e am nen da sao nhang chuyen lam do an rui. co anh chi nao biet thi giup e voi. e chi lo ve phan lap trinh thoi.neu dc thi anh chi vui long send vao terexa142@yahoo.com

    Comment


    • #47
      a quen mat.merci trc cac bac nha. help me.hau ta bag mot chau cafe

      Comment


      • #48
        Tôi xin tham gia vài ý kiến:
        Ngắt là tài nguyên quí nên sử dụng cho mục đích cần thiết:
        - Ưu tiên số 1, ví dụ: tắt khẩn cấp, ...
        - Cần nắm bắt đúng thời điểm, ví dụ: encorder, thời điểm 0, công tắc hành trình, ...
        - Những tín hiệu có độ rộng xung hẹp,
        - . . .
        Chương trình ngắt cần ngắn, cần xử lý dài thì đánh dấu rồi thoát, chương trình khác sẽ xử lý.
        Những cái còn lại chương trình chính làm việc.
        Chương trình chính lại chia thành từng phần độc lập, ví dụ: quét phím, hiển thị Led, LCD...; nhũng chương trình này không được quá dài.
        Mỗi phần như vậy cho chạy độc lập, tuần tự trong Ngắt Timer nội.
        VD: Tôi có VDK chu kỳ máy là 1 micro s (89Cxx_12MH), tạo ngắt trong Timer0 thời gian 1/5000s. Chia làm 50 khoảng, có được tối đa 50 chương trình chạy độc lập, tuần tự với chu kỳ quét là 1/100s và có tối đa 200 chu kỳ máy cho 1 chu kỳ quét, chọn 1/2= 100 chu kỳ máy (dành thời gian cho chương trình chính chạy).
        Như vậy trong 1/100s, các chương trình được gọi 1 lần, nên sắp xếp cho ngắn gọn trong 100 chu kỳ máy.
        Những chương trình dài, lại không thường xuyên (khi cần mới gọi) thì không bỏ vào đây.
        Nhiều dòng đóng góp, thân chào.

        Comment


        • #49
          Nguyên văn bởi HPECOM Xem bài viết
          Tôi muốn chip không đứng yên chờ mà lúc nào cũng hoạt động kiểm tra liên tục. Tôi gặp các khó khăn sau:
          1_ Các cảm biến luôn dao động, giải thuật chờ như thế nào để không dừng tại chỗ mà số hiển thị trên LCD ổn định không bị nháy liên tục.
          2_ Truyền dữ liệu lên LCD phải chờ LCD thực hiện lệnh, tôi không muốn đứng yên đó chờ mà phải làm những công việc kiểm tra hệ thống trong lúc chờ đó.
          3_ Khi khởi động cả 2 máy cần chờ máy 1 khởi động 3 phút.
          4_ Nhận các tham số cài đặt từ PC phải chờ truyền đủ các số liệu.
          Những công việc trên đan xen cực kỳ rắc rối, tôi đã mất rất nhiều thời gian vẫn chưa giải quyết tốt.
          1_ Cảm biến đâu có dao động được, cần xem lại phần đo AD (chọn tần số clock cao, V Aref quá thấp cũng làm giá trị đo không ổn định.
          2_ Sao phải chờ LCD thực hiện lệnh ?
          3_ Lý do
          4_ ???
          Bài toán chia 2 phần độc lập: PC và MPU.
          PC: hiển thị , cài đặt thông số, tham gia control nếu cần.
          MPU: hoạt động độc lập (không có PC vẩn chạy theo thông số cài đặt), vẫn có thể tự cài đặt và hiển thi (nhờ 4 phím + LCD). Trả thông số cho PC hoặc nhận lệnh mới khi PC có yêu cầu, MPU không cần quan tâm đến PC hoặc LCD?
          Mong giúp được bạn.

          Comment

          Về tác giả

          Collapse

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

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

          Collapse

          Đang tải...
          X