logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

stm32采用cube生成项目后dsp库的用法

stm32中低端芯片没有浮点支持或者只包含单精度浮点库,如果用c的标准库math里面的相关函数,如sin、cos,这些函数是双精度编写的,stm32直接运行效率不高。为此,STM提供了dsp库来加速运算,这里记录一下采用cube方式生成的hal库的项目如何添加和使用dsp库。.........

文章图片
#stm32#单片机#arm开发
stm32 将系统堆栈放置在外部内存的方法

stm32可以外扩很大的sram,常见外部sram的初始化函数一般是c语言写的,默认写在main函数里面。stm32初始化首先进入汇编代码startup_stm32f407xx.s,在汇编代码中Reset_Handler(复位中断服务程序)里面先调用了SystemInit,然后调用__main进行堆栈的初始化,最后才会跳转到用户main函数。调用SystemInit涉及到局部变量和函数调用,需要用

#stm32#单片机#arm
【ROS2】类ROS1的rate定时器写法(c++&python例子)

在ROS2官方教程里,代码和ROS1例程有很大不同,大部分节点都使用了类的写法,并且用到了很多C++的新功能。其中,发布消息是采用了一个定时器timer,并且注册一个回调函数实现的。那么,可不可以还是采用ROS1的rate sleep写法呢,答案是可以的。

#c++#python#ubuntu
乐高ev3 颜色传感器的原理

颜色传感器的硬件部分主要由三大部分组成,分别是红绿蓝三色发光二极管、光敏二极管以及配套的其它硬件电路,三色发光二极管有四个管脚,其中三个管脚分别对应每个颜色二极管的负极,第四个管脚是正极公共端,分别给不同的管脚和公共端接通电压,就会让不同颜色的发光二极管发光,三色是独立可控的。......

#嵌入式硬件#硬件工程#单片机
stm32管理内存分配以及CCM的使用方法

本文以stm32f407VGT6为例描述,查阅该芯片的手册,可以知道其内存一共192K,但是在MDK编译项目时,有时候发现内存总量只有128k,原因在于,192k中有64k是CCM内存,剩下的128K才是正常的内存,所谓的CCM内存是cpu直接访问的空间,读写速度比其它内存快,但是不支持DMA,所以DMA对应的内存空间不能放在CCM中。.........

#stm32#单片机#arm
在STM32中实现ROS节点——Rosserial的用法

本文介绍如何将stm32控制板作为一个单独的ROS节点接入整个机器人ROS系统。在一个完整的机器人硬件系统中,由于众多传感器接口和实时性的需求,不可避免的需要加入嵌入式控制器,现在的机器人大多使用了分布式ROS系统,这套系统主要基于linux运行,而以stm32为例的大多数嵌入式控制器不支持linux。于是,当工控机想要与stm32进行数据交换时,只能脱离ROS体系采用自定义通讯协议。......

文章图片
#stm32#c++#嵌入式硬件
在STM32中实现ROS节点——Rosserial的用法

本文介绍如何将stm32控制板作为一个单独的ROS节点接入整个机器人ROS系统。在一个完整的机器人硬件系统中,由于众多传感器接口和实时性的需求,不可避免的需要加入嵌入式控制器,现在的机器人大多使用了分布式ROS系统,这套系统主要基于linux运行,而以stm32为例的大多数嵌入式控制器不支持linux。于是,当工控机想要与stm32进行数据交换时,只能脱离ROS体系采用自定义通讯协议。......

文章图片
#stm32#c++#嵌入式硬件
到底了