spi相关内容

如何控制链接在一起的4 8x8 LED矩阵,并使用Max7219供电?

我希望使用raspbercrypi控制矩阵的每个单独像素,但我只是不知道必须如何发送数据以及必须发送哪些数据。 我已经查看了SPI接口,但在阅读了这篇article,其中他没有使用它并因此而手动操作后,我不知道该怎么办。 调试也非常困难,因为我无法检查发送数据的时间和内容 我还检查了各种Python库,但我无法运行它们,即使在安装了每个依赖项之后也是如此 但这是不必要的,因为我不想使 ..
发布时间:2022-04-19 16:45:08 其他开发

STM32 SPI 慢速计算

我正在使用 STM32F4 及其 SPI 与本教程中的 74HC595 通信.区别在于初学者我使用非 DMA 版本为简单起见.我用STMCubeMX配置SPI和GPIO 问题是:我没有获得闩锁 PIN,我将其设置为 PA8,以便在传输过程中足够快地切换. 我正在使用的代码: spiTxBuf[0] = 0b00000010;HAL_GPIO_WritePin(GPIOA, GPIO ..
发布时间:2022-01-25 12:12:25 其他开发

在 SPI 问题中初始化 SD 卡

我看过 Stack Overflow 问题使用 SPI 接口初始化 microSD 卡 并没有看到任何与我的问题相匹配的答案(也就是说,我还没有尝试过的事情). 我有一个类似的问题,我试图通过微控制器的 SPI 接口(特别是 HC908).我已经尝试遵循物理层简化规范 v2.00 中的流程图,它似乎在 Transcend 1 GB & 上正确初始化2 GB 和 AE&C 1 GB 卡.但是我 ..
发布时间:2022-01-18 23:46:57 其他开发

如何从 C 中的串行(SPI)连接读取数据?

我正在尝试编写一个程序,该程序将安装在 Linux MCU (Raspberry Pi) 上,该程序将读取来自另一个 MCU(我将自己构建的国产)的串行数据. 我研究了如何做到这一点,并认为我有“大局",但仍然缺少一些东西.一方面,我需要启用内核模块并让自己访问设备: sudo modprobe spi_bcm2708sudo chown `id -u`.`id -g`/dev/spide ..
发布时间:2022-01-18 14:46:07 其他开发

如何减少 STM32L4 HAL 库的 SPI 开销时间

我使用的是 STM32L476RG 板和 HAL SPI 功能: HAL_SPI_Transmit(&hspi2, &ReadAddr, 1, HAL_MAX_DELAY);HAL_SPI_Receive(&hspi2, pBuffer, 4, HAL_MAX_DELAY); 我需要以最大速度从加速度计的缓冲区接收数据,但这些函数存在延迟问题.正如您在示波器屏幕截图中看到的那样,有几微秒没有任 ..
发布时间:2021-11-26 18:23:26 其他开发

STM32F1 - 在裸机上使用主 SPI

我一直在尝试移植我的一些 AVR 代码来驱动一个简单的 SPI LCD 到 ARM 作为学习练习(我对 ARM 很陌生).为此,我只需要在主模式下使用 SPI. 我查看了我的设备 (STM32F103C8) 的数据表并发现我需要的 SPI1 引脚、SCK 和 MOSI 分别映射为 PA5 和 PA7 的替代功能以及其他外设(第 29 页).我的理解是,为了在这些引脚上使用 SPI 功能,我需 ..
发布时间:2021-11-17 22:20:48 其他开发

SPI_IOC_MESSAGE(N) 宏让我适合

我无法让我正在处理的 SPI 程序正确运行,而且 SPI_IOC_MESSAGE(N) 宏似乎存在问题. 以下是不起作用的示例代码(ioctl 返回 EINVAL (22) ): std::vectortr;//将传输交给 SPI 驱动程序如果 (tr.size() > 0){int ret = ioctl(fd, SPI_IOC_MESSAGE(tr.size ..
发布时间:2021-11-17 22:18:53 服务器开发

在 ARM 处理器上执行存储在外部 SPI 闪存中的程序

我有一个能够与外部闪存芯片接口的 ARM 处理器.写入芯片的是为 ARM 架构编译的准备执行的程序.我需要知道如何做的是将这些数据从外部闪存获取到 ARM 处理器上执行. 我可以提前运行某种复制例程,将数据复制到可执行内存空间吗?我想我可以,但 ARM 处理器正在运行一个操作系统,我没有大量的闪存空间可以使用.我还希望能够一次安排两个甚至三个程序的执行,一次将多个程序复制到内部闪存中是不可行 ..
发布时间:2021-11-17 22:06:51 其他开发

SPI 无法读取前 6 个字节

我的 STM32F051 MCU 上的 SPI 模块有很多问题.我已将其配置为主设备以驱动从属闪存模块(这并不重要). 我正在尝试从内存中读取 8 个字节,这是“读取数据"消息的结构: 消息的前 4 个字节被发送,接下来的 8 个字节被接收.第一个字节是“读取数据"操作码,后面三个是数据地址,在这种情况下等于 0. 代码: memset(out, 0x00, 256);mems ..
发布时间:2021-08-30 19:28:09 其他开发

使用 SPI(STM32 板)从 ADXL355 读取数据的问题

我正在尝试通过 SPI 协议从连接到 STM2L072 Lora 探索套件的 EVAL-ADXL355-PMDZ 读取数据以用于项目.起初我使用的是 ADXL345 传感器,我能够读取加速度数据并将其转换为 g,没有任何问题.将传感器切换到 ADXL355 后,我在读取数据寄存器时一直收到全零. 我根据 ADXL355 传感器的数据表更改了 ADXL345 的初始代码(https://www ..
发布时间:2021-08-30 19:27:57 其他开发

在STM32传输结束时,循环DMA内存中断将如何表现?

我想问一下,在以下情况下,STM32中的DMA SPI rx将如何运行.我有一个称为A的指定的(例如)96字节数组,该数组用于存储从SPI接收的数据.我打开循环SPI DMA,它在每个字节上运行,配置为96字节.是否有可能,当DMA填充我的96字节数组时,传输完成中断将消失,以快速将96字节数组复制到另一个-B,然后循环DMA将开始写入A(并销毁保存在B中的数据)?我想(每次从B中的A获取新数据时 ..
发布时间:2021-05-04 19:01:59 其他开发

如何使用stm32F4设置中断驱动的SPI

我正在使用带有CMSIS库的STM32F4板,我想设置一个中断驱动的SPI,这意味着每次SPI外设发送一个字节时都会触发一个中断.初始化功能如下: void init_SPI1(void) { NVIC_InitTypeDef NVIC_InitStructure; GPIO_InitTypeDef GPIO_InitStruct; SPI_InitTypeDef SPI_Ini ..
发布时间:2020-11-30 04:24:50 其他开发

STM32F4板上的SPI从器件设置

我正在尝试通过Master& amp;中的SPI在两个STM32F4发现板之间进行通信.从站配置.我已经有了主服务器的代码,但是对于需要对从服务器的SPI初始化进行的更改,我有些困惑. 我还想在主机发送数据时实现一个中断,而不是让从机一直轮询RXNE寄存器.但是,我不确定SPI的NVIC的确切配置. 下面是主机的配置代码 void init_SPI1(void) { GP ..
发布时间:2020-11-30 04:17:43 其他开发

串行与SPI

SPI与串行有什么区别?在阅读有关处理器间通信的文章时,它指出串行接口已被SPI取代,以实现更好/更快的通信?到底有什么区别? 解决方案 “串行"一词含义不大.但是我假设您正在谈论传统的串行通信标准. SPI的根本区别在于它是同步.与RS-232(一种异步信令标准)相对. 异步信令的一个重要属性是波特率,即字节中位的发送频率.接收器必须做额外的工作才能恢复发送器使用的时钟.典型的UA ..
发布时间:2020-11-22 04:43:21 其他开发

读取STM32 MCU的SPI数据寄存器的值

有很多类似的问题,但似乎没有一个完全相同的问题。我正在将STML4 MCU连接到6轴传感器(LSM6DS3)。我已经在I2C中成功实现了所有功能,但是希望SPI(和DMA,如果我可以使这些第一步工作正常……)的额外速度。因此,第一步,我尝试读取设备的 WHO_AM_I 寄存器( 0x0F ),该寄存器应进行答复使用 0x69 。这是代码: uint8_t who = 0; //健全 ..
发布时间:2020-10-29 03:19:11 其他开发