问题标签 [arm9]

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.

0 投票
1 回答
191 浏览

c - 裸机臂 (AM1808) - 从 Kick Registers 读取

我试图在我的裸机 AM1808 上进行一些引脚复用,但我似乎无法编写 kick 寄存器?或者,更具体地说,我似乎无法读回我尝试写入的值。

这是我的代码:

输出:

尽管我处于超级用户模式,但我通常无法读取启动寄存器吗?如果是这样,我如何测试我是否正确解锁了 syscfg?

更新:事实证明,我遇到的问题与引脚复用或踢寄存器无关,而是在使用正确复用的 GPIO 引脚的顶层逻辑中出现错误。对困惑感到抱歉。

0 投票
0 回答
328 浏览

embedded-linux - 嵌入式 linux 用户态应用程序突然开始崩溃

问题的要点是:用户级应用程序在运行时损坏的可能性有哪些?除了硬件故障。

硬件装备:ARM9 (at91sam9xe) NAND Flash 用于:Linux 内核 + FS + 用户态应用程序。

我们有一个在 ARM9 (at91sam9xe) 上的嵌入式 linux 上运行的应用程序,几个月没有问题,但突然 ARM 报告无法执行该应用程序..

当它被执行时,它与以下转储一起崩溃:

我尝试 addr2line 来查看它在哪里崩溃,但它引用了 crtstuff.c =\ crtstuff.c 不是我们应用程序的一部分,我认为它与 GCC 有关。

我担心我的可执行文件损坏,所以我在 NAND 上的文件和我的 PC 上的文件上运行了一个差异......存在不应该发生的差异。另外,差异几乎都是“0x00”值,而不是它们应该包含的值。

我真正想知道的是,除了硬件故障之外,用户级应用程序如何损坏?

原因: NAND 闪存始终是可写的,所以我们假设这是一个巧合,即正在写入闪存的内容和电源熄灭。

解决方案 将我们的 FS 移动到 RAM,我们仅在需要写入内容时才将 NAND 分区的一部分挂载为可写。NAND 写保护通过硬件引脚控制,仅在有来自 App 的写请求时启用

0 投票
2 回答
133 浏览

embedded - S3c2440(ARM9) spi_read_write 闪存

我正在研究 SPI 通信。尝试通信 SST25VF032B(32 MB 微芯片 SPI 闪存)。当我阅读制造商 ID 时,它显示 MF_ID =>4A25BF 但最初它是 MF_ID =>BF254A。我只是简单地把它倒过来,意味着先咬第 3 个字节和第 3 个字节。

可能的原因是什么?我的 SPI 初始化函数在这里:

我的 spi_read_write 函数如下:

我的呼叫功能是:

请指导我该怎么做?提前致谢!!

0 投票
0 回答
112 浏览

linux-device-driver - 用于 uC s3c2451 的 SPI 驱动程序来配置 HSSPI->SPI 通道 0?

我已经开始威胁读/写 s3c2440 微控制器的 SPI 闪存。所有寄存器设置均已正确完成,闪存读/写功能完美运行。

S3c2440(ARM9) spi_read_write 闪存

现在,我想用“S3C2451 16/32 位 RISC 微处理器”做同样的事情,那么“S3C2451”的寄存器配置是什么?

我研究并比较了数据表“S3C2440A”和“S3C2451”,发现这么多寄存器是不同的。我还注意到,在数据表中说“S3C2440A”是“32 位 CMOS 微控制器”,“S3C2451”是“16/32 位 RISC 微处理器”。那么,这不是相同的架构吗?

所以,请指导我实现同样的目标。

更新

我得到了一个几乎相似的 s3c6410 代码的链接。但乍一看,我无法理解配置具有 5 MHz 时钟输出的 SPI 通道 0 的最小寄存器配置是什么。

http://read.pudn.com/downloads131/sourcecode/embed/558985/Components/con ...

我想为 s3c2451 处理器配置它。请指导我......

提前致谢。

0 投票
0 回答
599 浏览

opengl-es - 嵌入式 linux 上的 Qtwebengine,qtwayland 和 OpenGL 不工作,在浏览器上看到黑色矩形

我正在尝试使用 Qt 在我的平台上进行网页浏览。

我在 ARM A9 上使用 Qt 5.4.1,运行嵌入式 linux,带有 qtwayland 和 OpenGL ES。我已经成功地为该平台编译(使用 yocto)QtWebEngine,并且能够启动示例浏览器应用程序(quicknanobrowser、browser 和 fancybrowser)。

问题是网页内容显示为黑色矩形。浏览器的所有其他小部件/菜单工作正常。

