Nội dung:
Khảo sát hoạt động khối chuyển đổi A-D.
Khảo sát các thanh ghi điều khiển hoạt động khối chuyển đổi A -D.
Yêu cầu:
Viết chương trình đọc và hiển thị giá trị điện áp thay đổi bởi biến trở.
8.1 Các bước hiện thực
Bước 1. Tạo project mới giống như hướng dẫn ở chương 1 lấy tên project là a2d và chọn chip 18f4520. Ta được hình sau:
Bước 2. Include filep18f4520.inc vào filea2d.asm
Bước 3. Khởi tạo module ADC để ta có thể sử dụng một cách dễ dàng. InitializeAD
movlw B'00000001' ; chọn kênh AN0, cho phép A/D movwf ADCON0
movlw B'00001110' ; Chọn RA0/AN0 là chân nhập analog movwf ADCON1
movlw B’00000001’ ; Chỉnh biên trái (ADRESH chứa 8 bit cao), ; tần số AD là FOSC/8
movwf ADCON2
call SetupDelay ; delay for 15 instruction cycles return
Để khởi tạo được module ADC ta chỉ cần quan t âm chủ yếu tới các thanh ghi ADCON1, ADCON0, ADCON2. Như chương trình khởi tạo trên ta thấy đầu tiên phải cấu hình cho các pin tương ứng phải là chân AN0, mặc định của các chân này có chức
năng là Input/Output digital. Sau đó ta phải chọn kênh ADC tương ứng, ở đây ta sử dụng kênh AD0. Và một điểm quan trọng nữa chính là bit GO trong thanh ghi ADCON0, khi bit này được bật lên thì module AD mới bắt đầu chuyển đổi tín hiệu.
Bước 4. Tiếp theo là hàm đọc giá trị ADC: Update_adc
bsf ADCON0,GO ;start conversion Wait_res
btfsc ADCON0,GO bra Wait_res movf ADRESH,W return
Sau khi chuyển đổi tín hiệu A-D, giá trị số sẽ được lưu vào thanh ghi ADRESH. Đến đây tùy vào ứng dụng cụ thể mà ta có thể b iến đổi giá trị này tùy theo yêu cầu mà ta mong muốn.
8.2 Bài tập
a) Tích hợp module LCD, lấy giá trị điện thế từ biến trở hiển thị lên LCD.
b) Sử dụng module ADC của Pic để đo nhiệt độ trong phòng, dùng LCD để hiển thị giá trị nhiệt độ.
Bộ mơn Kỹ Thuật Máy Tính 63 Thực hành Vi xử lý