TASK_APP和TASK_GTL并存

⚠️
大家好. .感谢来到论坛。令人兴奋的消息!我们现在正在转移到新的论坛平台的过程中,它将提供更好的功能,并包含在主对话网站。所有的帖子和账号已经迁移。我们现在只接受新论坛的流量-请发布任何新的帖子在//www.wsdof.com/support.我们会在接下来的几天修复bug /优化搜索和标记。
4个职位/ 0个新职位
最后发表
Nishal
离线
最后看到:2年5个月前
加入:14:51 2017-05-25 06:51
TASK_APP和TASK_GTL并存

嗨,对话框的团队,

我工作在DA14585与外部主机模式,BLE在扫描器/观察模式配置。我使用ST32F4外部主机与UART接口。

我想根据主机的特殊要求在BLE上添加额外的功能。
我曾在这里发布过类似的问题
https://support.dialog-semiconductor.com/comment/22363

由于我还没有收到任何解决方案,我在考虑是否可以让APP_TASK和GTL_TASK共存。通过这种方法,我想
命令可以发送,如果我能重新路由
单片机(GTL_TASK )-------------> 祝福(APP_TASK )----------- ke_msg_forward——>堆栈(TASK_GAPM)
响应可以被重路由为
栈(TASK_GAPM )-------------> 祝福(APP_TASK )----------- ke_msg_forward——>单片机(GTL_TASK)

通过这种方式,我也可以实现我的定制任务,其中没有BLE堆栈干预
单片机(GTL_TASK )-------------> 祝福(APP_TASK) LED闪烁
祝福(APP_TASK )----------------> 单片机对gpio_read (GTL_TASK)

请让我知道这是可实现的,并为相同的一些指示。

期待立即得到帮助。

提前谢谢!

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

嗨Nishal,

你所描述的程序是可以实现的,谢谢你的信息。让我分享一些可能对你有帮助的建议:

  1. 在ROM配置表中,jump_table的rom_cfg_table_var。C文件,你应该添加TASK_APP,然后你应该完成你在你的文章中提到的。

ke_task_id_t prf_get_task_from_id_func (ke_msg_id_t id)

...

TASK_APP, / / 11。app_main_task_pos

你应该像下面这样修改prf_get_task_from_id_func。否则,to将得到一个UNKNOWN_TASK错误。

ke_task_id_t prf_get_task_from_id_func (ke_msg_id_t id)

ke_task_id_t任务= TASK_NONE;

uint8_t idx = KE_IDX_GET(id);

uint8_t我;

id = KE_TYPE_GET (id);

//查找profile任务中是否存在profile

(我= 0;i < BLE_NB_PROFILES;我+ +)

//检查配置文件标识符是否已知

如果(prf_env.prf[我]。id = = id)

任务= prf_env.prf[我].task;

打破;

if (id == TASK_ID_APP)

任务= TASK_APP;

返回KE_BUILD_ID(任务、idx);

谢谢,PM_Dialog

Nishal
离线
最后看到:2年5个月前
加入:14:51 2017-05-25 06:51
嗨PM_Dialog,

嗨PM_Dialog,

谢谢你的建议。

我有几个问题
1.无论嵌入式/主机处理器模式如何,GTL线程总是默认创建的吗?
2.我可以使用empty_peripheral_template或empty_template_ext示例作为起点吗?
-如果我使用empty_peripheral_template,我不明白MCU消息是如何接收的。
-如果我使用empty_template_ext,那么我必须用CFG_APP(构建时宏或嵌入式/外部处理器)解决依赖关系

提前谢谢!
Nishal

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

嗨Nishal,

关于你的第一个问题,让我确认一下。关于你的第二个问题,我建议使用empty_template_ext。

谢谢,PM_Dialog