问题标签 [spi]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
embedded - 写入闪存是 IO 映射,而从闪存读取是内存映射...可能是什么原因
我正在使用 Broadcom CFE(通用框架环境)引导加载程序……SOC 来自 Broadcom……并使用串行 NOR 闪存N25Q032作为引导设备。从闪存读取它使用内存映射技术,而写入它使用 SPI 接口(IO 映射)。
在我看来,这种设计背后的原因是:
IO 映射读/写是阻塞调用,因此在读取以保持 CPU 空闲时,它是使用内存映射实现的。
它没有实现来检查...闪光。
....请解释这种设计背后的原因....
embedded - 在 BCM7358 和 SPI NOR 之间使用 M-SPI 实现读操作
位于 BCM7358 和 SPI NOR 闪存之间的 SPI 子系统使用 B-SPI 模块执行读取操作,使用 M-SPI 模块执行写入操作....如果我必须从 M-SPI 执行读取操作而不是 B-SPI ...那我该如何进行...欢迎任何建议
embedded - 智能SPI控制器(基于队列)的实现参考
智能 SPI 控制器是队列串行外设接口 (QSPI) 是 SPI 控制器的一种。它使用带有可编程队列指针的数据队列,允许在没有 CPU 干预的情况下进行一些数据传输。 [6] 它还具有环绕模式,允许在没有 CPU 干预的情况下连续进出队列。
有人可以建议我一些好的教程/参考代码,这样我就可以更好地理解上述智能 SPI 控制器。
windows-ce - 启动时未加载 Windows CE 7 SPI 驱动程序
我是新手。
我想在 Windows CE 7 上开发设备驱动程序。
我在 TI AM33xx 开发板上使用 Adeneo BSP
我想驱动一个 SPI Flash,所以我应该使用 SPI 驱动程序。
我已经编写了我的驱动程序,当我调试它时,所有函数都正确调用。但是当我打电话给
deviceHandle 总是返回无效值。因此,当我调试低级 SPI 驱动程序时,我看到 SPI_Init() 流函数从未调用过。
我的 platform.reg 文件中有这个尖齿
和
我的 mcspi.reg 文件是
[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\SPI1]这行告诉我们,“SPI1 驱动程序将在启动时加载”,不是吗???但是 spi 驱动程序 SPI_Init 函数在启动时从未加载。我在微软白皮书中没有看到任何额外的设置。
另外,
我努力了
和
功能但结果相同。
驱动程序加载是否有任何额外设置?
谢谢
穆拉特。
synchronization - 两个MCU之间的通信可以使用spi协议吗?
MCU 和设备上的 SPI 协议使用。我想知道它是否可以用于两个单片机的通信。像 s3c2440 & msp430。如果没问题,我应该注意什么。(他们有不同的时钟 25MHz 和 >100MHz)如果它不能使用,请告诉一些原因谢谢
sd-card - 使用 SPI 接口的 MSP430F5438 SD 卡
我想使用MSP430F5438的 SPI 接口连接 SD 卡。硬件部分在我的设计中是正确的,但是我无法将任何数据发送到 SD 卡。我使用的源代码来自MSP430 的安全数字卡接口。
为了调试,我如何将数据发送到 SD 卡?数据应从 ADC12MEM 寄存器接收,只需写入 SD 卡。从上面的源代码来看,没有进程,当我调试时,我无法将任何用户输入发送到 SD 卡。
linux-device-driver - Linux SPI 驱动程序
我正在尝试为 Gumstix Overo Fire 的 Angstrom Linux 2.6.36 编写一个 SPI 驱动程序。我的驱动程序在中断处理程序中不断崩溃。这是完整的代码
中断处理程序崩溃在线
如果我注释掉这一行,一切运行正常,但当然没有从 SPI 读取数据。
sd-card - SPI模式下的SD卡写入速度
我有一张通过 SPI 模式连接到微控制器的 SD 卡(或 SDHC 卡)。我正在使用Chan 的 FAT库。我向它写入来自 8192 字节缓冲区的数据(由于 RAM 不足,缓冲区不能更大)。这种写入是定期执行的。通常,在缓冲区再次填充之前,写入已准备好。但是偶尔(也取决于缓冲区填充速度)会出现问题,并且在必须写入新缓冲区之前写入尚未准备好,从而导致数据丢失。
顺便说一句,扇区大小也设置为 8192 字节,但其他似乎没有影响。
可以用范围监控写作,并表明有时写作需要很长时间。例如,比平时长四倍。
这里发生了什么,也许我该如何防止这种情况发生?这与读取、修改、写入序列有关吗?我需要外部 RAM 缓冲区吗?还是有更好的方法来提高性能?
c - 需要关于带有 ATmega32-A 微控制器的 AD9833 波形发生器的帮助
我正在尝试使用带有 ATmega32-A 微控制器的可编程波形发生器 AD9833 生成正弦波。(MCLK = 8MHz 时钟频率)。我正在使用 USART 通信,因此如果我在超级终端中更改频率,则必须更改波形频率。我为此编写了小代码,如下所示。
但是从上面的代码中,我正在生成正弦波,但是如果我想将信号频率更改为 125KHz,那么我必须在超终端输入 499.9KHz。如果我输入 125KHz,那么它显示的是 31.2KHz。我不知道它为什么会这样产生以及我犯了什么错误?而且它正在改变波形直到 500KHz 频率假设如果我输入大约 1000KHz 的波形频率,但信号的频率没有变化,它只显示 125KHz。
最后我想生成不同频率的波形。如果我在超级终端或腻子上改变频率,那么我输入的任何频率都必须生成具有该频率的波形。
这是我的第一篇文章,如果有任何语法错误,请见谅。
提前致谢。
嗨再一次,
这次我尝试通过 SPI 使用 SM470R1B1M-HT 微控制器对 AD9833 进行编程。我遵循与下面的“ross”解释的相同原则。看来我无法改变正弦波频率。下面是我正在尝试的代码,我设置了与以前相同的时钟配置。