Biến đổi giá trị điện áp tương tự (analog) sang 1 giá trị điện áp số (digital) có độ chính xác hữu hạn. Giá trị số này là số nguyên có dấu hoặc không dấu, nó thể hiện gần đúng mức điện áp đầu vào so với điện áp tham chiếu.
Điện áp tham chiếu (Vref) là mức điện áp cố định được cung cấp bởi vi điều khiển hoặc 1 mạch bên ngoài. Điện áp đầu vào cần nằm trong [0;Vref]. Nếu điện áp đầu vào > Vref, ADC không thể đo chính xác giá trị đó
Tốc độ lấy mẫu (Sampling Rate): Số lần ADC thực hiện phép đo trong 1 giây
Độ phân giải (Resolution): thể hiện bởi các mức khác nhau của giá trị đầu ra (số bit của giá trị đầu ra). Vi dụ: ADC 8 bit có thể biểu diễn 256 mức khác nhau. Số bit càng nhiều, giá trị càng chính xác, nhưng thời gian chuyển đổi lâu hơn.
Công suất tiêu thụ: lượng điện năng mà ADC tiêu thụ khi hoạt động
Lượng tử hóa số (Digital Quantization): dựa trên thuật toán tìm kiếm nhị phân (chia đôi khoảng) để tìm ra giá trị số gần nhất với tín hiệu đầu vào tương tự.
- Nếu Vin > Vref/2, đặt bit cao nhất (MSB) = 1. Bước tiếp theo sẽ so sánh với 3/4 Vref
- Nếu Vin < Vref/2, đặt bit cao nhất = 0. Bước tiếp theo sẽ so sánh với 1/4 Vref
- Lặp lại cho tất cả các bit tiếp theo
- Nếu ADC có độ phân giải n bit, thì quá trình chuyển đổi cần n bước để xác định giá trị số đầu ra
- Độ phân giải càng cao, thời gian chuyển đổi càng lâu, kết quả càng chính xác.

Lấy mẫu (Sampling):
- Khi công tắc đóng, tụ điện bắt đầu nạp điện theo điện áp đầu vào Vin
- Do tính chất RC (điện trở và tụ điện), điện áp trên tụ tăng theo hàm mũ


Vì điện áp trên tụ không thể thay đổi ngay lập tức, nên nếu thời gian lấy mẫu quá ngắn, tụ chưa kịp đạt đến giá trị Vin và ADC sẽ đọc sai giá trị
Thời gian lấy mẫu càng lâu, điện áp trên tụ càng sát giá trị Vin. Ví dụ, nếu thời gian lấy mẫu là 3τ, điện áp trên tụ đạt 95% Vin. Nếu thời gian lấy mẫu là 5τ, điện áp trên tụ đạt 99% Vin
Thời gian lấy mẫu thật dài, sẽ không bắt kịp các tín hiệu tần số cao (tín hiệu biến đổi nhanh), làm cho kết quả đo là những tín hiệu bị méo. Cần tăng tần số lấy mẫu. Hoặc khi hệ thống cần đáp ứng thời gian thực khắt khe, việc kéo dài thời gian lấy mẫu của ADC sẽ làm nghẽn cổ chai toàn bộ chu kỳ xử lý của vi điều khiển.
Giữ giá trị (Hold):
- Khi công tắc mở, tụ điện giữ nguyên điện áp hiện tại, giúp ADC có thời gian thực hiện chuyển đổi
- Sau đó, ADC đọc giá trị này và chuyển đổi sang dạng số
Tổng thời gian ADC chuyển đổi:

- Sampling Time: Thời gian tụ điện nạp điện
- Channel Conversion Time: Thời gian ADC thực hiện chuyển đổi (với SAR ADC, mất n xung clock để chuyển đổi n bit)
Ví dụ: 12-bit ADC, clock 16MHz, Sampling Time = 4 chu kỳ, Channel Conversion time = 12 chu kỳ

clock 16 MHz -> T = 1/16M = 62.5 ns

-> ADC có thể lấy mẫu với tốc độ 1 triệu mẫu/giây
Khi ADC chuyển đổi tín hiệu analog sang số, giá trị số được tính:

- Vin: Điện áp đầu vào được đưa vào bộ ADC
- Vrh: Điện áp tham chiếu cao (VREF+)
- Vrl: Điện áp tham chiếu thấp (VREF-)
- round(): Làm tròn kết quả
Hai chế độ chuyển đổi ADC
- Chế độ single-end (đơn cực): Vrl = 0, đầu ra ADC là số không dấu
- Chế độ Dual-end (Hai đầu vào - Hai cực): Vrl = - Vrh, đầu ra ADC là số có dấu dạng bù 2
2. Các chế độ chuyển đổi
a. Dùng 1 kênh đầu vào
| Chế độ chuyển đổi đơn (Single) | Chế độ chuyển đổi liên tục (Single Continous) |
|
Lấy mẫu tín hiệu đầu vào 1 lần |
![]() |
Nếu kênh nằm trong nhóm injected, khi có yêu cầu chuyển đổi, ADC thực hiện chuyển đổi nhóm injected trước rồi mới tiếp tục nhóm regular
(Nhóm injected có độ ưu tiên cao hơn nhóm regular)
b. Dùng đa kênh đầu vào
ADC lần lượt chuyển đổi từng kênh trong danh sách, sau đó tiếp tục với kênh tiếp theo theo thứ tự đã định sẵn
- Nhóm regular chỉ có 1 vùng lưu trữ kết quả chung, vì vậy sau mỗi lần đo, cần đọc dữ liệu trước khi giá trị mới ghi đè lên
- Nhóm injected có vùng lưu trữ riêng cho từng kênh,
| Chuyển đổi một lần | Chuyển đổi liên tục |
|
Sau khi đo hết các kênh trong danh sách, ADC dừng
|
ADC tự động lặp lại quá trình đo
|
Để tránh mất dữ liệu, kết quả đo cần được lưu trữ vào bộ nhớ đệm của người dùng
Các tín hiệu kích hoạt bộ ADC bắt đầu chuyển đổi:
- Lệnh từ phần mềm để bật bit enable
- Phần cứng: Timer, ngắt ngoài


