UART低电平驱动程序序列

⚠️
大家好. .谢谢你来到论坛。令人兴奋的消息!我们现在正在转移到新的论坛平台,它将提供更好的功能,包含在主对话网站中。所有岗位和账户都已迁移。我们现在只接受新论坛的流量-请在上面发布任何新帖子//www.wsdof.com/support.我们将在未来几天修复bug /优化搜索和标记。
6个职位/ 0个新职位
最后发表
nigelyang
离线
最后看到:1周20小时前
加入:2018-03-20 08:24
UART低电平驱动程序序列

嗨,对话框中,

由于某些原因,我不能使用UART适配器来实现UART通信。那么如何实现UART功能的UART LLD(hw_uart.c)?是否有完整的示例序列或文档可供参考?
谢谢你的帮助。

设备:
PM_Dialog
离线
最后看到:12小时15分钟前
工作人员
加入:2018-02-08 11:03
嗨nigelyang,

嗨nigelyang,

你能告诉我你想要完成什么,你的问题是什么吗?我们强烈建议使用适配器来访问硬件外设,因为这不仅提供了对外设的访问,而且还确保当前正在访问它的其他任务暂停其操作,直到外设再次被释放。因此,如果另一个任务试图在同一时间访问同一外设,您不必担心。同样,当使用UART适配器和睡眠模式配置,在电源管理芯片的意志力,适配器将检查如果有等待UART功能,如果是的睡眠将会推迟到UART外围完成交易。我强烈建议你看看章12.3.1 UART适配器的例子UM-B-044用户手册:DA1468x软件平台参考(HTML)从我们的支持门户。请尝试这个例子,如果你有任何后续问题或者你的问题还没有得到解决,请给我回电话。

谢谢,PM_Dialog

nigelyang
离线
最后看到:1周20小时前
加入:2018-03-20 08:24
嗨,对话框中,

嗨,对话框中,

我的目标是让UART的TX引脚在休眠模式下成为低状态(因为休眠模式的当前将变得更高,从3uA到9uA)。但是如果使用UART适配器,TX引脚是默认的高状态(HW_GPIO_MODE_OUTPUT_OPEN_DRAIN),即使在休眠模式。我计划使用LLD实现我想要的UART功能,并配置UART TX引脚为GPIO(低状态)后完成UART通信。如果不是好主意,请指导我如何使用UART适配器来实现我的目标。谢谢

PM_Dialog
离线
最后看到:12小时15分钟前
工作人员
加入:2018-02-08 11:03
嗨nigelyang,

嗨nigelyang,

能否在完成UART通信后试着测试hw_gpio_configure_pin()函数,并将Tx GPIO调到低?还要注意,因为您使用的是HW_GPIO_MODE_OUTPUT_OPEN_DRAIN配置,所以当设备进入休眠模式时,不会看到功耗方面的差异。

谢谢,PM_Dialog

nigelyang
离线
最后看到:1周20小时前
加入:2018-03-20 08:24
嗨,对话框中,

嗨,对话框中,

1.不好意思,我写错了,应该是HW_GPIO_MODE_OUTPUT_PUSH_PULL,当我休眠时得到更高的电流。但是,如果我的配置是
HW_GPIO_MODE_OPEN_DRAIN,当前正常。为什么?

2.如果我使用HW_GPIO_MODE_OPEN_DRAIN配置,TX引脚将在进入扩展休眠模式后成为高状态;进入休眠模式后保持低状态。
为什么?

谢谢你的帮助。

PM_Dialog
离线
最后看到:12小时15分钟前
工作人员
加入:2018-02-08 11:03
嗨nigelyang,

嗨nigelyang,

在开路漏极配置中,有一个MOSFET驱动GPIO到零,如果你想驱动ii进入逻辑1,你应该在外部放一个上拉电阻。在推拉配置中,有两个mosfet,因此GPIO可以驱动到逻辑0或逻辑1。这就是为什么当前的消耗是正常的开路排水配置。在休眠模式下,除了WKUP控制器,所有的块都是关闭的,所以这就是为什么GPIO有默认值的原因。对于Tx,如果我能够正确理解,这种行为是正常的,因为从1到0的事务信号开始位,从0到1的事务信号停止位。

谢谢,PM_Dialog