User Tag List

+ Trả lời chủ đề
Hiện kết quả từ 1 tới 4 của 4

Chủ đề: Hướng dẫn mô phỏng vi điều khiển bằng Proteus

  1. #1
    Quân Nhân Danh Dự Avatar của nbb3i
    Tham gia ngày
    Feb 2008
    Bài gửi
    94

    Mặc định Hướng dẫn mô phỏng vi điều khiển bằng Proteus

    Học Vi xử lý qua sách vở thật là một nỗi ác mộng của sinh viên. Nếu ta không thể thử nghiệm thực tế trên mạch thì bạn phải tưởng tượng rất nhiều để biết chương trình của mình chạy như thế nào. Nếu chưa đủ tự tin làm mạch thật, bạn hoàn toàn có thể mô phỏng chúng trên máy tính. Dù không thể có được kết quả thực tế nhưng mô phỏng giúp bạn có cái nhìn trực quan hơn về chương trình học của mình.
    Bạn chọn linh kiện bằng cách nhấn lần lượt vào các nút Component Mode(1), Pick Devices (2) và đánh tên linh kiện vào ô số (3).
    Sau khi chọn được các linh kiện cần thiết bạn nối chúng vào với nhau. Lưu ý 1 điều là chương trình mô phỏng không cần thiết phải nối tất cả các phần mở rộng như trong thực tế. Ví dụ: Bạn không cần lắp mạch phát xung cho vi xử lý mà chỉ cần điều chỉnh tần số xung ở bên trong con vi xử lý bằng cách nhấp đúp vào nó, không cần nối trở thanh, Đèn LED sáng luôn ở ...5V...
    Nạp chương trình bằng cách nhấn đúp vào con vi xử lý và chọn đường dẫn đến file hex đã dịch.
    Cuối cùng là nhấn nút Run và xem xem cái mạch của mình nó chạy như thế nào.
    Mình lấy luôn cái mạch bấm chuông dùng cho chương trình khoa điện tranh tài 2008 làm ví dụ.
    Mã:
            ORG     0H
    PRES:   MOV     P2,#0FFH
            JNB     P1.0,NUT0
            JNB     P1.1,NUT1
            JNB     P1.2,NUT2
            JNB     P1.3,NUT3
            JNB     P1.4,NUT4
            JNB     P1.5,NUT5
            JNB     P1.6,NUT6
            JNB     P1.7,NUT7
            SJMP    PRES
    
    NUT0:   MOV     P2,#11111110B
            JNB     P1.0,NUT0
            ACALL   DELAY
            SJMP    PRES
    
    NUT1:   MOV     P2,#11111101B
            JNB     P1.1,NUT1
            ACALL   DELAY
            SJMP    PRES
    
    NUT2:   MOV     P2,#11111011B
            JNB     P1.2,NUT2
            ACALL   DELAY
            SJMP    PRES
    
    NUT3:   MOV     P2,#11110111B
            JNB     P1.3,NUT3
            ACALL   DELAY
            SJMP    PRES
    
    NUT4:   MOV     P2,#11101111B
            JNB     P1.4,NUT4
            ACALL   DELAY
            SJMP    PRES
    
    NUT5:   MOV     P2,#11011111B
            JNB     P1.5,NUT5
            ACALL   DELAY
            SJMP    PRES
    
    NUT6:   MOV     P2,#10111111B
            JNB     P1.6,NUT6
            ACALL   DELAY
            SJMP    PRES
    
    NUT7:   MOV     P2,#01111111B
            JNB     P1.7,NUT7
            ACALL   DELAY
            SJMP    PRES
    
    DELAY:  MOV     R2,#010
    LOOP0:  MOV     R1,#0250
    LOOP1:  MOV     R0,#0200
    LOOP2:  DJNZ    R0,LOOP2
            DJNZ    R1,LOOP1
            DJNZ    R2,LOOP0
            RET
            END
    Phần mềm mở rộng cho cả 8 nút bấm, 8 đèn. Trong mạch thật thì phải kết hợp Otto quang với Rơle điều khiển đèn và chuông. Bạn nào quan tâm tớ sẽ post cả sơ đồ nguyên lý đầy đủ.
    Hồi trước làm thỉnh thoảng có lỗi về nút bấm với chuông. Bây giờ đã phát hiện ra rồi. Đó là xử lý rung cho phím bấm. Thật đơn giản là dùng delay. Có thể có cách khác là nối song song tụ với phím nhưng mà dùng phần mềm cho nó tiết kiệm
    Theo phần mềm ở trên. 1 đội bấm đèn sẽ sáng liên tục. Khi nào đội đó nhả phím ra thì đèn tiếp tục sáng trong 1s nữa rồi mới tắt để cho phép nhận tín hiệu bấm từ các đội còn lại.
    PS: Lười quên rồi ko viết comment vào phần mềm. Ai thích thì pm tớ sẽ edit bài sau vậy.
    Dưới đây up tạm file Proteus cùng phần mềm kèm theo.
    (Clone từ bài viết của chính mình ở rất nhiều diễn đàn. Ai đọc rồi đừng kêu mình xấu tính nhé)
    Tập tin đính kèm
    Share all for all!
    Yahoo!ID: nbb3i

  2. Tớ cảm ơn nbb3i đã chia sẻ.


  3. #2
    svBK's Newbie
    Tham gia ngày
    Sep 2008
    Bài gửi
    1

    Mặc định

    Mình đã chạy mô phỏng thử chương trình này, rất hay đó bạn, mình nghĩ nếu thêm comment vào source code và vài dòng giới thiệu linh kiện sử dụng trong mạch nữa có lẽ bài viết sẽ dễ hiểu hơn.

  4. #3
    HUT's Student
    Tham gia ngày
    Jun 2007
    Bài gửi
    197

    Mặc định

    Các bạn có thể search trên mạng tham khảo thêm bản hướng dẫn proteus 7.1 của BK ĐN hay trường j đấy ( quên tên rồi) + phiên bản đã cr@ck thông dụng 7.2SP6 ,(bạn nào có cr@ck của bản mới hơn thì cho mình xin nhé ) theo mình đánh giá là khá hay , bao gồm cả phần mô phỏng (VSM) và phần mạch in (PCB)
    Lần sửa cuối bởi baohuy_pla; 22-09-2008 lúc 01:37 AM Lý do: Không nên viết đầy đủ là c r a c k!

  5. #4
    Quân nhân danh dự Avatar của baohuy_pla
    Tham gia ngày
    Sep 2006
    Bài gửi
    1.411

    Mặc định

    Hướng dẫn proteus 7.1 của BKDN mình đã up lên BKlib rồi.

    When a scientist thinks of something, he asks: "Why?"
    When an engineer thinks of something, he asks: "Why not?




+ Trả lời chủ đề

Thông tin chủ đề

Users Browsing this Thread

Hiện có 1 người đọc bài này. (0 thành viên và 1 khách)

Từ khóa (Tag) của chủ đề này

Quyền viết bài

  • Bạn không thể gửi chủ đề mới
  • Bạn không thể gửi trả lời
  • Bạn không thể gửi file đính kèm
  • Bạn không thể sửa bài viết của mình


About svBK.VN

    Bách Khoa Forum - Diễn đàn thảo luận chung của sinh viên ĐH Bách Khoa Hà Nội. Nơi giao lưu giữa sinh viên - cựu sinh viên - giảng viên của trường.

Follow us on

Twitter Facebook youtube