#nordic-semi #drone #operating-system #critical-section #warnings #nrf91 #dso

nightly no-std drone-nrf91-dso

Nordic Semi nRF91 DSO实现,用于Drone嵌入式操作系统

3个不稳定版本

0.14.0 2021年4月9日
0.12.1 2020年5月13日
0.12.0 2020年5月1日

操作系统类别中排名316

MIT/Apache

26KB
356行代码(不包括注释)

crates.io maintenance

drone-nrf91-dso

Nordic Semi nRF91 DSO实现,用于Drone嵌入式操作系统。

警告:当前日志操作被包装在临界区(暂时禁用所有中断。)这可能会影响您程序的操作,但仅在您运行drone probe log之后。未来将通过使用与API的最小更改相结合的正确同步方法来修复。

文档

用法

将以下内容放置到Cargo.toml中

[dependencies]
drone-nrf91-dso = "0.14.0"

从您的寄存器令牌索引中排除以下令牌(如果您选择不同的外设,请更改“uarte0”)

nrf_reg_tokens! {
    index => pub Regs;
    exclude => {
        uarte0_ns_tasks_startrx, uarte0_ns_tasks_stoprx, uarte0_ns_tasks_starttx,
        uarte0_ns_tasks_stoptx, uarte0_ns_tasks_flushrx,
        uarte0_ns_subscribe_startrx, uarte0_ns_subscribe_stoprx,
        uarte0_ns_subscribe_starttx, uarte0_ns_subscribe_stoptx,
        uarte0_ns_subscribe_flushrx, uarte0_ns_events_cts, uarte0_ns_events_ncts,
        uarte0_ns_events_rxdrdy, uarte0_ns_events_endrx, uarte0_ns_events_txdrdy,
        uarte0_ns_events_endtx, uarte0_ns_events_error, uarte0_ns_events_rxto,
        uarte0_ns_events_rxstarted, uarte0_ns_events_txstarted,
        uarte0_ns_events_txstopped, uarte0_ns_publish_cts, uarte0_ns_publish_ncts,
        uarte0_ns_publish_rxdrdy, uarte0_ns_publish_endrx, uarte0_ns_publish_txdrdy,
        uarte0_ns_publish_endtx, uarte0_ns_publish_error, uarte0_ns_publish_rxto,
        uarte0_ns_publish_rxstarted, uarte0_ns_publish_txstarted,
        uarte0_ns_publish_txstopped, uarte0_ns_shorts, uarte0_ns_inten,
        uarte0_ns_intenset, uarte0_ns_intenclr, uarte0_ns_errorsrc,
        uarte0_ns_enable, uarte0_ns_psel_rts, uarte0_ns_psel_txd,
        uarte0_ns_psel_cts, uarte0_ns_psel_rxd, uarte0_ns_baudrate,
        uarte0_ns_rxd_ptr, uarte0_ns_rxd_maxcnt, uarte0_ns_rxd_amount,
        uarte0_ns_txd_ptr, uarte0_ns_txd_maxcnt, uarte0_ns_txd_amount,
        uarte0_ns_config
    }
}

设置日志记录器

drone_nrf91_dso::set_log! {
    periph: Uarte0S, // Peripheral from `drone_nrf_map::periph::uarte`
    pin_number: 29,  // Output pin number
    buf_size: 64,    // Output buffer size in bytes
}

许可证

根据您的选择,许可协议如下:

贡献

除非您明确声明,否则根据Apache-2.0许可证定义的任何有意提交的工作,将按照上述方式双许可,不附加任何额外条款或条件。

依赖项

~5-7MB
~137K SLoC