hearge 2023年 Apr 4日 11:43*((volatile unsigned int *)(0x0802800 +(8 * 4))) = 0x2;
*((volatile unsigned int *)(0x0802800 +(8 * 4))) = 0x0;
您好,可以使用上面直接操作寄存器试下效果,8对应gpio号。
非常好,能做到比较精确的IO口输出,但是我们有多个口要用到,请问有没有一份BK7231寄存器的列表,方便我们对照使用?
hearge 2023年 Apr 4日 11:43*((volatile unsigned int *)(0x0802800 +(8 * 4))) = 0x2;
*((volatile unsigned int *)(0x0802800 +(8 * 4))) = 0x0;
您好,可以使用上面直接操作寄存器试下效果,8对应gpio号。
非常好,能做到比较精确的IO口输出,但是我们有多个口要用到,请问有没有一份BK7231寄存器的列表,方便我们对照使用?
hearge 2023年 Apr 4日 11:1515988991229 2023年 Apr 4日 10:46IO口发一个1US高电平,2US低电平,然后再发一个500NS高电平,1US低电平.......我之前用常规MCU写这样的电平脉冲是比较简单能实现的,只要MCU速度够快,就是IO口直接语句输出,再加空循环延时实现。
所以我想请教怎么样才能用BK7231N_3.3.4直接IO口输出高低电平?麻烦帮忙看看应该用哪个函数或者指令实现?
好的,输出延时的问题我们内部在确认和验证。
好的,引用接口函数是方便了我们,但这个IO接口函数的输出有超过2US的延时,请尽量帮我们解决这个问题,这样我们再设计产品的时候IO口能能灵活使用.
IO口发一个1US高电平,2US低电平,然后再发一个500NS高电平,1US低电平.......我之前用常规MCU写这样的电平脉冲是比较简单能实现的,只要MCU速度够快,就是IO口直接语句输出,再加空循环延时实现。
所以我想请教怎么样才能用BK7231N_3.3.4直接IO口输出高低电平?麻烦帮忙看看应该用哪个函数或者指令实现?
已经解决,谢谢贵公司工程师的技术支持!
后来我又去搜寻tkl_system_enter_critical这个函数,发现只在头文件有,但没有搜到实际的函数。
你好:
Code: Select all
刚刚试了下,文件包含了头文件#include "tkl_system.h"
写了几个简单语句,然后在后面写语句tkl_system_enter_critical(); 再编译发现编译错误。(没放这个语句之前是编译正确,而且能正常运行。)这个应该怎么处理?
tuyaos-bk7231n-3.3.4版本,用的DEMO是“tuyaos_demo_quickstart”麻烦试试看。
放的语句和编译错误如下图
hearge 2023年 Apr 3日 18:11你好,7231n可参考如下实现。
UINT_T tkl_system_enter_critical(VOID_T)
{
vPortEnterCritical();
return 0;
}VOID_T tkl_system_exit_critical(UINT_T irq_mask)
{
vPortExitCritical();
}
tkl_system_enter_critical(VOID_T) 是进入中断吗?
直接用GPIO输出,就是用贵公司的GPIO接口函数,哪怕不用延时,输出时间都在2US以上,如果要输出1US以下的波形,有没有什么输出函数或者什么语句能实现?
你好:
Code: Select all
tuyaos-bk7231n-3.3.4版本如何关闭和开启所有中断,有没有DEMO,或者什么语句能实现的?麻烦帮忙看一下。