View Single Post
Old 21-11-2008, 05:07 PM   #7
namqn
Trưởng lão PIC bang
 
Tham gia ngày: Feb 2006
Nơi Cư Ngụ: Tp. HCM, Việt Nam
Bài gửi: 3,025
:
Send a message via Yahoo to namqn
Trích:
Nguyên văn bởi tungtot_vl View Post
set_tris_a(0x00); cái này thì đúng rồi.
#use delay<4000000> cái này là để khai báo tần số thạch anh ngoài mà bạn sử dụng. tuy nhiên bạn cần thêm phần fuses để thiết lập phần cứng cho pic. (4M khai báo hệ số XT, 20M khai báo hệ số HS)....
tần số dao động của 16f bằng 1/4 tần số thạch anh ngoài, một lệnh của nó mất khoản 3-5 lần tần số dao động. do đó để tính được thời gian delay chính sát với thực tế bạn phải chạy mạch thật và tính chính sát các lệnh mà bạn sử dụng.
Nên phát biểu cho chính xác về thời gian thực thi lệnh. Một chu kỳ máy của các PIC 8-bit luôn luôn bao gồm 4 chu kỳ dao động (chu kỳ của xung clock). Đa số lệnh của PIC cần 1 chu kỳ máy để thực hiện, và một số lệnh cần 2 chu kỳ máy để thực hiện.

Hoàn toàn có thể dùng MPLAB SIM để mô phỏng và xác định thời gian delay của một đoạn lệnh bất kỳ. Nếu chịu khó tính toán kỹ, bạn cũng có thể tính toán ra thời gian delay của một đoạn lệnh bất kỳ. Khi đó, bạn có thể dùng MPLAB SIM để kiểm chứng.

Thân,
__________________
Biển học mênh mông, sức người có hạn.

Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau:
http://www.picvietnam.com/forum/showthread.php?t=1263
namqn vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn