ผมสั่ง NRF24L01 PA LNA มาคู่นึง และ arduino atmega8 ทดสอบตามโค้ดที่ได้แนะนำในบทความแล้วทำงานได้ดีครับ (ขอบคุณสำหรับโค้ดตัวอย่างด้วยครับ) ผมอยากถามเพิ่มเติมดังนี้ครับ
- ไลบรารี่ที่ให้มาสามารถกำหนดความเร็วในการส่งได้มั้ยครับ เพราะจากข้อมูลในดาต้าชีตถ้าส่งที่ความเร็วตำสุดสามารถส่งได้ไกลสุดใช่มั้ยครับ
- สามารถรับและส่งข้อมูลพร้อมๆกันเลยได้มั้ยครับ เช่น A ส่งข้อมูลไป B ได้รับก็ตอบ ACK กลับมาเพื่อยืนยันข้อมูลและไม่ทราบว่ามันรับส่งกันแบบ half duplex หรือ full duplex ครับ พอจะมีข้อมูลมั้ยครับ
....ตัวนี้ผมจะทำเป็นตัวแปลงข้อมูล serial (uart) แล้วส่งแบบไร้สายไป อีกฝั่งก็รับแล้วส่งต่อออกไปเป็น serial uart อ่ะครับ
ขอบคุณครับ
ลองดูการต่อในบทความอีกครั้ง น่าจะผิดพลาดบางแห่ง ต้องลองเยอะ ๆจะได้เก่ง ๆ ครับ
สวัสดีครับ ผมซื้อของพี่มาครับ ผมอยากให้NRFส่งค่าที่เป็นตัวแปรอะครับ
ถ้าไม่ใช้คำสั่ง transmitter.txPL("temperature"); // ต้องการให้temperatureเป็นค่าตัวแปรอะครับ ตรงtxPLต้องเปลี่ยนเป็นอะครับ ขอบคุณครับ
ในไลบารีจะมีตัวอย่างการส่งค่าแบบตัวแปรให้ดูอยู่นะครับ ลองคลิกเข้าไปศึกษาเล่น ๆ ได้
หรือลองแบบนี้ครับ
char myString[] = "This is the first line"
transmitter.txPL(myString);
สวัสดีครับผมซื้อของไป แล้วจะลองส่งค่าตัวแปรจาก void value_sensor() ไปให้ตัวรับต้องใช้คำสั่งยังไงหรอครับพอดี ลองมา2 วันแล้วมันไม่ขึ้นค่าอะไรเลยนอกจากว่างเปล่าและไปบรรทัดถัดไปอ่ะครับ
ขอบคุณครับ (ซึ่งใน void value_sensor() จะเป็นการอ่านค่าและแสดงค่าจากSensor อ่ะครับ)
ลองทำตามบทความก่อนครับ และบางครั้งจะต้องต่อ C ค่า 0.1uf คร่อมที่แหล่งจ่ายไฟให้โมดูล เพื่อป้องกันสัญญาณรบกวน จากนั้นลองเปลี่ยนเป็นการส่งค่าผ่านตัวแปรดูครับ
คือลองทำตามบทความ ส่งข้อมูลขึ้น Welcome ArduinoAll แล้วครับ
แต่ว่าอยากส่งเป็นค่าที่รับมาจากsensor อ่ะครับพอดีทำแล้วค่ามันไม่ขึ้นให้ ถ้าไม่ตั้งส่งเป็นข้อความเดิมๆอ่ะครับ
transmitter.txPL("Welcome ArduinoAll"); // ค่าที่ต้องการส่ง
อันนี้คือส่งออกเป็น Welcome ArduinoAll แต่พอดีอยากส่งเป็นตัวแปรที่รันค่าตลอดอ่ะครับ
ตอนนี้แสดงว่าทำได้แล้ว ที่เหลือไม่น่ายาก มีตัวอย่างในไลบารีครับ มีหลายตัวอย่างที่ส่งค่าเป็นตัวแปร ลองก็อปดูเล่น ๆ ได้ครับ
ตอนนี้มีปัญหาคือพอเปลี่ยนจาก UNO R3 มาเป็น MEGA 2560 R3 แล้วมันไม่ยอมส่งและรับข้อมูลอะครับ ต่อสาย
3.3V GND
7 8
51 52
50
คือตอนแรกลองตามโปรแกรมที่ให้ไว้แล้วได้แล้ว และพอเอาโปรแกรมตัวเองใส่ มันไม่ขึ้น ก็เลยลองเอาโปรแกรมบนเว็ปนี้มาลองอีก ปรากฏว่ามันไม่ขึ้นแล้วอ่ะครับ ลองทั้งใส่้ C และไม่ใส่ C แล้วครับ แต่ถ้าเป็น UNO ไม่มีปัญหานี้เลยครับ
Arduino Uno กับ Arduino Mega จะขา SPI จะเป็นคนละตำแหน่งกันกับ Arduino Uno ครับ