嗨,我在使用Mega 2560和Adafruit nRF8001 BLE时遇到了一些问题

以下代码适用于Arduino UNO,但是当我尝试在Mega上运行它时不起作用 .

我的Arduino IDE版本是1.8.5

我已经......•检查引脚连接•检查UNO和Mega之间的引脚SCK / MISO / MOSI连接差异•重新启动机器•上传代码没有问题

注意当我删除“blePheripheral.begin();”可以在循环中看到日志字符串“testing”

我运行了NRF8001的Adafruit示例代码,但问题与MEGA Reference Adafruit nrf8001样本相同https://learn.adafruit.com/getting-started-with-the-nrf8001-bluefruit-le-breakout/introduction

#include <SPI.h>
#include <BLEPeripheral.h>

#define BLE_REQ 10
#define BLE_RDY 2
#define BLE_RST 9

#define SERVICE "39F6138B6E6F49949BEEE2EC2B3AC2FD"
#define CHARACTERISTIC "76943028737C4DCB942F780CB034D757"
BLEPeripheral blePeripheral = BLEPeripheral(BLE_REQ, BLE_RDY, BLE_RST);

BLEService service = BLEService(SERVICE);

BLECharCharacteristic characteristic = BLECharCharacteristic(CHARACTERISTIC, BLENotify);


void setup() {
  Serial.begin(9600);

  blePeripheral.setLocalName("local name");
  blePeripheral.setDeviceName("MyDeviceBLE");

  blePeripheral.setAdvertisedServiceUuid(service.uuid());

  blePeripheral.addAttribute(service);
  blePeripheral.addAttribute(characteristic);

  blePeripheral.begin();

  Serial.println("BLE DEVICE");
}

void loop() {
  Serial.println(F("testing"));
  delay(500);
  blePeripheral.poll();
}

谢谢高级,欢迎任何帮助