" เกมส์งู " แท๊นแท่นน!!! เกมส์สุดคลาสสิคที่ทุกคนก็คงจะคุ้นเคยกันเป็นอย่างดีเพราะเราเล่นกันมานานมากทั้งในมือถือ ในคอมพิวเตอร์ แต่มันก็คงจะจำเจมาก ถ้าเรายังเล่นแบบเดิมๆกันอยู่ใช่ไหมคะ วันนี้เรามีสิ่งที่จะทำให้การเล่นเกมส์งูอันแสนน่าเบื่อดูมีความน่าสนใจขึ้นมา นั่นก็คือ " Building the snake game using matrix LED with the Arduino " ซึ่งก็คือการทำเกมส์งูด้วยการใช้ matrix LED ที่ถูกควบคุมด้วย Arduino มาถึงตรงนี้หลายๆคนคงสงสัยใช่ไหมคะ เอ๊ะ! Matrix LED คืออะไรนะ? แล้วArduinoใช้ควบคุมได้อย่างไรล่ะ? ถ้าอยากจะทำเองบ้าง จะเริ่มทำอย่างไรดี? ดังนั้นวันนี้เรามาเรียนรู้ข้อมูลพื้นฐานที่เราจะไปใช้ทำเกมส์ของเรากันดีกว่าค่ะ Let's go!! ^^
วงจรเลื่อนข้อมูล(Shift Register)
รีจิสเตอร์ คือ กลุ่มของฟลิปฟลอปที่ต่อเรียงกันและทำงานร่วมกันใช้สำหรับเก็บข้อมูลหรือ
เลื่อนข้อมูลรีจิสเตอร์ที่ใช้สำหรับเลื่อนข้อมูลเรียกว่า ชิฟท์รีจิสเตอร์
โครงสร้างของไบนารีรีจิสเตอร์
จากรูปที่ 17.1 แสดงไบนารีรีจิสเตอร์เบื้องต้นขนาด 4 บิต ประกอบด้วย เจเค ฟลิปฟลอป 4 ตัว ต่อกันแบบคาสเคด
จากรูปที่ 17.1 แสดงไบนารีรีจิสเตอร์เบื้องต้นขนาด 4 บิต ประกอบด้วย เจเค ฟลิปฟลอป 4 ตัว ต่อกันแบบคาสเคด
รูปที่ 17.1 ชิฟท์รีจิสเตอร์ที่สร้างจาก
เจเค ฟลิปฟลอป
การแบ่งกลุ่มรีจิสเตอร์
การแบ่งกลุ่มรีจิสเตอร์สามารถแบ่งตามลักษณะการทำงาน
และการต่อวงจร สามารถแบ่งออกเป็น 4 กลุ่มใหญ่ๆ ดังนี้
- แบบอนุกรมเข้า – อนุกรมออก (SISO)
- แบบอนุกรมเข้า – ขนานออก (SIPO)
- แบบขนานเข้า – อนุกรมออก (PISO)
- แบบขนานเข้า – ขนานออก (PIPO)
แบบอนุกรมเข้า – อนุกรมออก
จากรูปที่ 17.2 เป็นชิฟท์รีจิสเตอร์แบบอนุกรมเข้า - อนุกรมออก ข้อมูลแบบอนุกรมจะถูกป้อนเข้าที่อินพุต JAและข้อมูลอนุกรมออกที่เอาต์พุต QD
จากรูปที่ 17.2 เป็นชิฟท์รีจิสเตอร์แบบอนุกรมเข้า - อนุกรมออก ข้อมูลแบบอนุกรมจะถูกป้อนเข้าที่อินพุต JAและข้อมูลอนุกรมออกที่เอาต์พุต QD
รูปที่ 17.2 วงจรรีจิสเตอร์แบบอนุกรมเข้า
– อนุกรมออก
แบบอนุกรมเข้า – ขนานออก
เมื่อนำข้อมูลอินพุตเข้าทีละหลัก
แต่นำออกเอาต์พุตออกพร้อมกัน เรียกว่า แบบอนุกรมเข้า - ขนานออก
ตัวอย่างวงจรเบื้องต้นดังแสดงในรูปที่ 17.3
รูปที่ 17.3 วงจรรีจิสเตอร์แบบอนุกรมเข้า
- ขนานออก
จากรูปที่
17.3 เป็นวงจรรีจิสเตอร์แบบอนุกรมเข้า
– ขนานออก ข้อมูลแบบอนุกรมจะถูกป้อนเข้าที่อินพุต JAและข้อมูลขนานออกที่เอาต์พุต QA ถึง QD
แบบขนานเข้า – อนุกรมออก
เมื่อนำข้อมูลอินพุตเข้าพร้อมกัน แต่นำออกที่เอาต์พุตทีละหลัก เรียกว่า แบบขนานเข้า - อนุกรมออก วงจรชิฟท์รีจิสเตอร์แบบขนานเข้า – อนุกรมออก ชนิดเก็บข้อมูลผ่านเกตควบคุมไปเข้าที่ขาพรีเซ็ตกับเคลียร์ของฟลิปฟลอปแต่ละตัวโดยตรง แสดงดังรูปที่ 17.4
เมื่อนำข้อมูลอินพุตเข้าพร้อมกัน แต่นำออกที่เอาต์พุตทีละหลัก เรียกว่า แบบขนานเข้า - อนุกรมออก วงจรชิฟท์รีจิสเตอร์แบบขนานเข้า – อนุกรมออก ชนิดเก็บข้อมูลผ่านเกตควบคุมไปเข้าที่ขาพรีเซ็ตกับเคลียร์ของฟลิปฟลอปแต่ละตัวโดยตรง แสดงดังรูปที่ 17.4
รูปที่ 17.4 วงจรรีจิสเตอร์แบบขนานเข้า – อนุกรมออก ชนิดนำข้อมูลเข้าแบบไม่ต้องเข้าจังหวะ
รูปที่ 17.5 วงจรรีจิสเตอร์แบบขนานเข้า – อนุกรมออก
ชนิดนำข้อมูลเข้าแบบเข้าจังหวะ
แบบขนานเข้า – ขนานออก
เมื่อนำข้อมูลอินพุตเข้าพร้อมกัน และนำข้อมูลออกที่เอาต์พุตพร้อมกัน เรียกว่าแบบขนานเข้า – ขนานออก
รูปที่ 17.6 วงจรรีจิสเตอร์แบบขนานเข้า – ขนานออก
จากรูปที่ 17.6 เป็นวงจรรีจิสเตอร์แบบขนานเข้า – ขนานออก ข้อมูลแบบขนานจะถูกป้อนเข้าที่อินพุต PA ถึง PDของฟลิปฟลอปทุกตัว และข้อมูลขนานออกที่เอาต์พุต QA ถึง QD
ไอซีไบนารีรีจิสเตอร์
ไอซีเบอร์ 7495 เป็นไอซีไบนารีรีจิสเตอร์ ขนาด 4 บิต แสดงลอจิกไดอะแกรม ดังรูปที่ 17.7
ไอซีเบอร์ 7495 เป็นไอซีไบนารีรีจิสเตอร์ ขนาด 4 บิต แสดงลอจิกไดอะแกรม ดังรูปที่ 17.7
รูปที่ 17.7 ไอซีไบนารีรีจิสเตอร์ เลื่อนข้อมูลขวา/ซ้าย
วงจรลอจิกเกตที่ต่อเพิ่มเติม
สามารถควบคุมให้รีจีสเตอร์สามารถเลื่อนข้อมูลไปทางซ้าย หรือ
เลื่อนข้อมูลไปทางขวาได้ สำหรับการทำงานในการเลื่อนข้อมูลไปทางซ้าย เอ้าต์พุต Q
ของฟลิบฟลอบ ตัวหลังจะต้องต่อย้อนกลับไปยังอินพุตของฟลิบฟลอบตัวหน้า
ซึ่งสามารถใช้ไอซีออร์เกตเบอร์ 7432 มาต่อช่วยอีกตัวหนึ่ง
และยังทำให้สามารถนำข้อมูลเข้าแบบขนานเข้าสู่รีจีสเตอร์ได้ด้วย
การส่งถ่ายข้อมูลระหว่างรีจิสเตอร์
ในระบบงานดิจิตอล
จำเป็นต้องส่งถ่ายข้อมูลจากรีจิสเตอร์ตัวหนึ่งไปยังรีจิสเตอร์อีกตัวหนึ่ง
สามารถทำได้สองวิธี คือ การส่งถ่ายข้อมูลแบบอนุกรม และการส่งถ่ายข้อมูลแบบขนาน
ดังแสดงใน รูปที่ 17.9
รูปที่ 17.9 การส่งถ่ายข้อมูลระหว่างรีจิสเตอร์ (แบบอนุกรม)
การส่งถ่ายข้อมูลระหว่างรีจิสเตอร์
(แบบขนาน)
ดอทเมตริกซ์ (Dot Matrix)
ดอทเมตริกซ์ (Dot Matrix) เป็นอุปกรณ์แสดงผล แบบเดียวกับ LED ค่ะ คือจะเป็นการนำเอา LED หลายๆตัวมาต่อเรียงกัน
เป็นหลัก เป็นแถว ซึ่งเราจะเห็นการใช้งานดอมเมตริกซ์ในการทำป้ายไฟวิ่ง โดยเราจะนำเอาดอทเมตริกซ์ หลายๆตัวมาต่อกัน แล้วเขียนโปแกรมผ่านไมโครคอนโทลเลอร์
หรือ คอมพิวเตอร์ผ่านวงจรขับดอทเมตริกซ์ เราก็สามารถทำไฟวิ่งได้เช่นกันค่ะ
รูปภายในของดอทเมทริกซ์
ตัวอย่างวีดีโอที่น่าสนใจเกี่ยวกับShift Rehgister
ไม่มีความคิดเห็น:
แสดงความคิดเห็น