1

我正在尝试将草图转换为图书馆,但未能成功。

使用 Arduino 零。

草图形式:

Uart 类型的变量定义如下:

Uart* serPort = &serial2;

&serial1有一个在和之间切换的功能&serial2

这行得通。

现在我正在尝试在库中实现相同的功能:

在主代码中定义如下:

Sender Sender(Serial2);

这是头文件:

class Sender
{
 public:

   Sender(Uart PortIn);

   private:

   Uart* serPort;
};

这是 .cpp 文件:

Sender::Sender(Uart PortIn)
{

   byte data[]={0xff,0xaa};
   serPort = &PortIn;

   serPort->write(data,2);

}

这符合要求,但由于 USB 端口丢失,启动时某些东西必须崩溃。必须按下复位按钮才能启动引导加载程序。

我似乎无法找到问题所在。

4

1 回答 1

0

我认为您需要将参数作为引用或指向构造函数的指针发送。

总的来说,它应该看起来像:

Uart* serPort = new Uart();
serPort.setName("COMX");
serPort.setBaud(9600);
Sender s = new Sender(serPort);

....

delete serPort;

希望能帮助到你。

于 2018-08-01T09:45:18.593 回答