问题标签 [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 - 带有 C 代码的 4 位 LCD
我正在使用 Winstar Display LCD (WH2004A-YYK-CP) 和 STM32 处理器,代码是用 C 编写的。我需要以 4 位模式运行它。我运行它并写下我想要的。
如您所知,4 位模式发送 8 位数据为 2 倍 4 位。问题是,当我在 2 个半字节之间重置时,它会打印出奇怪的字符,无论我重置多少,它都无法正常工作。我想出的唯一解决方案是重置它几次。
为了弄清楚发生了什么,我在 2 个半字节(每个 4 位)之间添加了 2 秒延迟,并打印了一个长句子。因此,每当我重置它时,处理器都会等待发送第二个半字节。
我正在重置它,它打印出一些奇怪的东西,第二次重置后它什么也没打印,第三次重置后它再次正确打印。第 4 次重置它再次打印一些奇怪的东西,第 5 次没有打印,第 6 次再次正确打印......并像这样继续。因此,我现在确定问题出在这些分割字节上。
类似的代码在 8 位模式下工作得很好。
我要问的是:我如何确定“当我重置 STM32 处理器时,LCD 不会等待在前一个会话中发送第一个半字节的某些数据的第二个半字节。” 通过使用 C 代码?
更新:
我也在这里发送我的代码:http: //pastebin.com/kHQQEqjx
LCD 命令也在这里:http: //imgur.com/mfDlj
c - 结构大小、填充和未来
考虑以下程序
使用 MinGW 编译时,我在 32 位和 64 位系统上都得到 sizeof(Foo)=12 和 sizeof(Bar)=12(我猜在 16 位环境中,sizeof(Bar)=10)。未来这些结构的大小是否有可能是 16 以更好地适应 64 位环境?
我将结构存储在文件中,并且不想在将来添加解决方法。Doom 事物结构布局在 1993 年可能是一个不错的选择,但不是今天。
embedded - 如何构建像 Raspberry Pi 这样的单板计算机来运行 OS?
我的问题是:如何构建像 Raspberry Pi 这样的单板计算机来运行操作系统?
用户ARM微处理器和debian arm os,可以使用USB等。
像树莓派和其他单板计算机
我搜索但找不到任何帮助我!:(
microprocessors - finding physical address in 8086 microprocessor
in 8086 microprocessor a 20 bit address is divided in 16bit+4bit address in which 4 bit binary is the segment address.when we convert a 4bit binary into hexadecimal it gets to 1bit hexadecimal.my question is when we encounter the problem of calculating the physical address from the logical, a 4bit hexadecimal segment address is given.why is it so? Also in the calculation of physical address we append 0 in lsb to find the base address of the segment and then we add the offset into it. what is the logic behind appending 0?
embedded - 微控制器接口
我是嵌入式编程领域的新手,我正在寻找有关使用 I2C、USB、UART、CAN 等与微控制器接口的信息。有人知道关于这个主题的任何好的链接、书籍、教程吗?因为我是这个主题的真正新手,所以我更喜欢它尽可能基本。
assembly - MOV BL,[AX] 错误
可能重复:
NASM 16bit Intel
我正在为微处理器课程中的简单微处理器编写汇编代码。我正在编写一个程序:将六个元素相加,从地址 300 开始存储在内存中,但忽略那些 80 hex 或以上(>=80h
)或 20 hex 或以下(<=20h
)的元素。在添加或不添加 6 次比较偶数后,程序应该停止。
这是我的代码:
但我在这一行收到一个错误:
有谁知道为什么?
java - 使用 RS232 电缆将可执行程序发送到硬件(微处理器)
我有一个可以使用 RS232 电缆连接的硬件设备。现在根据我的需要,我必须将 java 或 c++ 程序传输到硬件的微处理器中才能执行。我有以下问题:
- 如何将 C++/java 程序执行到硬件中?
- 如何知道程序正在运行?
- 如何获取接口?
任何建议将不胜感激..谢谢....
microprocessors - 为什么在 Windows 或 MAC 或 Linux 上运行的程序不运行
如果编译器将高级语言(例如 C++)转换为要由微处理器执行的机器代码。
为什么在 Windows 上运行的程序不能在 Mac 或 Linux 上运行?
embedded - 16 位机器可以处理 64 位(数据类型,如 long int、float ...)操作吗?
16 位机器可以对 64 位数据类型执行操作吗?
我知道它可以使用两个寄存器执行 32 位乘法,但不知道它如何处理 64 位数据?
c++ - c++中的浮点数到字符串的转换
我在 LPC 1769 微处理器上编程,但我无法弄清楚如何将浮点数转换为字符串,以便可以在我的 Display 上打印它。我正在使用该sprintf
命令,但我的程序仍然显示内存错误。如何将afloat
转换为字符串?我需要在不使用标准库的情况下执行此操作。