⚠️
嗨,...感谢您来论坛。令人兴奋的消息!我们现在正在迁至我们的新论坛平台,将提供更好的功能,并包含在主对话框网站中。所有帖子和帐户都已迁移。我们现在只接受新论坛上的流量 - 请发布任何新线程https://www.dialog-seminile.com/support.。我们将在未来几天修复错误/优化搜索和标记。
8个帖子/ 0新
最后一篇
matthieuw
离线
最后一次露面:4个月4天前
加入:2015-11-20 14:55
PLT_FW WO UART.

嗨,对话框,

我正在研究PLT FW,以便Certitfy我的自定义模块(WICH实现DA14681)。

使用Pro DK的UART验证了该FW。

但是,在认证期间,在我的最终产品上,我没有Acces对UART端口,因此我应该找到另一种控制FW的方法。

我所需要的只是在指定频率下用作未经调配的Tx的模块。

默认情况下,是否可以处于这样的状态。然后,最终我会使用唤醒中断切换频率。

所有控件都直接链接到DGTL代码中的UART接口,

另一种解决方案是通过USB来控制DGTL,但是当我检查的代码时,这似乎不容易可行。

谢谢你的帮助。

此致

设备:
PM_DIALOG.
离线
最后一次露面:41分51秒前
职员
加入:2018-02-08 11:03
嗨matthieuw,

嗨matthieuw,

对不起,但你的问题很少是通用的。那么你能澄清一下吗?如果您能够为您的问题提供更多投入,这将是非常有帮助的。例如,你的意思是你没有访问权限?这是否与PINS配置或其他东西有关?

谢谢,PM_DIALOG.

matthieuw
离线
最后一次露面:4个月4天前
加入:2015-11-20 14:55
对困惑感到抱歉。

对困惑感到抱歉。

我想说的是,我没有对UART端口或最终产品上的任何其他引脚都没有物理接合。

我可以在我的产品上使用的唯一接口是按钮。因此,我希望PLT固件开始在启动时传输未调制的数据,然后通过使用按钮来致电未调制的TX的频率。

考虑到这一点,我向DGLT源代码添加了一个小功能,但没有成功,

void hci_unmodulated_tx(uint8_t freq)
{

UINT16_T OPCODE = 0x83FC;
uint8_t param [2] = {0x54,0};

param [1] =弗里克;

UINT8_T cmd_data [6] = {0x01,0x83,0xfc,0x02,0x54,freq};
size_t param_len = 2; // sizeof(param);

os_assert(uart.msg == null);

// uart.msg = dgtl_msg_alloc(dgtl_pkt_type_hci_cmd,sizeof(dgtl_pkt_hci_cmd_t)+ param_len);
// memcpy(uart.msg-> data,cmd_data,sizeof(cmd_data));
dgtl_msg_prepare_hci_cmd(uart.msg,操作码,param_len,&param);

push_frame_to_queue();
// uart_start_packet();
//用于在Prodk上调试
ad_uart_write_async(uart.dev,uart.msg->数据,sizeof(dgtl_pkt_hci_cmd_t)+ param_len,uart_tx_done,null);
}

我现在正在Pro DK上调试这一点。

谢谢

PM_DIALOG.
离线
最后一次露面:41分51秒前
职员
加入:2018-02-08 11:03
嗨matthieuw,

嗨matthieuw,

请问这是否在专业DK上呢?

谢谢,PM_DIALOG.

matthieuw
离线
最后一次露面:4个月4天前
加入:2015-11-20 14:55
嗨对话框,

嗨对话框,

在Prodk上,我仍然需要通过UART发送命令,以便在未调制的Tx中设置芯片,

当我尝试在没有使用UART的情况下在DGTL队列中推送命令时,会发生硬故障。

我试图调试发生了什么,但PLT FW非常复杂地理解。

在启动时默认情况下,是否有任何方法可以在未调制的TX中设置FW。

马鞍

PM_DIALOG.
离线
最后一次露面:41分51秒前
职员
加入:2018-02-08 11:03
嗨matthieuw,

嗨matthieuw,

我正在研究你的问题,我必须在内部检查。我会尽快回复你。

谢谢,PM_DIALOG.

matthieuw
离线
最后一次露面:4个月4天前
加入:2015-11-20 14:55
亲爱的对话框,

亲爱的对话框,

我找到了一个“脏”解决方案,即现在解决了我的问题。

我在ble_mgr_task中直接设置我想要的cmd:

se_dgtl.
if(ulnotivedvalue&mainbit_dgtl){
dgtl_msg_t * dgtl_msg;

// dgtl_msg = dgtl_receive(dgtl_queue_hci);
UINT16_T OPCODE = 0xFC83;
uint8_t param [2] = {0x54,0x13};

// uart.msg = dgtl_msg_alloc(uart.frame_header.pkt_type,header_len + param_len);
dgtl_msg = dgtl_msg_alloc(dgtl_pkt_type_hci_cmd,sizeof(dgtl_pkt_hci_cmd_t)+ 2);
dgtl_msg_prepare_hci_cmd(dgtl_msg,Opcode,2,&param);

然后在完成系统init后通知任务。

我可以管理这样的证书。

谢谢您的帮助

Matthieu.

PM_DIALOG.
离线
最后一次露面:41分51秒前
职员
加入:2018-02-08 11:03
嗨matthieuw,

嗨matthieuw,

很高兴你识上你的问题,谢谢你的迹象。

问候,pm_dialog