View Single Post
Old 21-08-2008, 11:49 AM   #65
phamminhtuan
Super Moderator
 
phamminhtuan's Avatar
 
Tham gia ngày: Feb 2006
Bài gửi: 150
:
Trích:
Nguyên văn bởi kebitmat_f View Post
Mình thấy khi lập trình ccs khai báo clock=20MHz, nhưng mô phỏng bằng proteus, mục processor clock frequency =4Mhz. 1 cái nữa là thiết kế mạch dao động chọn thạch anh là 20Mhz. Như thế chương trình sẽ chạy theo 4Mhz hay 20Mhz? Tóm lại nó sẽ chạy theo ccs,proteus hay mạch cứng thạch anh? rối quá.... Mong bà kon chỉ bảo sớm.
Khai báo #use delay(clock=xxMhz) là chỉ dẫn để CCS tạo ra mã delay đúng với tần số thạch anh mà mình sử dụng, ví dụ bạn sử dụng thạch anh 4Mhz, thì khai báo #use delay(clock=4Mhz), như thế thì cái hàm delay_ms(100) mới delay đúng 100ms, còn nếu bạn khai báo 4Mhz, nhưng sử dụng thạch anh 20Mhz thì dĩ nhiên hàm delay đó sẽ không còn đúng nữa, lúc này thay vì 100ms thì nó chỉ còn 100/5 = 20ms thôi, ngoài ra nếu bạn sử dụng UART cũng không đúng, vì clock bạn khai báo sai mà.

Thế nên, bạn cứ ép buộc nó chạy thì nó vẫn chạy, không theo ý bạn thôi, muốn nó chạy đúng thì phần cứng ra làm sao, khai báo trong phần mềm như vậy
phamminhtuan vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn