你好,
我想尽快通过蓝牙编程连接UART。很有效,但现在我的问题。
根据连接两个Pan1740的手册,我禁用了HW流量控制并使能SW流量控制。他们互相连接。
Pan1740直接连接到制作工作的Atmel控制器。
问题是:我在一个Atmel上编写了一个接收中断,蓝牙模块(Pan1740)始终将无意义的数据发送到Atmel,并且每次都会发生中断。
胡言乱语的数据大约在十六进制11或13或两者。
我不知道它是从哪里来的。
只有当两个PAN1740连接时才会发生。
有关这一点的任何想法吗?
一个漫画问题是将PAN1740放入睡眠模式,与外部连接到ATMEL。PAN1740的引脚1.0直接连接到Atmel I / O.我如何编程,如果PAN从ATMEL从ATMEL获得高点,它会睡觉,并且醒来它会醒来?
希望你能帮助我。
非常感谢
设备:
嗨,我解决了问题。是流量控制软件在我的微控制器上产生中断。
下一个问题是,如果我想在没有流量控制的情况下通过DSP发送数据,数据正在发送每10ms
38400波特
数据应该是T1,在另一边我得到的附加随机值:
T163
u¦k©ˆø¬™(R¤u¨˜(RHøT163
T163
T163
T163
6 (y¨[R¤u¨™(R¤u¨;3
T163
T163
T163
YM¨™[v¤ü¨~[r¤ø¨165
T165
T165
T163
我# # n¬™(n¬™[V¤u¨[¦C…T163
T163
T165
T167
Æ5)y¨™+©ˆø¨˜©ˆø¨˜70
T167
T165
T163
Rþ)EI5) y¨(«¤u¨(SHøT167
T165
T167
T167
Y5y¨[«¤u¨™(¥!一个¨˜65
T163
T163
有什么问题?如果我嗅到我的微控制器的TXD线路一切都会制作他应该的东西。但不是在另一边......
任何提示?
嗨gert186,
我假设您正在使用DSPS参考设计,并且您正在通过Atmel处理器向580的UART发送数据,因为你已经禁用了hw流控制,你已经启用了SW流控制,0x11和0x13是XON和XOFF字节(控制流控制的实际字节),只在两个设备连接时发送。
另请注意,DSP需要H / W流量控制才能正常运行并处于睡眠模式,无法使用DSP与睡眠和没有流量控制,因为外部MCU将发送数据,但它不会知道580是睡觉的。
在你的第一篇文章中阅读你的第二个问题,dsp会自动设置设备的睡眠模式,如果它有数据要发送,它将保持清醒,如果没有,它将进入睡眠模式,只有为了保持连接活着才会醒来。如果你想将设备设置为永久休眠,你将不得不手动断开与远程设备的连接,并设置唤醒定时器,以便从外部中断中唤醒并开始发布信息,您可以在UM-B-051-DA1458x软件平台参考文档中找到关于如何使用唤醒计时器的信息。
由于MT_dialog
非常感谢你的来信。
但是我想切换SW和HW的流量控制!这有问题吗?
嗨gert186,
是的,这是一个问题,因为DSPS,当在睡眠模式,只与hw流量控制(即使与sw流量控制设备将失去数据),这是因为580通知外部MCU/PC是清醒的切换它的RTS/CTS。如果外部设备发送数据,而580没有唤醒,就会出现数据丢失。
由于MT_dialog
我现在用软件控制编程。效果很好。
我有一个I/O连接到蓝牙模块在引脚1.0
如果在引脚上的低电平并唤醒,是否有可能将蓝牙odul睡眠睡眠,如果高唤醒?
嗨gert186,
正如之前的文章中提到的,设备在每个连接间隔中都会醒来,以保持连接活跃,如果你让设备处于休眠状态,并等待一个唤醒中断,这意味着它将失去连接,如果它失去连接,这意味着下一次它将唤醒(从外部中断),它将不得不通过连接过程,以便重新连接到中央/外围设备。如果这是你想做的事情,那么你可以使用唤醒定时器模块,并设置它,以启动广告在外部中断,但我建议在进入睡眠之前终止连接。
由于MT_dialog
非常感谢,
但是,我真的想做的就是把蓝牙模块放入睡眠模式(扩展),如果它像SL4000一样!
“sl”进入睡眠
“4000”在几秒钟内的时间
“!”终止标志。
我可以把这个功能放在上面
user_sps_server_data_rx_ind_handler()。检查收到了什么。
然后将BLE设置为延长睡眠模式,如:
app_easy_gap_advertise_stop ();
arch_ble_ext_wakeup_on ();
但我不知道如何配置唤醒定时器?
谁能帮帮我?
哥特问好
嗨gert186,
首先,您只能在连接时接收数据,因此不能发布,因此调用app_easy_gap_advertise_stop()函数是没有必要的,因此,如果您想让设备处于永久休眠状态,您必须在设备断开连接时调用app_easy_gap_disconnect()来断开与中心设备的连接,.app_on_disconnect回调将被触发。从那个回调你可以设置一个kenrel定时器来开始发布或者设置一个唤醒中断。如果你只是断开与设备的连接,因为设备没有任何预定的消息要唤醒,它会一直处于睡眠状态,你只需要配置设备将如何唤醒。为了检查如何配置设备唤醒,你可以看看ble_app_sleepmode,你也可以在UM-B-051软件平台参考文档中找到关于唤醒计时器的文档,章节10.7。
由于MT_dialog