แนวคิดนาฬิกาและ Code พื้นฐานจากที่นี่:
https://projecthub.arduino.cc/plouc68000/simplest-uno-digital-clock-ever-03c185
Code พื้นฐานสำหรับการแสดงผลหลายหน้าจากที่นี่:
https://wokwi.com/projects/357724302827308033
ข้อมูลเบื้องต้นเกี่ยวกับ TMP36:
https://projecthub.arduino.cc/m_karim02/using-a-temp-sensor-with-arduino-tmp36-temperature-sensor-e53be0
CODE เขียนด้วยภาษา C++

ข้อมูล LCD (Screen):
V0 คือข้อมูล Contrast ที่ส่งไปยัง LCD หรือข้อมูลเกี่ยวกับตัวอักษรเป็นหลัก
ขา D ตามด้วยตัวเลขใดๆ (เช่น D7) หมายถึงข้อมูลที่ส่งไปยัง LCD:
ข้อมูลแบบ 8-bit (D0-D7) และข้อมูลแบบ 4-bit (D4-D7)
LED+ คือข้อมูล Backlight ที่ส่งไปยัง LCD (Backlight คืออีกคำหนึ่งที่ใช้เรียกพื้นหลัง)
วิธีการทำงาน:
Clock : รีเฟรชทุกๆ 1000ms เพื่อรับค่าวินาทีและบวกเพิ่มไปยังค่าปัจจุบันจนถึง 60 จากนั้นจะบวกเพิ่มไปยังนาทีจนถึง 60 แล้วจึงบวกเพิ่มไปยังชั่วโมงจนถึง 12 จากนั้นจะรีเซ็ตเป็น 1 และสลับระหว่าง AM เป็น PM หรือในทางกลับกัน
Temp : ใช้ตัวตรวจจับแบบ Analog รุ่น TMP36 เพื่อรับอุณหภูมิโดยรอบและส่งข้อมูลไปยัง Analog Input A0 เพื่ออ่านค่าและประมวลผลด้วย Code ผ่าน Arduino UNO R3
Calc : ใช้ Math Library ในการคำนวณสูตรพื้นฐานต่างๆ
Free Ram: โดยพื้นฐานแล้วคือการนำข้อมูลที่ใช้งานอยู่มาลบออกจากขนาดหน่วยความจำทั้งหมด
CPU Load: จริงๆ แล้ว CPU ใน Arduino ไม่สามารถทำงานแบบ Multitasking ได้ ดังนั้นผมจึงให้มันจำลอง CPU Load จากข้อมูล Input เพื่อให้ดูเหมือนว่ามีการทำงานบางอย่างเกิดขึ้น
สัญลักษณ์ Degree อยู่ที่ส่วนเริ่มต้นของ Code ดังนี้:
// ─── DEGREE CHAR ──────────────────────────────────────────────
byte degreeChar[8] = {
B00110,
B01001,
B00110,
B00000,
B00000,
B00000,
B00000,
B00000
};
สิ่งที่มันทำคือการเขียนข้อมูลลงในหน่วยความจำของ Arduino โดยตรงเพื่อสร้าง Character ใหม่โดยใช้ Binary หากคุณสังเกตดีๆ จะมองเห็นรูปทรงของมัน