View Single Post
Old 05-01-2013, 12:31 PM   #2
pstin
Đệ tử 7 túi
 
Tham gia ngày: Jul 2010
Nơi Cư Ngụ: TP HCM
Bài gửi: 190
:
Trích:
Nguyên văn bởi CarrotMonster View Post
Mình đang lập trình chạy 6 led nối với RC0 - RC5! Dùng thạch anh 20mhz, chương trình như sau:
#INCLUDE <16F887.H>
#INCLUDE <STDIO.H>
#FUSES NOWDT,HS,PUT,NOLVP
#USE DELAY(CLOCK=20000000)
INT T;
VOID MAIN()
{
SET_TRIS_C(0X00);
T=1000;
WHILE(1)
{
OUTPUT_C(0B00000011);
DELAY_MS(T);
OUTPUT_C(0B00000110);
DELAY_MS(T);
OUTPUT_C(0B00001100);
DELAY_MS(T);
OUTPUT_C(0B00011000);
DELAY_MS(T);
OUTPUT_C(0B00110000);
DELAY_MS(T);
OUTPUT_C(0B00100001);
DELAY_MS(T);
}
}


Nhưng đến khi chạy thì nó ko delay 1 giây mà nhanh hơn, giống như là 300ms!

Đến khi thay DELAY_MS(T); bằng DELAY_MS(1000); thì lại chạy đúng?! Pro nào xin chỉ giáo! Thanks!
Hàm delay_ms (time )
Time = 0-255 nếu là biến số hay = 0-65535 nếu là hằng số.
==> Phải trui luyện lại CCS cơ bản!!.

Bạn muốn lên 1000, thì đổi thành T=100 và lặp 10 lần!!!.
for(i=1;i<=10;i++)
{delay_ms(T);}
pstin vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn