上海域格ARS平台cat1模块openCPU接口及调试问题

上海域格ARS平台cat1模块openCPU接口及调试问题

CLM920_RC3(RV3 RE3) 、CLM920_RC5(RV5 RE5)、CLM920_KV3、CLM920_KV5、CLM920_KV7、CLM920_YV9模块调试openCPU一些相关接口和常遇到的问题。

SDK接口及调试问题

cat1模块总存储空间
DDR: 16MB
NOR Flash: 16MB
剩余空间
内存:3-4 M
镜像文件大小上限:6M
文件存储区可用大小:2M(最大可扩展到4.5M,如需调整更大请具体沟通)(一般可用于放证书等)
总存储空间
DDR: 16MB
NOR Flash: 8MB
剩余空间
内存:3-4 M
镜像文件大小上限:3.8M
文件存储区可用大小:1M

UINT8 *mvUsbNetGetMacAddress(void);使用方法:

/* Usb net mac address */
UINT8 UsbNetMacAddress[USB_NET_ETH_ALEN] =
{
    0xAC,
    0x0C,
    0x29,
    0xA3,
    0x9B,
    0x6D
};

取返回值的 前六个UINT8 就可以了

SDK中的项目能否直接导入到ARM DS-5中编译?
——SDK编译需要依赖系统库文件,不能独立编译

是否支持c++ 代码的编译?是否支持文件系统? 把log存成文件
——可以,文件系统很小,8M的最好不要超过300KB,16M的最好不要超过1M

这两个API函数是不是RTC闹钟和RTC唤醒呢,没见到睡眠函数,只看到了一个在睡眠状态中获取电源电压
在这里插入图片描述
——休眠只需要设置一个flag,在RRC idle状态下就会自动休眠的,不需要使用睡眠接口,也没这样的接口的,直接进入休眠的,,参照休眠唤醒的demo

KV3 i2c速度可以到多少?
在这里插入图片描述

目前SDK的系统是threadx,这个系统没有临界,如果想用临界,只能修改任务优先级吗?

    unsigned long       intra;
    intra = disableInterrupts();
    // 临界处理放在这里,但是不能耗时太久,
    restoreInterrupts(intra);

OSATaskCreate()创建线程的时候,如果栈是我们用malloc申请的,删除线程的时候,我们是不是需要free申请到的栈空间?
——task执行完了,先free 后free无所谓了,暂没函数可以获取到线程的栈地址 ,可以参照这个代码,去delete task
在这里插入图片描述
ThreadX 的tx_开头的,OSA的看不到源码。底层是否增加了中断处理还是?两者有啥区别?
——OSA开头的接口都是基于ThreadX原有接口封装的,直接使用即可,遇到具体问题再沟通

\30-add_at 这个是怎么加AT的
——atcmds at是加在这里的

请问PCM流能支持到多大采样率?PCM流播放 只能支持单声道16k以下的采样率,是硬件codec只能处理这么高的采样率吗?
——是的 最高只能16K

微秒级的延时函数有吗?

#include "utilities.h"


void sdk_us_delay(unsigned int us)
{
 Timer0_Switch(1);
 DelayInMilliSecond(us);   //us delay
 Timer0_Switch(0);
}

客户参照15-flash 操作失败是什么原因
——需要改aboot里的分区,请参考手册

i2C是怎么测试的,对应的SCL和SDA是否需要上拉
——如果测试的话直接飞线直连就好 、如果硬件设计有什么考虑的话,和硬件确认好

pool_size = OsaGetDefaultMemPoolFreeSize();

可用这个接口判断内存泄露 跑的时候经常查下

ATs0?000 OK 这个open发送设置1还是0的问题,用串口发送正常
在这里插入图片描述
——这个以同一个通道为准,asr的at实现是通过独立的通道,不同通道执行会有不同的结果

OSATaskCreate 这个函数,倒数第三个参数,任务名称,这个和实际功能有关联吗?还是只是在任务查询的时候用得上
——跟实际功能没关联,name和task 绑定的 抓log、解dump可以用的上

KV3有没有支持lcd的接口
——KV3 不支持LCD

cat1模块怎么反初始化GPIO? GpioClearEdgeDetection 调用这个函数清空边沿检测?
——如果需要改变GPIO配置,,可以再次初始化下 ,比如gpio 10 ,第一次设置了中断,如果不想用中断了,直接再次设置GPIO输出,就可以,GpioClearEdgeDetection 这个清空函数,是清空中断相关的

这个激活中断函数执行一次,相当对应的函数调用一次对吗?
在这里插入图片描述

———是的,软中断,函数里只能用来触发msgQ或者flag转发到task中处理,不能直接在函数中做可能耗时的处理

cat1 SDK编译,asr那边是不是出了不需要ds5的方案了?

——没有,sdk编译必须要ds5,如果单独编译lib,可以使用其他编译器编译cortex-r5平台的库即可

其它一些SDK接口及调试问题可看上一篇文章:https://blog.csdn.net/weixin_48384104/article/details/117167864

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值