PIC Vietnam

PIC Vietnam (http://www.picvietnam.com/forum/index.php)
-   Các ngôn ngữ lập trình khác (CCS C, HT PIC,...) (http://www.picvietnam.com/forum/forumdisplay.php?f=12)
-   -   Code ccs (http://www.picvietnam.com/forum/showthread.php?t=31488)

hungcdtk49 14-12-2012 01:52 AM

Code ccs
 
anh chị giúp em đoạn code này với ạ. em mới tìm hiểu nên chưa được rõ lắm ah.

#include <18F4431.h> //KHAI BAO SU DUNG VDK 18F4431
#FUSES HS,NOWDT,NOPROTECT,NOLVP //THIET LAP CHE DO HOAT DONG CHO VDK
#USE DELAY(CLOCK=12000000) //SU DUNG BO DAO DONG THACH ANH 12Mhz
INT16 COUNT,VAROUTB=0B0000000011111111;//kHAI BAO BIEN 16 BIT
#INT_TIMER0 // CHUONG TRINH NGAT TIMER0
VOID NGATTIME0()
{
SET_TIMER0(6); // DAT GIA TRI DAU TIME0 LA 6
++COUNT;
IF(COUNT>=6000) //6000*(500/3)us=1s
{
COUNT=0;
VAROUTB=(VAROUTB<<8)|(VAROUTB>>8);
OUTPUT_B((INT8)VAROUTB);
}
}
VOID MAIN()
{
set_tris_b(0b00000000);
output_b((int8)VAROUTB);
ENABLE_INTERRUPTS(INT_TIMER0);
SETUP_TIMER_0(RTCC_INTERNAL|RTCC_DIV_2|RTCC_8_BIT) ;
ENABLE_INTERRUPTS(GLOBAL);
SET_TIMER0(6); //T_dinhthi=delay=2*(256-6)*(1/3)us=500/3us
WHILE(1)
{
}
}



đây là bài tập sử dụng timer0 làm 8 led nhấp nháy theo chu kì 2s

//6000*(500/3)us=1s
//T_dinhthi=delay=2*(256-6)*(1/3)us=500/3us
em không hiểu chỗ này, mong mọi người chỉ giúp
và chương trình em mô phỏng trên protues không đúng 2s các bác ạ

hungcdtk49 14-12-2012 02:58 AM

và cái hàm con ngattimer0 dùng để làm gì vậy, không thấy nó xuất hiện trong hàm main()


Múi giờ GMT. Hiện tại là 10:27 AM.

Tên diễn đàn: vBulletin Version 3.8.11
Được sáng lập bởi Đoàn Hiệp.
Copyright © PIC Vietnam