ผมสั่ง NRF24L01 PA LNA มาคู่นึง และ arduino atmega8 ทดสอบตามโค้ดที่ได้แนะนำในบทความแล้วทำงานได้ดีครับ (ขอบคุณสำหรับโค้ดตัวอย่างด้วยครับ) ผมอยากถามเพิ่มเติมดังนี้ครับ
- ไลบรารี่ที่ให้มาสามารถกำหนดความเร็วในการส่งได้มั้ยครับ เพราะจากข้อมูลในดาต้าชีตถ้าส่งที่ความเร็วตำสุดสามารถส่งได้ไกลสุดใช่มั้ยครับ
- สามารถรับและส่งข้อมูลพร้อมๆกันเลยได้มั้ยครับ เช่น A ส่งข้อมูลไป B ได้รับก็ตอบ ACK กลับมาเพื่อยืนยันข้อมูลและไม่ทราบว่ามันรับส่งกันแบบ half duplex หรือ full duplex ครับ พอจะมีข้อมูลมั้ยครับ
....ตัวนี้ผมจะทำเป็นตัวแปลงข้อมูล serial (uart) แล้วส่งแบบไร้สายไป อีกฝั่งก็รับแล้วส่งต่อออกไปเป็น serial uart อ่ะครับ
ขอบคุณครับ
ี่ครับผมลองใช้ Aduino Uno กับ Arduino MAGA รับส่งข้อมูลกันแล้วมันเป็นภาษาต่างดาว
พอดีผม มีปัญหาครับ กับเจ้า nRF24l01p ผมต่อกับ arduino uno r3 และทำตามที่คลิปวีดีโอสอน ปัญหาคือ ผมเปิดserial moniter แล้วเหมือนว่า scroll จะเลื่อนลงไปเรื่อยๆอย่างเร็วไม่มีข้อความขึ้นมาเหมือนในคลิป ก้เลยลองปรับboard rate ดู ให้เหลือ 9600(แก้ในโค้ดที่ให้มาและปรับที่serial moniter เรียบร้อยแล้ว) มีข้อความขึ้นครับแต่เป็นภาษาต่างดาว อยากทราบวิธีแก้ครับ (วีดีโอ https://drive.google.com/file/d/0B9fx5RCjiAbKaUhxUGlzV2Z3Nms/view?usp=sharing )
เช็คที่วงจรแหล่งจ่ายไฟครับ ใส่ C ค่า 0.1uf คร่อม vcc กับ ground เพื่อป้องกันสัญญาณรบกวนความถี่สูง
ได้ครับ อาจส่งเป็นแบบ string คั่นด้วยคอมม่า เช่นส่งค่าไป 3 ค่า 15,23,33 แล้วฝั่งรับเขียนโปรแกรมแยก string ก็จะได้ค่ามา 3 ค่าแล้วครับ
ตัวรับ 1 ตัว สามาระรับได้หลาย ๆ ตัวพร้อมกันครับ ตัวอย่างที่นำไปใช้งาน เช่น เอาไปใช้งานเป็นระบบ RFID แบบ Active Tag โดยจะใช้ NRF24L01 เป็นตัวรับ และใช้ NRF24L01 ทำเป็นแท็กตัวส่งซึ่งจะมีหลาย ๆ ตัวส่งมาพร้อมกันที่เครื่องรับ
ตัวอย่างหลักการครับ เช่น
ตัวรับ 1 ตัว มี channal 90
ตัวส่งตัวที่ 1 ส่งข้อมูลไปหาตัวรับที่ channal90 โดยส่งคำว่า "ID1-001";
ตัวส่งตัวที่ 2 ส่งข้อมูลไปหาตัวรับที่ channal90 โดยส่งคำว่า "ID2-002";
ที่ตัวรับจะได้รับข้อมูลเป็น
"ID1-001"
"ID2-002"
ทีนี้เราก็จะเขียนโปรแกรมแยกข้อความออกมาจากข้อมูลที่ได้รับ
"ID1-001" แยกได้เป็น ID1 และ 001
"ID2-002" แยกได้เป็น ID2 และ 002
จะสังเกตว่าเราจะได้ ID1 มีค่า 001 และ ID2 มีค่า 002 ซึ่งทำให้เรารู้ว่า ที่อุปกรณ์ ID1 เซนเซอร์อ่านคามาได้เป็น 001 และที่อุปกรณ์ ID2 เซนเซอร์อ่านค่ามาได้เป็น 002 ครับ
ตัวอย่างโคดลองศึกษาในกระทู้นี้และตัวอย่างในบทความครับ