# Basic Digital and Analog I/O

## **Digital signal**&#x20;

&#x20;     เป็นสัญณาณที่มีลักษณะรูปคลื่นสัญญาณเป็น square waves ในด้านไมโครคอนโทรลเลอร์จะรับและส่งค่าสัญญาณประเภทดิจิตอลเป็นสองค่าคือ High และ Low  แปลงเป็นชุดข้อมูลที่เก็บเป็นตัวเลข 1 กับ 0 ซึ่งขนาดความยาวของการรับ-ส่งข้อมูลแต่ละชุดจะขึ้นอยู่กับประเภทของโปรโตคอลที่ใช้ในการสื่อสาร

![Digital Signals แหล่งที่มา: https://learn.sparkfun.com/tutorials/analog-vs-digital/digital-signals](https://1856353139-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MClo3nC-1US0rbK8Qau%2Fuploads%2F6KbnDPFPScadt6FjfssE%2FCOXk7Odw.png?alt=media\&token=6187e403-6422-438d-a031-6dec744c240f)

## Analog signal&#x20;

&#x20;      เป็นสัญณาณที่มีลักษณะต่อเนื่องมีรูปคลื่นสัญญาณเป็น sine waves ในด้านไมโครคอนโทรลเลอร์จะรับและส่งค่าสัญญาณประเภทอนาล็อกมีค่าเป็นช่วงข้อมูลแปลงเป็นดิจิตอลแล้วเก็บเป็นชุดข้อมูลแบบบิตอีกครั้ง

![Analog Signal แหล่งที่มา: https://learn.sparkfun.com/tutorials/analog-vs-digital/analog-signals](https://1856353139-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MClo3nC-1US0rbK8Qau%2Fuploads%2Fc2Klf1dIqqiLVL5vl43v%2FSCvk7XBg.png?alt=media\&token=5910dc28-7d43-4366-8836-0f3c6929a833)

## Microcontroller input and output

Microcontroller (MCU) เป็นอุปกรณ์ควบคุมขนาดเล็กที่มี หน่วยประมวลผล (CPU) หน่วยความจำ(Memory) และสามารถรับ-ส่งข้อมูลกับอุปกรณ์อิเล็กทรอนิกส์ที่เชื่อมต่อกับบอร์ด MCU ผ่านพอร์ตรับข้อมูลเข้า(Input) และพอร์ตส่งข้อมูลออก(Output) ได้ สำหรับการเชื่อมต่ออุปกรณ์เพื่อจะรบส่งข้อมูลกับ MCU บอร์ดนั้น เราจะต้องรู้ก่อนว่าอุปกรณ์ที่ต้องการเชื่อมต่อเป็นประเภท Analog หรือ Digital และเราต้องการรับข้อมูลเข้ามา(Input)หรือส่งออก(Output) เพื่อที่จะสามารถเลือกพอร์ตในการเชื่อมต่อได้ถูกต้อง

**Arduino Uno R3 Board**

![    Arduino Uno R3 Board แหล่งที่มา : https://www.arduino.cc/en/Main/Products](https://1856353139-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MClo3nC-1US0rbK8Qau%2Fuploads%2F4ub6JIn1RPaxaqWm8HfJ%2FPm2Eg6Xg.jpeg?alt=media\&token=a0a3131a-2df5-465f-9d83-0aa0fb152a31)

**PINOUT of Arduinno Uno R3**

![Arduino Uno R3 แหล่งที่มา: https://store-usa.arduino.cc/products/arduino-uno-rev3](https://1856353139-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MClo3nC-1US0rbK8Qau%2Fuploads%2FuLfYz4I4upu6McqlgY0P%2F4WfqfZMw.png?alt=media\&token=ae2d2c81-6bdd-48f4-9661-eb8928c5424c)

## การเริ่มต้นใช้งาน Arduino Boards

สามารถใช้โปรแกรม Arduino IDE สำหรับ complie โปรแแกรมลงบอร์ด หรือทดลองเขียนโปรแกรมง่ายบน website จำลองได้ สำหรับเว็บไซต์จำลองมีข้อจำกัดด้านบอร์ดที่มีแค่ Arduino uno R3 ให้ทดลองเล่นได้ในตอนนี้

### [**ติดตั้งโปรแกรม Arduino IDE**](https://docs.aic-eec.com/embedded-systems/lab1-oscilloscope/arduino-ide)

### [**Website Arduino Simulator**](https://www.tinkercad.com/dashboard)

![](https://1856353139-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MClo3nC-1US0rbK8Qau%2Fuploads%2Fo6NmRtd3R4nBqy5SMSiA%2FL7sFMivN.png?alt=media\&token=0342e43a-1a0a-446a-914d-9039e3c3247f)

###

&#x20;