此问题已报告,并且 EGLFS ( https://github.com/qtproject/qtbase/pull/4/files?diff=split ) 已修复。由于我的设置基于 Wayland EGL,我不确定将此修复程序移植到 Wayland EGL 是否会有所帮助。

有人可以让我知道会发生什么问题吗?关于从哪里开始调试的任何想法?

0 投票
3 回答
476 浏览

embedded-linux - 嵌入式 Linux 设备在启动期间阻塞 RS485 总线

我正在使用一台工业 Linux 计算机来实现通过 RS485 总线与多个连接的设备进行通信时遇到问题。我遇到的是 RS485 USART 驱动程序使用的 IO 引脚在启动时设置为不同的电平,而不是进入 RS485 空闲/三态。结果,总线上的其他设备在设备启动时被阻塞超过 30 秒,引发各种外部问题。事件过程可以在附图中查看,我在启动期间用示波器测量了输出电压。

我的猜测是,实际驱动器在电压水平达到其三态水平之前不会启动(例如,此设备约为 2.2V)。之后,一切都按预期工作。

我试图找到任何配置文件来设置引导时引脚的默认 IO 级别(认为这可能由引导加载程序设置)无济于事。

此外,我尝试应用启动脚本来“足够早地”运行以将 DATA- 设置为高,但据我所知,有问题的设备没有提供任何接口来控制这些引脚作为常规 GPIO。

任何帮助、提示或见解将不胜感激!

编辑:我不是经验丰富的 Linux 开发人员,所以如果我遗漏了任何重要的细节,请强调。

一些规格:

  • ARM920T 版本 0 (v41) CPU
  • Linux 2.6 的专有发行版
  • 使用 Busybox
  • 爱特梅尔 USART 驱动程序

从引导日志中提取:

Linux 版本 2.6.28.10 (root@) (gcc 版本 4.1.2) #94 PREEMPT Tue Oct 29 10:22:19 CET 2013
CPU: ARM920T [41129200] revision 0 (ARMv4T), cr=c0003177
/...
.. ./
端口 /dev/ttyS3 的 RS485 模式已启用
/...
...(我猜这里大约需要 30 秒)
.../
atmel_usart.3: MMIO 0xfffcc000 (irq = 9) 处的 ttyS3 是 ATMEL_SERIAL
atmel_serial.3:将 RS485 RTS 引脚向下放置
/...
...
.../

完整启动日志: https ://drive.google.com/file/d/0B2XYl1mNCa8jNUZ5V0Nic1hkU0U/view

类似问题:

此处可能讨论了一个类似的问题:UART 初始化:防止 UART 拉高 RTS
但我不确定如何继续使用建议的解决方案。

从我的设备启动期间的 RS485 输出

0 投票
1 回答
224 浏览

eclipse - [AT91SAM][DEBUGGER]如何使用 Eclipse 配置 gdbserver?

我已经在 VM 上安装了 arm-linux-gnueabi 来交叉编译 AT91SAM9G20 软件。交叉编译器工作正常。

我的问题是:如何配置 Eclipse 以使用 gdbserver?

我已经配置了一个新的 ssh 连接(工作,我可以在 Eclipse 终端上访问)。
但是当我点击“调试”按钮时,我在文件上传过程中收到了这个错误消息:

文件上传时出错。 缺少元素:

问题似乎是由于传输文件。当我用 scp 手动传输文件时,没有问题。

0 投票
1 回答
47 浏览

c++ - map error while coding for ARM9 using ADS 1.2 compiler and ARM11 RVCT2.2

I'm porting my code which written in cpp to support ARM9 using ADS 1.2 compiler,but after porting the below code gives error while compiling for ARM11 using RVCT2.2 compiler, this is the sample code

0 投票
2 回答
158 浏览

c - 结构对齐安全使用

我是一家公司的新手,该公司完成了以下结构的使用:

我知道一些关于对齐和填充的事情,我假设编译器(用于 ARM9 设备的 gnu C99)将添加一些填充以使结构对齐。

但是这段代码安全吗?
据我了解,只要uint16 len变量紧随其后,int8 array[]无论其他结构成员如何,它都是安全的。

当它之前的大小是奇数时,它只会在 uint16 之前添加填充吗?
这种用法正确吗?更重要的是,它安全吗?

0 投票
0 回答
54 浏览

linux - 如何判断 ARM9 开发板/评估套件是否支持硬件浮点运算

我正在浏览 Farnell 和 Digikey,寻找具有 ARM9 处理器、128MB RAM、硬件浮点支持和 Linux 支持的开发板。

除了硬浮动支持之外,所有功能都相对容易过滤。

我手动搜索了很多数据表,但没有一个实例提到浮点支持,无论是作为软件模拟还是由硬件提供。

我将如何寻找这样的板?