Bộ biến ựổi ADC

Một phần của tài liệu Luận văn thiết kế chế tạo bộ điều khiển số quá trình trên nền vi điều khiển AVR (Trang 35 - 39)

5. Nôi dung của ựề tài

2.2.4. Bộ biến ựổi ADC

- Vi ựiều khiểnATmega16 có một bộ biến ựổi ADC tắch hợp trong chip với các ựặc ựiểm:

+ độ phân giải 10 bit

+ Sai số tuyến tắnh: 0.5LSB + độ chắnh xác +/-2LSB

+ Thời gian chuyển ựổi: 65-260ộs + 8 Kênh ựầu vào có thể ựược lựa chọn

+ Có hai chế ựộ chuyển ựổi free running và single conversion + Có nguồn báo ngắt khi hoàn thành chuyển ựổi

Trường đại học Nông Nghiệp Hà Nội Ờ Luận văn thạc sĩ khoa học kỹ thuật ẦẦẦẦẦẦẦẦẦ.. 24

Hình 2.3: Sơ ựồ bộ biến ựổi ADC

- 8 ựầu vào của ADC là 8 chân của PORTA và chúng ựược chọn thông qua một MUX.

- để ựiều khiển hoạt ựộng vào ra dữ liệu của ADC và CPU chúng ta có 3 thanh ghi: ADMUX là thanh ghi ựiều khiển lựa chọn kênh ựầu vào cho ADC, ADCSRA là thanh ghi ựiều khiển và thanh ghi trạng thái của ADC, ADCH và ADCL là 2 thanh ghi dữ liệu.

- ADMUX: Multiplexer select register đây là thanh ghi ựiều khiển 8 bit.

Trường đại học Nông Nghiệp Hà Nội Ờ Luận văn thạc sĩ khoa học kỹ thuật ẦẦẦẦẦẦẦẦẦ.. 25

Hình 2.4: Thanh ghi ADMUX

Với 4 bit ựược ựịnh nghĩa là MUX3, MUX2, MUX1,và MUX0, ứng với các tổ hợp logic ta có thể chọn kênh ựầu vào. Cụ thể:

Bảng 2.1: Tổ hợp logic chọn kênh ựầu vào

Các bit REFS1 và REFS0 dùng ựể chọn giá trị ựiện áp tham khảo cho ADC, như sau:

Bảng 2.2: Chọn chọn giá tri ựiện cho ADC của các bit REFS1 và REFS0

Chú ý: Nếu như ta thay ựổi kênh trong thời ựiểm mà ADC ựang chuyển ựổi thì khi quá trình chuyển ựổi ựã hoàn thành thì kênh vào mới ựược thay ựổi.

- ADCSRA-ADC control and status register

Trường đại học Nông Nghiệp Hà Nội Ờ Luận văn thạc sĩ khoa học kỹ thuật ẦẦẦẦẦẦẦẦẦ.. 26

Hình 2.5: Thanh ghi ựiều khiển và trạng thái ADC

- Thanh ghi dữ liệu ACDH và ADCL: Thanh ghi này chứa dữ liệu chuyển ựổi từ tương tự sang số, ựược sắp xếp như hình dưới ựây.

Hình 2.6: Thanh ghi dữ liệu ADC

- Nguyên tắc hoạt ựộng và lập trình ựiều khiển

ADC có nhiệm vụ chuyển ựổi tắn hiệu ựiện áp tương tự thành tắn hiệu số có ựộ phân giải 10 bit.Với giá trị nhỏ nhất của ựiện áp ựặt ở chân AGND và giá trị cực ựại của ựiện áp tương tự ựược mắc vào chân AREF. Tám kênh tương tự ựầu vào ựược chọn lựa thông qua ADMUX và ADMUX này ựược ựiều khiển bởi thanh ghi ADMUX.

ADC này có thể hoạt ựộng ựược ở hai chế ựộ. đó là chuyển ựổi ựơn: chỉ chuyển ựổi một lần khi có lệnh chuyển ựổi và chế ựộ tự chuyển ựổi (Free running mode) ựây là chế ựộ mà ADC tự ựộng chuyển ựổi khi ựược hoạt ựộng và công việc chuyển ựổi có tắnh tuần hoàn (chỉ cần khởi ựộng một lần).

ADC ựược phép hoạt ựộng nhờ thiết lập bit ADEN. Quá trình chuyển ựổi ựược bắt ựầu bằng việc ghi vào bit ADSC mức logic 1 và trong suốt quá trình chuyển ựổi bit này luôn ựược giữ ở mức cao. Khi quá trình chuyển ựổi hoàn thành thì bit này ựược xóa bằng phần cứng và cờ AIDF ựược bật lên.

Dữ liệu sau khi chuyển ựổi ựược ựưa ra thanh ghi dữ liệu ADCL và ADCH, nhưng chú ý khi ựọc dữ liệu từ hai thanh ghi này thì ựọc ADCL trước rồi mới ựọc

Trường đại học Nông Nghiệp Hà Nội Ờ Luận văn thạc sĩ khoa học kỹ thuật ẦẦẦẦẦẦẦẦẦ.. 27

ADCH. Nếu ựọc ADCH trước thì dữ liệu cập nhật có thể ghi ựè lên ADCL (Vi ựiều khiển nghĩ rằng ựã ựọc xong dữ liệu).

để ựiều khiển vào ra dữ liệu với ADC, các bước thực hiện như sau:

Bước 1: định nghĩa các cổng vào cho tắn hiệu tương tự. Xóa bit tương ứng với chân ựó trong thanh ghi DDRA. Sau ựó loại bỏ ựiện trở treo bằng cách xóa bit tương ứng ở thanh ghi PORTA.

Bước 2: Chọn kênh tương tự vào (chọn chân vào cho ADC) thông qua thanh ghi ADMUX (có thể thay ựổi trong quá trình hoạt ựộng).

Bước 3: Thiết lập các thông số cho ADC

Tốc ựộ chuyển ựổi thông qua xung nhip chuyển ựổi. Chế ựộ chuyển ựổi : ựơn hoặc tự ựộng.

Sử dụng ngắt hoặc không.

Bước 4: Bắt ựầu chuyển ựổi và ựọc dữ liệu.

Một phần của tài liệu Luận văn thiết kế chế tạo bộ điều khiển số quá trình trên nền vi điều khiển AVR (Trang 35 - 39)

Tải bản đầy đủ (PDF)

(108 trang)