完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
嗨 ST 团队和社区!
我来这里是因为我在多个传感器 VL53L1CB 的初始化过程中遇到了一些麻烦。 我使用 gitHub 上可用的以下库:https ://github.com/stm32duino/VL53L1 流程如下:
我的问题是当 for 循环到达第三个传感器时,无法执行 InitSensor 函数并且程序转向无穷大。 问题是,当我使用“新建/删除”创建 C++ 组件时出现 RAM 问题?(加载整个 VL53L1 类?)我有 32KB 的 RAM 你有一些使用 C++ API 初始化多个 VL53L1CB(不是 VL53L1X)的例子吗? 这是我的代码:
执行的shell中有结果:
如果社区中有任何 C++ 开发人员,请不要犹豫告诉我我的错误是什么。 |
|
相关推荐
1个回答
|
|
我使用 uint8_t devAddr[3] = {0x62, 0x64, 0x66};
这些地址在函数 VL53L1_SetDeviceAddress(address) 中除以 2(包含在函数 InitSensor(uint8_t address) 中),这就是为什么我有 0x31、0x32 ... 如果我理解得很好,我将尝试通过 {0x62、0x66、0x70} 更改这些地址,最终得到 0x31、0x33、0x35 我有 32KB 的 RAM,这还不够吗? 如果我的开发人员是正确的,主类 VL53L1 的 sizeof,我将获得 10800 字节。所以,10,8*3=32.4 KB,所以我超载了我的记忆我是对的?如果是,您是否尝试使用现代 C++ 函数(如 unique_ptr、make_unique 和 shared_ptr)将类共享给同一 I2C 总线上定义的不同对象? 使用这些方法,我们也许可以只创建 1 个主类调用并将此类共享给 3 个不同的传感器…… |
|
|
|
只有小组成员才能发言,加入小组>>
请教:在使用UDE STK时,单片机使用SPC560D30L1,在配置文件怎么设置或选择?里面只有SPC560D40的选项
2632 浏览 1 评论
3208 浏览 1 评论
请问是否有通过UART连接的两个微处理器之间实现双向值交换的方法?
1783 浏览 1 评论
3607 浏览 6 评论
5987 浏览 21 评论
939浏览 4评论
1315浏览 4评论
在Linux上安装Atollic TRUEStudio的步骤有哪些呢?
582浏览 3评论
使用DMA激活某些外设会以导致外设无法工作的方式生成代码是怎么回事
1302浏览 3评论
1357浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 07:56 , Processed in 1.189575 second(s), Total 78, Slave 61 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号