AVR USART:使数据寄存器灵活

时间:2016-03-31 20:55:34

标签: c++ arduino usart

我有一个可以写入arduino上的串口的库。它使用表单

的赋值
#define UDRn UDR0
....
void write(uint8_t data) {
    UDRn = data;
}

写作。据我所知,UDR0是串口0的数据寄存器。#define表示UDRn将是该数据寄存器。该库有一个标志,可以在编译时将UDRn更改为UDR1。

但是,我想使用相同的库将不同的数据写入Serial0和Serial1。所以我需要能够有一个写入UDR0的实例,以及一个写入UDR1的实例。有可能统一这个吗?

类似的东西:

class Writer {
    public:
        write(uint8_t);
    private:
        register target;   
}

void Writer::write(uint8_t data) {
    target = data;
}

E.g。我可以指向寄存器吗?

0 个答案:

没有答案