PIC Vietnam

Go Back   PIC Vietnam > Microchip PIC > Cơ bản về vi điều khiển và PIC

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

Cơ bản về vi điều khiển và PIC Những bài hướng dẫn cơ bản nhất để làm quen với vi điều khiển PIC

Trả lời
 
Ðiều Chỉnh Xếp Bài
Old 21-06-2007, 03:38 PM   #1
littlephoc
Đệ tử 3 túi
 
Tham gia ngày: Dec 2006
Bài gửi: 60
:
hỏi về A/D trên port B

Mình muốn nhận tín hiệu analog trên cổng RB3 RB4 RB5 để chuyển thành tín hiệu số. chip đang dùng là PIC18F2620.
Trên cổng A thì mình thấy nhiều sample rồi nhưng trên cổng B thì không biết.
Mong chỉ giúp:
// Constants used in SETUP_ADC_PORTS() are:
#define NO_ANALOGS 0x0F // None
#define ALL_ANALOG 0x00 // A0 A1 A2 A3 A5 B2 B3 B1 B4 B0
#define AN0_TO_AN11 0x03 // A0 A1 A2 A3 A5 B2 B3 B1 B4

cổng B0, B1 đã được dùng để nhận tín hiệu digital, cổng B3 B4 B5 thì muốn được config để trở thành cổng input analog.

thay đổi nội dung bởi: littlephoc, 21-06-2007 lúc 03:45 PM.
littlephoc vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 21-06-2007, 07:01 PM   #2
namqn
Trưởng lão PIC bang
 
Tham gia ngày: Feb 2006
Nơi Cư Ngụ: Tp. HCM, Việt Nam
Bài gửi: 3,025
:
Send a message via Yahoo to namqn
Trích:
Nguyên văn bởi littlephoc View Post
Mình muốn nhận tín hiệu analog trên cổng RB3 RB4 RB5 để chuyển thành tín hiệu số. chip đang dùng là PIC18F2620.
Trên cổng A thì mình thấy nhiều sample rồi nhưng trên cổng B thì không biết.
Mong chỉ giúp:
// Constants used in SETUP_ADC_PORTS() are:
#define NO_ANALOGS 0x0F // None
#define ALL_ANALOG 0x00 // A0 A1 A2 A3 A5 B2 B3 B1 B4 B0
#define AN0_TO_AN11 0x03 // A0 A1 A2 A3 A5 B2 B3 B1 B4

cổng B0, B1 đã được dùng để nhận tín hiệu digital, cổng B3 B4 B5 thì muốn được config để trở thành cổng input analog.
Cấu hình các bit PCFG<3:0> trong thanh ghi ADCON1 để chọn các chân dùng làm analog và digital pin. Theo đó, bạn có thể có các chân AN0 đến AN9 là analog nếu chọn các bit này là '0101', như vậy chân RB3 sẽ mang chức năng AN9, và chân RB2 sẽ là AN8. Nhưng nếu bạn muốn RB4 cũng là chân analog thì bạn phải sử dụng tổ hợp cho phép từ AN0 đến AN11 (với PCFG<3:0>='0011'), và trong trường hợp này chân B1 cũng sẽ là chân analog (AN10). Chân RB5 không thể dùng làm chân analog.

Các bit PCFG<3:0> đã được thể hiện trong đoạn code ví dụ của bạn, ở đó, chúng là các bit thấp của hằng số 8 bit. Với cách định nghĩa tương tự như trên để dùng cho SETUP_ADC_PORTS(), bạn sẽ có:

Code:
#define AN0_TO_AN9  0x05   // A0 A1 A2 A3 A5 B2 B3
Kết luận, mission của bạn là impossible, trừ khi bạn điều chỉnh lại phần cứng. Nếu bạn không rõ lắm về thiết kế phần cứng, hãy cho biết yêu cầu về số chân analog cần thiết, và các chân chưa được sử dụng.

Thân,
__________________
Biển học mênh mông, sức người có hạn.

Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau:
http://www.picvietnam.com/forum/showthread.php?t=1263
namqn 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à 04:31 PM.


Đượ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