View Single Post
Old 19-07-2008, 01:48 AM   #10
gong05sk
Nhập môn đệ tử
 
Tham gia ngày: Jun 2007
Bài gửi: 8
:
Chài ai. đã bảo là bỏ qua mấy thông số đi mà. Thoáng một chút đi. do vẽ vội quá nên nó mới nhầm tai hại thế. Thông cảm tý đi. Em đã sửa cái hình lại cho đúng rồi đó.
Giờ quay lại vấn đề chính. Cám ơn bác Macintosh đã chỉ. em thấy mấy cái hàm mà bác nói. nhưng chẳng biết để làm gì cả. Nhưng em nghĩ thế này bác xem có đúng không?
Như vậy bên cạnh thư viện của 4331 chúng ta tạo thêm các chương trình con để sử dụng. và trong trường hợp này thì em phải viết chương trình con PWM phải không?
Nhưng vấn đề của em ở đây là quá gà để viết đc cái chương trình con đó. Bác có thể viết hộ không chỉ một ví dụ nhỏ thôi. đơn giản nhất có thể thôi. ^^! please.
---
Ngồi đọc một hồi cũng ngộ ra đc chút chút về cái Setup_ccp.
Phát biểu lên mấy anh xem sai chỗ nào chỉnh hộ với nhé.

setup_ccp1 (mode) -- đặt chế độ time cho module 0 mà cụ thể là chân RB0 và RB1
setup_ccp2 (mode) -- đặt chế độ time cho module 1 mà cụ thể là chân RB2 và RB3
setup_ccp3 (mode) -- đặt chế độ time cho module 2 mà cụ thể là chân RB4 và RB5
setup_ccp4 (mode) -- đặt chế độ time cho module 3 mà cụ thể là chân RB6 va RB7
setup_ccp5 (mode) -- đặt chế độ time cho module 4 mà cụ thể là chân LFTA (RC1)
setup_ccp6 (mode) -- đặt chế độ time cho module 5 mà cụ thể là chân LFTB (RC2)

Các chế độ mode có thể là:
CCP_OFF -- tắt chế độ ccp

CCP_CAPTURE_FE -- cái này không biết
CCP_CAPTURE_RE -- cái này cũng không nốt
CCP_CAPTURE_DIV_4 -- chế độ time = xung clock/4 việc này tương ứng với việc set 2 bit DTPS1 và DTPS0 mức 01 có phải không ạ.
CCP_CAPTURE_DIV_16 -- chế độ time = xung clock/16 việc này tương ứng với việc set 2 bit DTPS1 và DTPS0 mức 11.

CCP_COMPARE_SET_ON_MATCH -- cái này thiết lập mức tích cực ngõ ra là mức 1
CCP_COMPARE_CLR_ON_MATCH -- món này thiết lập mức tích cực ngõ ra là mức 0
CCP_COMPARE_INT --> hẻm biết là giống gì.
CCP_COMPARE_RESET_TIMER --> reset time làm gì cũng không biết nốt.

CCP_PWM -- cho phép chế độ PWM.
------
Như vậy sau khi tìm hiểu, với sơ đồ mạch như em vẽ thì rõ ràng muốn đưa tín hiệu băm xung ra chân RB0 thì phải cho phép PWM tại CCP1. Nhưng vấn đề nảy sinh là cái chế độ time = clock/4 cũng khai báo trong đó. vậy chẳng nhẽ viết 2 câu lệnh như nhau mà giá trị mode khác nhau àh?
Trích:
setup_ccp1(CCP_CAPTURE_DIV_4);
setup_ccp1(ccp_pwm);
__________________
My home --> http://spktclup.com

thay đổi nội dung bởi: gong05sk, 19-07-2008 lúc 02:52 AM.
gong05sk vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn