Cá nhân, tôi không phải là một fan hâm mộ lớn của các quy tắc ngón tay cái, nhưng có một vài quy tắc đặc biệt chính xác mà thậm chí tôi còn tạo ra một ngoại lệ.
Một trong những quy tắc đó như sau:
Thiết bị ngoại vi ADC vi điều khiển luôn khủng khiếp.
Luôn luôn. Không phải là loại khủng khiếp mà bạn vừa giảm. Loại khủng khiếp khiến bạn khóc trong tư thế bào thai khi tắm.
Tôi trẻ con, nhưng chỉ một chút. Để trả lời câu hỏi của bạn, vâng, ADC thực sự tệ đến mức đó, và vâng, bạn nên chấp nhận nó. Lưu ý từ chối trách nhiệm lớn nêu rõ "Áp dụng điều kiện hoạt động." trong biểu dữ liệu.
Bạn phải nhớ rằng đối với một số bộ phận nhất định (như MCU), biểu dữ liệu cũng là tài liệu tiếp thị và MCU thường cạnh tranh ở các thiết bị ngoại vi hoặc tiêu thụ điện năng (hoặc cả hai). Vì vậy, số liệu cho những thứ như ADC thường sẽ là về mặt kỹ thuậtchính xác, miễn là bạn sử dụng ADC trong cùng hoàn cảnh vô lý và không thực tế, họ đã thực hiện phép đo cho biểu dữ liệu. Một yêu thích tôi thường thấy là đo ENOB với tất cả các thiết bị ngoại vi khác cũng như lõi bộ xử lý thực sự bị tắt hoàn toàn trong một số giấc ngủ sâu. Một cách khác là sử dụng phần mềm xử lý hậu kỳ quan trọng và các kỹ thuật tương tự như quá khổ để lấy số đo. Tôi không nghĩ rằng tôi đã từng thấy một bảng dữ liệu MCU không chỉ định ADC về 'đây là điều tốt nhất bạn có thể đạt được, và chúng tôi có thể hoặc thậm chí không cho bạn biết cách chúng tôi quản lý nó' hơn là 'đây là thông số kỹ thuật trước khi bạn cố gắng dọn sạch tín hiệu trong phần mềm'.
Và, để rõ ràng, có vẻ như phần này có một ADC khá tốt, ít nhất là so với tất cả các ADC MCU khủng khiếp khác. 8,5 bit? Sự sung sướng như vậy! Tư sản quá! Hầu hết thời gian bạn sẽ nhận được có lẽ 6 bit từ một ADC 10 bit trong một MCU. Hãy nhớ rằng, khi họ nói độ phân giải 12 bit, có nghĩa là có 12 bit bạn có thể đọc từ một số thanh ghi ở đâu đó. Không có hàm ý rằng họ sẽ không có 12 bit tiếng ồn vô dụng. Lời hứa duy nhất là sẽ có 12 bit của một cái gì đó .
Bây giờ, tại thời điểm này, bạn có thể hơi nghi ngờ rằng các thiết bị ngoại vi tương tự này sẽ luôn khủng khiếp như vậy, hoặc ít nhất, tự hỏi tại sao một số công ty chip không đơn giản phát hành MCU với mặt trước tương tự nửa chừng.
Chà, họ không thể. Không quan trọng là tài liệu tham khảo thực sự tốt như thế nào, đó không phải là vấn đề ổn định. Đó là tiếng ồn. Và vật lý.
Đơn giản là không thể tạo ra một ADC hiệu suất cao (hoặc thực sự, chỉ là hiệu suất tầm thường) trên cùng một silicon chết như MCU. Và nó chỉ mất một gotchya để tăng hiệu suất tương tự. Trong trường hợp này, không có một gotchya, mà là một vài.
Đầu tiên, chỉ cần một chuyển đổi bóng bán dẫn CMOS sẽ đổ tất cả các loại sóng hài và nhiễu trực tiếp vào, tất cả mọi thứ, và sẽ kết hợp thành (bạn đoán nó) mọi thứ, khi nó chuyển đổi. Chúng tôi có xu hướng nghĩ về CMOS như là công suất thấp (và nó là), nhưng nó là giữ giá trị trong tâm trí rằng sức mạnh CMOS không sử dụng một cách hiệu quả là zero - trừ khi một transistor đang thay đổi trạng thái. Và họ thay đổi trạng thái rất nhanh, theo thứ tự hàng chục đến hàng trăm picos giây. Khi bạn mất hàng tá milliamp bị tiêu thụ bởi thứ gì đó tiêu thụ cơ bản không có năng lượng tĩnh, và tất cả dòng điện đó đang bị biến hoàn toàn thành cường độ cao, 100ps hiện tại của hàng triệu con khốn nhỏ bé theo nghĩa đenchuyển đổi, chuyển đổi trong tổng hợp ... tốt, điều đó sẽ điều chỉnh lại mọi thứ một chút. Vài milliamp đó độc ác hơn nhiều so với vẻ ngoài của chúng, ít nhất là đối với những thứ tương tự. Công suất thấp noise tiếng ồn thấp. CMOS là công suất thấp vì nó chỉ cần nguồn để chuyển đổi. Nhưng nó chuyển mạnh hơn một giọt bass dubstep.
Tất cả các gai đó đều phải xé toạc chất nền, chất nền mà ADC chia sẻ và đủ điện trở để tạo ra sự bật lên cục bộ trong chất nền không có ý nghĩa đối với các mạch kỹ thuật số, nhưng thực sự rất rắc rối đối với bất kỳ mạch tương tự nào.
Và thực sự không có cách nào xung quanh đó. Đó chỉ là một vấn đề. Mặt khác là thực tế không thể tạo ra bố cục tương tự hiệu suất cao có thể cùng tồn tại với MCU, điều này cũng sẽ cần sử dụng các chân đó như GPIO, và các cân nhắc khác làm gián đoạn nghiêm trọng bất kỳ cơ hội nào của phần tương tự tốt bố trí.
Bây giờ, có một vài MCU chuyên dụng với các ADC được cải thiện phần nào đạt được điều này bằng cách thực sự có hai khuôn silicon hoàn toàn riêng biệt trong một gói, được kết nối bằng dây liên kết, do đó tạo ra sự cách ly cơ chất. Tuy nhiên, bạn sẽ trả tiền cho tính năng này và kết quả vẫn sẽ kém hơn so với ADC chuyên dụng do sự gần gũi tuyệt đối.
Ồ, và tôi thậm chí chưa từng chạm vào làm thế nào tất cả đều cho rằng bạn có một bố cục bên ngoài hoàn hảo và tình huống tiếp đất và tách rời theo mọi cách liên quan đến phần analog và kỹ thuật số của bạn. Điều đó một mình là không cần thiết, chỉ cần hỏi Henry Ott .
Vì vậy, để kết luận, tôi sợ rằng ADC trên chip của bạn thực sự khủng khiếp như vậy. Chính xác như mọi MCU ADC khác. Lấy làm tiếc. Hoặc nó đủ tốt - và cho nhiều ứng dụng (được hỗ trợ bởi một số nguồn phần mềm khá thông minh ry - chơi chữ!) - đó là. Thật đáng kinh ngạc những gì người ta thực sự có thể làm được ngay cả với hiệu suất tương tự kém có sẵn miễn là bạn thông minh. Nhưng thông minh chỉ có thể mang bạn đến nay. Nếu bạn muốn số bit hiệu quả, lạnh, bạn thực sự chỉ cần cắn viên đạn và sử dụng một ADC chuyên dụng cùng với cách bố trí và tách rời PCB cẩn thận, hoặc xem xét sử dụng một phần chuyên dụng hơn (như các gói đa điểm).