极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2807|回复: 5

LGT8F328P 與 RF24 庫的使用測試

[复制链接]
发表于 2019-6-21 10:24:30 | 显示全部楼层 |阅读模式
本帖最后由 eddiewwm 于 2019-6-21 10:29 编辑

在論壇上看到有人說 LGT8f328P在配合 nRF24L01使用時會出現問題,而用 arduino nano卻不會。問題特別在使用庫時會出現,但可惜沒有說明是那個庫。
因之前用SPI點LCD屏時,LGT8F328P確是會在某些庫出現問題,所以,這次特以 RF24庫作測試,看看以SPI控制nRF2401,會出現甚麼樣的問題。
發射端程序
  1. /*
  2. * Arduino Wireless Communication Tutorial
  3. *       Example 1 - Receiver Code
  4. *               
  5. * by Dejan Nedelkovski, www.HowToMechatronics.com
  6. *
  7. * Library: TMRh20/RF24, https://github.com/tmrh20/RF24/
  8. */
  9. #include <SPI.h>
  10. #include <nRF24L01.h>
  11. #include <RF24.h>
  12. RF24 radio(7, 8); // CE, CSN
  13. const byte address[6] = "00001";
  14. void setup() {
  15.   Serial.begin(9600);
  16.   radio.begin();
  17.   radio.openReadingPipe(0, address);
  18.   radio.setPALevel(RF24_PA_MIN);
  19.   radio.startListening();
  20. }
  21. void loop() {
  22.   if (radio.available()) {
  23.     char text[32] = "";
  24.     radio.read(&text, sizeof(text));
  25.     Serial.println(text);
  26.   }
  27. }
复制代码


接收端程序
  1. /*
  2. * Arduino Wireless Communication Tutorial
  3. *       Example 1 - Receiver Code
  4. *               
  5. * by Dejan Nedelkovski, www.HowToMechatronics.com
  6. *
  7. * Library: TMRh20/RF24, https://github.com/tmrh20/RF24/
  8. */
  9. #include <SPI.h>
  10. #include <nRF24L01.h>
  11. #include <RF24.h>
  12. RF24 radio(7, 8); // CE, CSN
  13. const byte address[6] = "00001";
  14. void setup() {
  15.   Serial.begin(9600);
  16.   radio.begin();
  17.   radio.openReadingPipe(0, address);
  18.   radio.setPALevel(RF24_PA_MIN);
  19.   radio.startListening();
  20. }
  21. void loop() {
  22.   if (radio.available()) {
  23.     char text[32] = "";
  24.     radio.read(&text, sizeof(text));
  25.     Serial.println(text);
  26.   }
  27. }
复制代码


測試結果正常,沒發現問題。
(註:nRF2401模塊應在電源多加一10uF以上的電容,並要特別留意發射端的電源供應是否能提供充夠的電流,特別是瞬間電流)
Reference:
https://howtomechatronics.com/tu ... -nrf24l01-tutorial/
回复

使用道具 举报

发表于 2019-9-4 06:05:09 | 显示全部楼层
感谢楼主分享
回复 支持 反对

使用道具 举报

发表于 2019-9-7 15:55:10 | 显示全部楼层
发射机代码

/*
* Arduino Wireless Communication Tutorial
*     Example 1 - Transmitter Code
*               
* by Dejan Nedelkovski, www.HowToMechatronics.com
*
* Library: TMRh20/RF24, https://github.com/tmrh20/RF24/
*/
#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>
RF24 radio(7, 8); // CE, CSN
const byte address[6] = "00001";
void setup() {
  radio.begin();
  radio.openWritingPipe(address);
  radio.setPALevel(RF24_PA_MIN);
  radio.stopListening();
}
void loop() {
  const char text[] = "Hello World";
  radio.write(&text, sizeof(text));
  delay(1000);
}
回复 支持 反对

使用道具 举报

发表于 2019-10-12 11:24:10 | 显示全部楼层
我用 W5500以太网模块( SPI)和软串口库,就出现了冲突,软串口不能和有SPI的设备同时使用。
建议官方排查 LGT的 Arduino  SPI库
回复 支持 反对

使用道具 举报

发表于 昨天 10:55 | 显示全部楼层
这边 也遇到这个问题  还请楼主帮忙上传库文件 这个问题一直困扰着我
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|联系我们|极客工坊 ( 浙ICP备09023225号 )

GMT+8, 2019-11-14 10:25 , Processed in 0.046245 second(s), 24 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表