PIC Vietnam

PIC Vietnam (http://www.picvietnam.com/forum/index.php)
-   dsPIC - Bộ điều khiển tín hiệu số 16-bit (http://www.picvietnam.com/forum/forumdisplay.php?f=29)
-   -   Lỗi khi sử dụng đồng thời UART, Timer1 và ADC (http://www.picvietnam.com/forum/showthread.php?t=12603)

macbeth0308 04-01-2012 09:58 PM

Lỗi khi sử dụng đồng thời UART, Timer1 và ADC
 
Chào mọi người, mình đang làm một project sử dụng dspic30f6014a và gặp một vấn đề thế này, mong mọi người giải đáp:
Một khối mình đang làm là thực hiện lấy mẫu tín hiệu tần số 8KHz, mình thực hiện như sau:
-Khởi tạo Timer1 ngắt với chu kì 125us = 1s/8000; mỗi khi Timer1 ngắt mình sẽ khởi động ADC để lấy mẫu.
-ADC lấy mẫu với với thời gian lấy mẫu và convert khoảng chừng 25us. Khi ngắt ADC xảy ra thì dừng việc lấy mẫu lại, đọc giá trị ADC và set một cờ tự tạo (flag) (theo như demo của anh nqnam trong Tutor về ADC).
-Trong chương trình chính cũng tiến hành kiểm tra flag để thực hiện tính toán.
-Vấn đề ở đây là mình còn dùng thêm module UART trong đây nữa. Trong chương trình chính mình tiến hành thiết lập cho Timer1 và bộ ADC, mọi việc đều xảy ra bình thường, nhưng khi mình khởi động module UART trong chương trình chính thì ngắt ADC không hoạt động, và việc tính toán trong chương trình chính không thực hiện được.
Có ai biết vấn đề xảy ra ở đâu không, xin giúp đỡ giùm?

baolvq 20-07-2012 05:29 PM

Trích:

Nguyên văn bởi macbeth0308 (Post 53176)
Chào mọi người, mình đang làm một project sử dụng dspic30f6014a và gặp một vấn đề thế này, mong mọi người giải đáp:
Một khối mình đang làm là thực hiện lấy mẫu tín hiệu tần số 8KHz, mình thực hiện như sau:
-Khởi tạo Timer1 ngắt với chu kì 125us = 1s/8000; mỗi khi Timer1 ngắt mình sẽ khởi động ADC để lấy mẫu.
-ADC lấy mẫu với với thời gian lấy mẫu và convert khoảng chừng 25us. Khi ngắt ADC xảy ra thì dừng việc lấy mẫu lại, đọc giá trị ADC và set một cờ tự tạo (flag) (theo như demo của anh nqnam trong Tutor về ADC).
-Trong chương trình chính cũng tiến hành kiểm tra flag để thực hiện tính toán.
-Vấn đề ở đây là mình còn dùng thêm module UART trong đây nữa. Trong chương trình chính mình tiến hành thiết lập cho Timer1 và bộ ADC, mọi việc đều xảy ra bình thường, nhưng khi mình khởi động module UART trong chương trình chính thì ngắt ADC không hoạt động, và việc tính toán trong chương trình chính không thực hiện được.
Có ai biết vấn đề xảy ra ở đâu không, xin giúp đỡ giùm?


Bạn đang làm đề tài này hả, gửi cho mình tham khảo với nha


Tks !


Múi giờ GMT. Hiện tại là 11:56 PM.

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