PIC Vietnam

Go Back   PIC Vietnam > Microchip PIC > dsPIC - Bộ điều khiển tín hiệu số 16-bit

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

dsPIC - Bộ điều khiển tín hiệu số 16-bit Theo dự kiến của Microchip, vào khoảng năm 2011 dsPIC sẽ có doanh số lớn hơn PIC

Trả lời
 
Ðiều Chỉnh Xếp Bài
Old 14-05-2008, 12:14 AM   #1
hanhthien184
Nhập môn đệ tử
 
Tham gia ngày: Oct 2007
Bài gửi: 4
:
Smile

Cảm ơn anh Nam đã giúp đỡ.
Em đã giải quyết được vấn đề ngắt này,và chỉnh lại code cho hợp lý:
Code:
//--- External Interrupt routine (INT4 - ADS)---
  void interrupt_int4() org 0x80 {                //When ADS is asserted
     addr_select = PORTA;
     addr_select &= 0x3F;
     switch (addr_select) {
       case 0:  LATD = ADC_1; break;
       case 2:  LATD = ADC_2; break;
       default: LATD = 0xDD;
       }
     IFS3bits.INT4IF = 0;           //ensure interrupt not pending 
  }
Trong đó ADC_1 và ADC_2 được lấy từ chuyển đổi hai kênh ADC.
(Ở phía trên em cho ADC_1 = 0xAA và ADC_2 = 0xBB chỉ là để test )
Vấn đề của em là do tín hiệu ngắt ngoài được lấy từ PC,dữ liệu cũng được truyền về PC (và còn một số vấn đề khác của phần cứng)nên ban đầu ko rõ nguyên nhân.Vì tín hiệu ngắt ngoài ko ổn định nên giá trị nhận được ko chinh xác.Còn lại hàm ngắt và chuyển đổi ADC ko có vấn đề gì.

thay đổi nội dung bởi: hanhthien184, 14-05-2008 lúc 12:20 AM.
hanhthien184 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Trả lờ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à 02:34 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