【发布时间】:2014-07-01 18:58:13
【问题描述】:
在尝试使用 Atmel 提供的 ASF 迈出第一步时,我咬紧牙关。
似乎 ASF 在很多地方都写得很低效,而且文档似乎不准确,或者我已经筋疲力尽,无法思考。
花费我很多时间的最新问题:
pio_configure_pin() versus pio_configure_pin_group()
根据文档:
configure_pin 的第一个参数:ul_pin 要配置的一个或多个引脚的位掩码
configure_pin_group 的第二个参数:ul_mask 要配置的一个或多个引脚的位掩码
实际上: configure_pin 的第一个参数不是位掩码。 如果我想配置 Pin PB 28 我必须使用值 60 !
#define PIO_PB28_IDX 60
如果我想使用组功能配置相同的 Pin,我必须使用值 2415919104
#define PIO_PB28 (1u << 28)
错误的文档、缺少示例以及包含错误示例的论坛条目导致我浪费了很多时间。
如果我在这里错了,请告诉我,也许我错过了文档中的某些内容。
毕竟PIO驱动很可能是最重要的驱动之一,几乎任何芯片的使用都需要它。而这两个功能真的很重要。
也许 Atmel SAM 的专家可以帮助我确定是否值得继续使用 ASF? 专家将其用于他们的开发还是从头开始编写所有内容更好。
对我来说,当从 AVR 开发开始时,所有的简单性似乎都消失了,而 ASF 是 Atmels 再次使其变得更容易的方法,但是如果它有 bug 并且没有处于正确的发布状态,它可能毫无用处。
【问题讨论】: