พอดีผมซื้อของจากทางร้านมา มี
เมกา2560
lcd 1602 a
คีย์แพด 5x4 ฟังชั่น
ผมว่าจะทำ เครื่องนับจำนวน
โดยมีหลักการดังนี้
กดปุ่ม F1 ให้ป้อนค่าตัวเลข
กดปุ่ม Ent ให้เก็บค่าตัวเลขในEEPROM
กดปุ่ม * เป็นการ สตาร์ท ให้มีเอาท์พุท 1 ออกไปขับรีเลย์ให้มอเตอร์ขับสายพานโหลดของที่จะนับทำงาน
จากนั้นให้รับค่าจากโฟโต้เซ็นเซอร์มาเปรียบเทียบกับค่าที่เก็บในEEPROM
ถ้าค่าเท่ากันให้หยุดนับเอาท์พุท 1 เป็น0 ต่อจากนั้น
ให้มีเอาท์พุท2 ออกไปขับรีเลย์ ให้มอเตอร์2 ทำงาน
เมื่อมอเตอร์ 2 ทำงานแล้วโดยมีสวิทช์ตรวจจับแล้วให้มอเตอร์2 หยุดทำงาน
จากนั้น วนลูปจาก มอเตอร์ 1 ทำงาน ถึงมอเตอร์2 หยุดทำงานไปเรื่อยๆ
ถ้ากดปุ่ม # ให้โปรแกรมหยุดชั่วคราว โดยคงค่าที่รับจากเซ็นเซอร์ไว้ เมื่อกดปุ่ม สตาร์ท ให้ทำงานต่อ
ถ้ากดปุ่ม Esc ให้โปรแกรมหยุดทำงาน และ ล้างค่าที่รับจากเซ็นเซอร์
ความต้องการ คือ
1 เมื่อเปิดเครื่อง ถ้ากดปุ่ม F2 ให้นำค่าที่ตั้งไว้ในครั้งก่อนมาใช้งาน
2 อยากให้มีการนับจำนวนรอบการทำงาน
3 ให้จำนวนที่ตั้งไว้ แสดงใน บรรทัดที่ 1 จำนวนรอบการทำงานแสดงใน บรรทัดที่ 2
4 ถ้ากดปุ่ม ลูกศรซ้าย ให้ลบค่าจำนวนรอบการทำงาน
ตอนนี้ผมเขียนโปรแกรมไห้รับค่าตัวเลขและแสดงผลออก lcd ได้แล้ว แต่ส่วนอื่นเขียนเป็น
*** ยังไงก็ฝากด้วยนะครับจำเป็นต้องใช้จริงๆ หาดูตามเว็บต่างๆ ก็ไม่ค่อยแนะนำการเอาไปใช้งาน
มีแต่โปรแกรมพื้นๆ ไปเว็บนอกก็อ่านไม่ออก เรียนมาน้อยแต่อยากทำเป็น
สำหรับการเขียนโปรแกรม ตรงนี้อยากให้ทดลองทีละโมดูลแล้วนำมารวมกัน โคดโปรแกรมส่วนมาก มีตัวอย่างเกือบครบแล้ว หลัก ๆ จะเป็นการเขียนโปรแกรมเช็ค if จากปุ่มที่กดเข้ามา
เซนเซอร์นับจำนวนและรีเลย์ใช้แค่คำสั่ง digitalRead() ,digitalWrite() ก็ได้ค่านับวัตถุควบคุม relay ได้แล้ว
จอ lcd มีตัวอย่างในหน้าบทความ
การบันทึกลง eeprom มีโคดตัวอย่างมากับ arduino ide ไม่ต้องหาลงเพิ่ม
จะได้ลองเล่นและได้ความรู้ครับ