PIC Vietnam

Go Back   PIC Vietnam > Microchip PIC > PIC - Thiết kế và Ứng dụng

Tài trợ cho PIC Vietnam
Trang chủ Đăng Kí Hỏi/Ðáp Thành Viên Lịch Tìm Kiếm Bài Trong Ngày Ðánh Dấu Ðã Ðọc Vi điều khiển

PIC - Thiết kế và Ứng dụng Ý tưởng cho các sản phẩm sử dụng PIC/dsPIC và các sản phẩm của Microchip

 
 
Ðiều Chỉnh Xếp Bài
Prev Previous Post   Next Post Next
Old 20-06-2010, 05:47 PM   #1
sit_alone76816
Đệ tử 2 túi
 
Tham gia ngày: Aug 2008
Bài gửi: 38
:
Cần giúp về hàm ngắt Capture !

Em đang làm 1 project có sử dụng ngắt Capture, nhưng khi em viết thì nó không hoạt động, hàm ngắt ko tác dụng gì . Em đang dùng C18, code như sau :

#include"p18f4520.h"
#include"delays.h"
#include"stdio.h"
#include"timers.h"
#include"capture.h"

#pragma config OSC=HS, WDT=OFF, PWRT=OFF,PBADEN=OFF,LVP=OFF

#define trigger PORTCbits.RC1
#define echo PORTCbits.RC2

#define enter PORTBbits.RB1
#define up PORTBbits.RB2

#define ledred PORTAbits.RA0 //led active Low
#define ledyellow PORTAbits.RA1
#define ledgreen PORTAbits.RA2


void ngat(void);

#pragma code InterruptVectorHigh = 0x08
void InterruptVectorHigh(void)
{
_asm goto ngat _endasm
}
#pragma code

#pragma interrupt ngat
void ngat (void)
{
INTCON &=0x7f; // disable interrupt

if(PIR1bits.CCP1IF==1)
{
PIR1bits.CCP1IF=0;
ledgreen=0; // On led Green
Delay1KTCYx(100);

}
ledyellow=0;
INTCON |=0x80; // enable interrupt
}
void main (void)
{
TRISC=0x94;
TRISB=0x1e;
PORTA=255;
PORTC=0;
ADCON1=0x0f;

INTCON=0x80;
PIE1bits.CCP1IE=1;

OpenCapture1( CAPTURE_INT_ON &
C1_EVERY_RISE_EDGE);

while(1)
{
ledred=0;
Delay1KTCYx(100);
ledred=1;
Delay10KTCYx(100);

}
if(up==0)
{
while(up==0);
trigger=1;
Delay10TCYx(100);
trigger=0;
}
}
}

Chương trình của em như sau: Khi em nhấn button up thì sẽ tạo 1 xung trigger tại chân RC1, sau đó sẽ có 1 module bên ngoài sẽ gửi lại 1 xung tại chân RC2 (CCP1). Khi có cạnh lên thì em cho ngắt ở đó. Em đã kiểm tra xung ở 2 pin RC1 và RC2, cả 2 vẫn tốt, nhưng còn hàm Ngắt thì không thực hiện.

Có phải em khai báo hàm ngắt sai hay không ? Mong các anh giúp đỡ !
sit_alone76816 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
 

Ðiều Chỉnh
Xếp Bài

Quyền Sử Dụng Ở Diễn Ðàn
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Mở
Smilies đang Mở
[IMG] đang Mở
HTML đang Tắt

Chuyển đến


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


Được sáng lập bởi Đoàn Hiệp
Powered by vBulletin®
Page copy protected against web site content infringement by Copyscape
Copyright © PIC Vietnam