Skip to main content

ทำไมค่า ADC ของบอร์ด Arduino ถึงมีค่า 0-1023

ทำไมค่า ADC ของบอร์ด Arduino ถึงมีค่า 0-1023

สัญญาณแอนะล็อก
ในบทความนี้จะเป็นการอธิบายว่าบอร์ด Arduino เวลาอ่านค่า ADC (ค่าแอนะล็อก 0-5V) ค่าที่ได้คือ 0 - 1023 ดูการใช้งานการอ่านค่าอนาล็อกเพิ่มเติมได้ที่ Arduino กับการอ่านค่าแอนะล็อก  
สาเหตุมาจากไอซีของบอร์ด Arduino (Uno, leonardo, Mega2560, อื่นๆ) มีความสามารถในการอ่านค่า ADC ได้ละเอียดสุด 10 บิต หรือ 2^10 = 1024 ระดับ* ทำให้ค่าแอนะล็อกที่บอร์ด Arduino อ่านได้ มีค่า 0 - 1023 (ไม่มีหน่วย)
* สำหรับบอร์ด Arduino บางรุ่น เช่น Due, M0, MRK1X00, etc. จะสามารถอ่านค่า ADC (0-3.3V) ได้ละเอียดสุด 12 บิต หรือ 2^12 = 4096 ระดับ (สามารถกำหนดความละเอียดเป็น 8,10,12 บิตได้ ดูเพิ่มเติม)

ADC จากโวลต์มิเตอร์เทียบกับบอร์ด Arduino (10 บิต)
ตารางเทียบค่าความต่างศักย์กับค่า ADC (10 บิต)
หลังจากเข้าใจการเปรียบเทียบเเล้ว สามารถใช้บอร์ด Arduino อ่านค่า ADC เเล้วเขียนโปรเเกรมเพื่อเปรียบเทียบค่าเเอนะล็อกที่อ่านได้ไปเป็นค่าความต่างศักย์ ดูเพิ่มเติมได้จากบทความ Arduino กับการอ่านค่าความต่างศักย์ เพื่อประยุกต์ใช้งานในงานอื่นๆ ต่อไป 

Comments

Popular posts from this blog

Arduino กับการใช้งาน Serial Monitor

Arduino กับการใช้งาน Serial Monitor Serial Monitor คือ ส่วนหนึ่งของโปรแกรม Arduino IDE สามารถใช้งานได้ 2 อย่าง คือ - แสดงผลลัพธ์จากบอร์ด Arduino - ใช้รับข้อมูลจากผู้ใช้ แล้วส่งข้อมูลไปยังบอร์ด Arduino รูปแบบการใช้งาน Serial Monitor เริ่มต้นใช้งาน void setup() {    Serial.begin(9600); } แสดงผลออกทาง Serial Monitor Serial.print("Hello World");       /* แสดงคำว่า Hello World */ Serial.println("Hello World");     /* แสดงคำว่า Hello World และขึ้นบรรทัดใหม่ */   อ่านค่าจาก Serial Monitor Serial.read(); วิธีเปิด Serial Monitor 1. กด Ctrl + Shift + M 2. กด Icon ตัวอย่างการแสดงผลลัพธ์จากบอร์ด Arduino แสดงผลลัพธ์จากบอร์ด Arduino ตัวอย่างการรับค่าจาก Serial Monitor - ส่ง 1 เพื่อ On LED -  ส่ง 0 เพื่อ Off LED แสดงผลลัพธ์การรับค่าจาก Serial Monitor * ถ้าไม่สำเร็จ ตรวจสอบว่าเลือก No line ending และบอดเรทเป็น 9600 เเล้วหรือยัง

Why ADC value of the Arduino is 0-1023?

Why ADC value of  the Arduino is 0-1023? Analog Signal In this article, it will be explained that why Arduino board reads the ADC value (0-5V) is 0 - 1023. (see more  Arduino - AnalogRead ) Because IC chip of Arduino Board (Uno, leonardo, Mega2560, etc.). Can read ADC values up to 10 bits or 2 ^ 10 = 1024*  So the analog value on the Arduino board is 0 - 1023 (no unit). For some Arduino boards, such as Due, M0, MRK1X00, etc., the ADC (0-3.3V) can be read in 12 bit or 2 ^ 12 = 4096 level (resolution is 8,10,12 bits. See more ) ADC from Voltmeter vs. Arduino Board (10 bit) Comparison table with ADC (10 bits) After understanding the comparison. You can use the Arduino board to read the ADC values and write a program to compare ADC value to voltage. see more  Arduino - Analog Read Voltage  To apply for Other Applications.