23-03-2009, 08:33 PM
|
#14
|
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
:
|
Trích:
Nguyên văn bởi thaithien
Mạch đã chạy rồi nhưng vẫn chưa như ý:trong mô phỏng bằng proteus thì chạy đúng nhưng mạch thật thì chạy không đúng.
Code:
#include <p16F887.inc>
__CONFIG _CONFIG1, _LVP_OFF & _FCMEN_OFF & _IESO_OFF & _BOR_OFF & _CPD_OFF & _CP_OFF & _MCLRE_OFF & _PWRTE_ON & _WDT_OFF & _INTRC_OSC_NOCLKOUT
__CONFIG _CONFIG2, _WRT_OFF & _BOR21V
org 0
Start:
bsf STATUS,RP0 ; select Register Bank 1
bcf TRISD,0 ; make IO Pin RD0 an output
bcf STATUS,RP0 ; back to Register Bank 0
bsf PORTD,0 ; turn on LED RD0 (DS0)
goto $ ; wait here
end
Theo như code trên thì led sẽ sáng ở vị trí RDO nhưng khi lắp mạch thật thì không sáng ở RDO mà lại sáng ở RD1,RD2,RD3,RD5.
Khó hiểu quá!!!!!!!!!!!!!!!!!!!!!
Đang tìm hiểu,ai biết chỉ dùm.
|
Bạn tham khảo ví dụ 3-5 trong datasheet để chọn bank và thao tác các thanh ghi PORTD và TRISD, và thử bật RD0 bằng cách ghi 0x01 vào thanh ghi PORTD.
Thân,
|
|
|