13-05-2008, 01:55 PM | #1 |
Đệ tử 3 túi
Tham gia ngày: Apr 2008
Bài gửi: 48
: |
!!!cho em hỏi tí về ngắt(em dùng mikroC)!!!
cho em hỏi trong chương trình dưới đây thì "ngắt" bắt đầu từ dòng nào? và dấu hiệu nhận biết !!(chỉ luôn em cách post code nha anh!!)
CHƯƠNG TRÌNH HIỂN THỊ LED7 ĐOẠN (mạch EASYPIC4) ĐẾM SỐ TỪ 0...255! Code:
unsigned short mask(unsigned short num) /*ham xuat dinh dang bit cho led7*/ { switch (num) { case 0 : return 0x3F; case 1 : return 0x06; case 2 : return 0x5B; case 3 : return 0x4F; case 4 : return 0x66; case 5 : return 0x6D; case 6 : return 0x7D; case 7 : return 0x07; case 8 : return 0x7F; case 9 : return 0x6F; } } unsigned short i,por0,por1,j,v,por2; void interrupt() { if(v== 0 ) { PORTD=por0; PORTA=1; v= 1 ; } else if(v== 1) { PORTD=por1; PORTA= 2 ; V=2; } else if(v== 2 ) { PORTD=por2; PORTA=4; V=0 ; } TMR1 = 0 ; /*khoi tao lai gia tri trong timer0 */ TMR1ON = 0x20 ; /*bat bit 05 tren thanh ghi INTCON cho phep ngat timer0 */ } void main() { OPTION_REG =0X80; /* tat chuc nang pull-up cua portB*/ j = 0 ; v = 0 ; por2 = 0x3F; TMR1 = 0 ; TRISA = 0 ; PORTA = 0 ; TRISD = 0 ; PORTD = 0 ; TMR1ON =0x01; /*cho phep ngat Timer0*/ while(1) { for (i=0;i<=255;i++) /*vong lap xuat so tu 0-255*/ { j=i%10; por0=mask (j) ; j=((char)i/10)%10; por1=mask(j); j=(char)(i/100)%10; por2=mask(j) ; delay_ms(100) ; } } } thay đổi nội dung bởi: namqn, 13-05-2008 lúc 06:19 PM. |
|
|