embedded-linux相关内容
我正在研究 rasberry pi 板.是否可以直接访问GPIO物理地址从 linux 内核空间使用 inb(), outb()... ?.如果是怎么办? GPIO寄存器地址链接第 90 页http://www.raspberrypi.org/wp-content/uploads/2012/02/BCM2835-ARM-Peripherals.pdf 谢谢 解决方案 是的.
..
..
我正在为一家公司做实习研究.我在使用 Mono(.Net 平台的跨平台实现)时遇到了一些问题.我的公司设计硬件和软件. 我使用嵌入式 linux 的知识非常有限.我正在实习的公司非常注重 .NET.但是 mono 的新发展,他们问自己是否可以将 linux 用于较小的项目,也避免了为他们设计软件和硬件的人的高昂许可成本. 我已经研究过 mono 可以做什么(现在还不能做什么).现在我遇
..
我尝试在 Ubuntu 11.10 上的 Scratchbox 中为 arm 编译单声道.但是当我进行安装时,我收到一条错误消息. [sbox-ARMEL:~] ./configure --enable-minimal=profiler,debug,logging,soft_debug --with-tls=--with-tls=__thread --with-monotouch=no --wi
..
我正在尝试使用 Linux 下的 termios 框架通过 UART(usbserial)连接非接触式智能卡读卡器.该代码在 PC 上运行良好,但是当我在 ARM9 目标上进行交叉编译并试用时,它能够打开设备甚至将命令写入设备,但读取命令会无限期地阻塞.这是代码片段: int mifare_rdr_init(struct mifare_1K * ptr, char *rdr_devnode){b
..
我正在编写一个 UART 驱动程序.我在第 14.Linux 设备模型章节中遇到了这两个函数. int device_register(struct device *dev);int driver_register(struct device_driver *drv); 由于 UART 是一个字符驱动程序,我使用 (alloc_chrdev_region) 动态创建了主编号,并使用 cdeva
..
我阅读了关注的链接和其他来源,但没有找到我的问题的答案. 串行终端上的二进制数据 数据在通过串行端口传输时损坏 我通过串行端口与我的嵌入式设备通信.默认情况下,嵌入式 Linux 使用此端口作为终端.但我也想通过端口传输二进制数据(服务包).我的/etc/inittab 文件有一个“getty"调用:console::respawn:/sbin/getty 115200 ttyS
..
我按照这篇文章打印堆栈跟踪 当我的 gcc C++ 应用程序崩溃时如何生成堆栈跟踪.它在 x86 linux 中运行良好.谁能教我如何让它在 arm-linux 上工作? 我正在使用 arm-linux-gcc 4.4.3. [root@FriendlyARM/]# ./test1错误:信号 11:[0x0] 在 x86 中 mickey@mickeyvm:~/Desktop/work
..
我在 ARM9 板上运行嵌入式应用程序,总闪存大小仅为 180MB.我可以运行 gdb,但是当我运行时 (gdb) 生成核心转储 我收到一个错误 警告:corefile 部分的内存读取失败,1048576 字节位于 0x4156c000.警告:corefile 部分的内存读取失败,0x50c00000 处的 1048576 字节.保存的 corefile core.5546程序正在运
..
我是嵌入式 Linux 开发的新手.我必须将 uboot 和自定义 Linux 发行版移植到新的基于 ARM 的板上. 我们使用的uboot(2009.08)没有Arch和DTS文件夹.我想这是一个旧版本,它不使用 DTS 将硬件信息传递给内核(v 3.0).我已经阅读了很多关于 DTS 的信息,但是关于将硬件信息从 uboot 传递到我们正在使用的内核的这种(过时的?)方法,互联网上没有足
..
我正在尝试了解向量页面如何映射到 0xffff0000.我指的是 3.14 内核. 根据 early_trap_init() 中的评论 traps.c 向量从 entry-armv.S 复制到向量页面. 似乎 early_trap_init() 是从 devicemaps_init() mmu.c. 在调用 early_trap_init() 之前,它正在使用 early_all
..
我将设置构建环境来为 AT91SAM9X25 Board 制作我自己的 linux 嵌入式系统.我正在使用 buildroot 来执行此操作.make 命令构建所有目标,首先构建工具链,然后打包,然后是 rootfs 和 rootfs 的映像(tar、cpio ...).要重建 rootfs,我通常使用 make clean 然后 make.make clean 命令删除所有工具链,包括工具链.
..
我正在学习 linux 内核内部结构,在阅读“理解 Linux 内核"时,我遇到了很多与内存相关的问题.其中之一是,如果我的系统上仅安装了 512 MB 的物理内存,Linux 内核如何处理内存映射. 据我所知,内核将 0(或 16)MB-896MB 物理 RAM 映射到 0xC0000000 线性地址并可以直接寻址.所以,在上述我只有 512 MB 的情况下: 内核如何从 512 M
..
我正在运行 Ubuntu 12:04LTS 并安装了 arm-linux-gnueabi C 和 C++ 编译器.编译后的二进制文件不会在我的目标板上运行.看起来即使我指定了 cpu 和 arch,编译器仍然为错误的 CPU 构建二进制文件.而不是 atm9tdmi 它构建和 7-A. 我做错了什么还是我应该配置什么?谢谢. ~/ArmTest$ arm-linux-gnueabi-g++
..
有没有人在没有 Scratchbox 或 qemu 的情况下在 Linux 下成功为 ARM 交叉编译单声道? (可能使用 distcc 或一些交叉编译器工具链) 解决方案 我设法使用 CodeSourcery Lite 工具链在 Ubuntu 机器上安装了 Scratchbox 2 交叉编译 mono(2.0, 2.4, 2.6, 2.8, 2.10.1).我使用了 Mono 项目
..
我首先要说我不是该领域的专家,我的问题可能包含误解,在这种情况下,如果您纠正我并附上资源,我会很高兴,以便我可以了解更多细节. 我试图弄清楚系统总线的方式以及移动设备中出现的各种设备(如传感器芯片、wifi/BT SoC、触摸屏等)如何被 CPU 寻址(和其他 MCU). 在 PC 世界中,我们有将命令/数据路由到设备的总线仲裁器,而且,afaik,地址是硬连线在板上(如果我错了,请纠
..
我正在尝试在带有 i.MX6 的自定义板上通过 U-boot 启动 Linux(CPU 内核是 ARM Cortex A9) 我们似乎已经成功移植了 Das U-Boot(2009.08).但是在最后一条 U-Boot 消息中引导 Linux 失败:“正在启动内核 ..." 这是我的相关环境: bootargs=console=ttymxc1,115200 vmalloc=400M
..
__asm__ __volatile__ () 的基本作用以及 "memory" 对于 ARM 架构的意义是什么? 解决方案 asm volatile("" ::: "memory"); 创建编译器级别的内存屏障,强制优化器不对跨屏障的内存访问重新排序. 例如,如果您需要以特定顺序访问某个地址(可能是因为该内存区域实际上是由不同的设备而不是内存支持的),您需要能够将这一点告诉编译器
..
哪些工具通常用于单元测试,尤其是嵌入式系统的持续集成? 我特别认为您通常必须交叉编译和部署,并且您不能轻松地可视化目标平台.此外,运行测试代码和框架可能很困难. 我还能用什么来缓解这些困难? (我认为应该是某种双重目标,构建服务器在更简单的目标上运行测试) 解决方案 对于单元测试,看看 Unity.http://sourceforge.net/apps/trac/unit
..
谁能给我详细解释一下adb shell dumpsys meminfo my-app-name得到的profile? 结果如下 如何在 Android 中发现我的应用程序的内存使用情况?: ** MEMINFO in pid 890 [process-name] **本地 dalvik 其他总计尺寸:10940 7047 不适用 17987已分配:8943 5516 不适用 14459免费
..