![ADC](https://miccube.com/wp-content/uploads/2024/12/ADC-working-300x157.jpg)
ADC واحد آنالوگ به دیجیتال یک واحد پرکاربد میباشد که در تمامی میکروها وجود دارد و کار آن تبدیل سیگنال آنالوگ به دیجیتال میباشد چطور؟ به این صورت که یک بازه ولتاژی را به قسمتهای کوچکتر تقسیم کرده و به آن بازههای کوچک یک مقدار دیجیتال تخصیص میدهد به عنوان مثال بازه صفر تا پنج ولت در حالت عادی دیجیتال دو سطح دارد ۵ ولت برابر با ۱ و ۰ ولت برابر صفر و برای ولتاژهای این وسط جز این دو عدد نمیتوانیم تخصیص دهیم، حال اگر بخواهیم با یک ADC ۲ بیتی به دیجیتال تبدیل کنیم، ۲ به توان ۲ تعداد جایگشت با ۲ بیت را میدهد که ۴ میشود (۰۰.۰۱، ۱۰.۱۱) که برمبنای ده این اعداد (۰.۱، ۲.۳) میشود.
بنابراین ۰ تا ۵ را به چهار قسمت تقسیم کرده که میشود (۰تا ۱.۲۵ – ۱.۲۵ تا ۲.۵ – ۲.۵ تا ۳.۷۵ و ۳.۷۵ تا ۵) و به هر بازه یک عدد تخصیص میدهیم یعنی اگر ولتاژ بین ۰ تا ۱.۲۵ بود به آن ۰ یا مقدار باینری ۰۰ و اگر بین ۱.۲۵ تا ۲.۵ بود عدد ۱ یا بایندی ۰۱ و اگر بین ۲.۵ تا ۳.۷۵ بود عدد ۲ یا باینری ۱۰ و اگر بین ۳.۷۵ تا ۵ بود عدد ۳ یا باینری ۱۱ را تخصیص میدهیم و به این صورت اعداد را از آنالوگ و پیوسته به دیجیتال یا گسسته تبدیل میکنیم بدیهی است که هر چه تعداد بیتهای ADC بیشتر باشد میتوان بازهها را کوچکتر و دقیقتر کرد، معمولا ADCها ۸.۱۰، ۱۲.۱۶ بیتی میباشند که مثلا در ۱۶ بیتی میتوان بازه بین ۰ تا ۵ را به ۶۵۵۳۵ تبدیل کرد که رزولوشن به شدت بالا میرود و دقت در حدود ۷۵ میکرو ولت میشود.
بسیاری از سنسورها خروجی ولتاژ آنالوگ و پیوسته دارند، همچنین برای کار با مقاومتها پیوسته به عنوان سنسور یا ولومها، میکروفون و… نیاز به تبدیل از آنالوگ به دیجیتال داریم.
![ADC](https://miccube.com/wp-content/uploads/2024/12/3-s2.0-B9780081008805000050-f05-01-9780081008805-300x218.jpg)
اکثر میکروها یک واحد ADC دارند که تعداد زیادی کانال دارد و میتوان هر کانال را که روی یک پایه مجزاست را به یک منبع آنالوگ متصل نمود و هر لحظه یکی از این کانالها را اندازه گیری کرد چون سرعت تغییر ولتاژهای آنالوگی که ما با آن هاسر وکار داریم زیاد نیست و این تعویض کانال در کسری از ثانیه اتفاق میافتد میتوان با یک ADC تمام آنها را اندازه گیری کرد البته برخی از مدلهای میکروها دو واحد ADC و یا بیشتر هم دارند که در مصارف خاصی کاربرد دارند PIC، AVR و ARMها تفاوت چندانی در ADC با هم ندارند.