问题标签 [microprocessors]
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.
c - 不了解 ARM 硬件堆栈(使用 IAR)
我目前正在使用 IAR Embedded Workbench 为 NXP LPC2378 micro 进行开发。我想我遇到了我的 IRQ 和 CSTACK 需要更大的问题,因为 CPU 不断崩溃,我注意到这些区域会“溢出”到周围的内存区域。我想我真的不明白这些和其他内存区域的用途是什么?我使用为 ISR 保留 RAM 的 RTOS (CMX),但这似乎是为了不同的东西。
当我使用 RTOS 时,IRQ_STACK、CSTACK、SVC_STACK、FIQ_STACK、UND_STACK 和 ABT_STACK 是什么,或者它们是完全独立的?
emulation - 指令集模拟器指南
我有兴趣为 gameboy 和其他手持控制台编写模拟器,但我读到的第一步是模拟指令集。我在这里找到了一个链接,上面说初学者可以模拟 Commodore 64 8 位微处理器,问题是我对模拟指令集一无所知。我知道 mips 指令集,所以我想我可以理解其他指令集,但问题是模拟它们意味着什么?
注意:如果有人可以为我提供初学者指令集仿真的分步指南,我将不胜感激。
注意 #2:我打算用 C 语言编写。
注意#3:这是我第一次尝试学习整个仿真。
谢谢
编辑:我发现这个网站是一个详细的分步指南来编写一个看起来很有希望的模拟器。我将开始阅读它,并希望它对其他正在研究编写模拟器的人有所帮助。
assembly - 影子寄存器——手臂
影子寄存器用于减少中断延迟。
Arm有15个寄存器,那么这些影子寄存器存放在哪里呢?
术语“影子寄存器”是否与银行和非银行寄存器有关?
x86-16 - 'mov cx, [bp+6]' 使用什么寻址模式?
"mov cx, [bp+6]" 使用什么寻址方式?处理器是 intel 8086。我正在学习 Douglas V. Hall 的“微处理器和接口”。我知道它的内存寻址模式。但不确定是基于寻址模式还是索引寻址模式?
memory - 将 8051 连接到外部 RAM-EEPROM
当我将8051连接到外部存储器时,我应该在软件中更改RD和WR信号还是在我使用MOVX命令时由处理器本身进行?
例如,我将从内存中的某个位置读取,
此处是否需要 CLR 读取命令,或者处理器只是通过查看代码是否正确来清除它自己
assembly - 对 8085 指令代码中 MVI 指令的二进制代码感到困惑。请参见
考虑指令 MVI A,32H 将 32H 加载到寄存器 A(Intel 8085 微处理器)中。
我的书说它是一个双字节指令,其中第一个字节是操作码,第二个是操作数。第一个字节是 0011 1110(十六进制的 3E),第二个字节是 0011 0010(十六进制的 32)。
我对操作码部分如何准确地转换为机器码感到困惑。我的意思是......“0011 1110”的哪一部分代表“MVI”,它的哪一部分告诉要加载寄存器A?“3E”如何告诉微处理器这两个信息?那就是它必须加载数据以及目标寄存器。还是这整个操作码是预定义的,您无法将操作码中的“MVI”和“目标寄存器”分开?
我希望我的问题是有道理的,哈哈。
logic - Shift、Rotate 和 Rotate All:它们有什么用,我需要它们吗?
我的问题: Rotate All 功能到底是做什么用的,如果需要,它可以在软件中以另一种方式实现吗?
为什么?我正在尝试用离散逻辑芯片构建 CPU,类似于此处描述的 SAP-2 Simple-As-Possible Computer。SAP-2 只能做 Rotate-Left/Right 并忽略进位。我想添加一些利用进位标志的功能,但不想使设计过于复杂。
我有一个可以通过进位左移/右移的电路,但事实证明,使用进位进行 Rotate All 很难实现,并且同时具有这两种功能会更加复杂。这是它现在的工作方式:
如果累加器包含 CY=1 A=0111 0100
然后用进位向左旋转=
CY= 0 A=1110 100 0
或使用进位向右旋转=
CY= 0 A= 0 011 1010
预先感谢您的意见。
c# - 如何在 C# 中将 WORD 或 Nibble 解释为数字?
我不是来自低级开发背景,所以我不确定如何将以下指令转换为整数......
基本上我有一个微处理器,它告诉我哪些 IO 处于活动状态或处于非活动状态。我向设备发送一个 ASCII 命令,它会回复一个 WORD,说明 15 个 I/O 中的哪一个是打开/关闭的……指令如下:
- 单元回答“A0001/”仅用于 DIn0 开启,“A????/”用于所有输入激活
- Awxyz/ - w=0 到 ? 中 MSB 的高半字节 ASCII 字符 0001=1, 1111=?, z=LSB 的低半字节。
归根结底,我只想能够将其转换回一个数字,该数字将告诉我 15 个(或 16 个?)输入中的哪一个处于活动状态。
我有东西连接到第 15 个 I/O 端口,我得到的回复是“A8000”,如果有帮助吗?有人可以帮我解决这个问题吗?
embedded - 尝试通过示例了解时钟周期是什么
我试图完全理解时钟周期是什么,所以我想出了一个测试示例,我希望有人确认或消除并提供更好的理解。如果我有这行简单的代码,一个while循环,在设备上运行
命令:int x = 5 每个时钟周期执行一次吗?换句话说,时钟速度是设备在单位时间内读取和执行命令的速度吗?
matlab - 来自用于微控制器的 OpenCV 程序的 HEX DUMP ?[图像处理]
是否可以从用于微控制器/微处理器的 OpenCV 程序中获取 HEX DUMP?还是您强烈建议使用 MatLab ?
用于图像处理。