问题标签 [8051]
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.
assembly - 使用一个寄存器的正弦波
所以我的任务是创建一个正弦波,我想出了这个,它使用两个寄存器并且可以工作......
现在我被要求只使用一个寄存器。尽管我觉得这可能是一个非常简单的解决方案,但我还是有点困惑。任何提示都会很棒。
assembly - JB在这里是做什么用的?
我正在尝试了解开发板(XL400)附带的一些示例asm,以期将其转换为C。
asm 代码包含在下面,不幸的是,像它这样的文档从中文翻译得非常糟糕,这使得它比无用更糟糕。自从我使用 asm 以来,它也有很长一段时间了!
在代码中,DELAY 子程序中有一条 JB 指令(代码的倒数第三行)。我无法理解它的作用或它应该如何运作。谷歌搜索 JB 会导致对不同形式(JB 标签)的解释,所以我不确定 asm 是否正确?非常感谢帮助,Ta
c - 启用功能时代码行为异常(可能的大小约束)
我知道这个话题很模糊......所以我会试着解释一下。
我正在 IAR Workbench 中开发一个项目。我已经到了如果我添加一个新特性,比如一个简单的 if 语句,整个代码结构就会中断的地步。代码可以正常编译并下载到 8051 设备,但是在代码启动序列的中途,我失去了连接。好像发生了堆栈溢出。如果我暂停调试器,我会看到我的 XdataStack 和 IdataStack 值很低(小于 50%)并且没有要报告的堆栈溢出。
事实上,导致问题的代码甚至没有被应用程序调用。
如果我启用代码中的调试#define 常量,这一点会更加明显。启用此功能会导致将更多字符串常量内置到 UART 调试代码中。
我执行的另一个测试是在一个已经存在的函数中创建一个包含 100 个字符的数组
这似乎也破坏了代码。
我想知道是否有我应该查看的内存区域,看看我是否已经填满了这个设备(CC2540,闪存大小为 128Kb)
IAR 让我调查:
- IDATA
- XDATA
- SFR
- 逻辑代码
- 代码
- 数据
- 数据
就我的项目配置而言:
堆栈大小:
- 数据:0xC0
- 数据:0x00
- X数据:0x280
堆大小:
- XDATA:0xFF
- 远:0xFFF
- Far22:0xFFF 巨大:0xFFF
c - 8051 c 中断
我正在使用 C 在 8051 微控制器上编写程序。我使用的编译器是 Keil Microvision。我被卡住了,无法弄清楚我的代码中缺少什么。我知道这是非常基本的代码,我只是不知道我应该做什么。
所以我所做的几乎就是向用户发送一个句子并让他们通过串行端口回答是或否,我使用了串行中断。那部分工作正常。如果我从那个人那里得到否定,我想通过定时器中断生成一个 5kHz 的方波。我希望这个方波由外部中断控制,当引脚 P3.2 上的外部中断打开或关闭时打开和关闭它。这是我所有的代码
我遇到问题的部分是前面代码中的这两个中断
任何正确方向的提示将不胜感激!谢谢。抱歉格式化
8051 - 8051 - 在 CJNE 之后 PSW 被设置为 0X80
我对 8051 还很陌生,并且正在对其进行测试。CJNE 执行后,将 PSW 设置为 0x80。为什么这样做?下面是代码。我正在使用 EdSim51DI 模拟器。
任何帮助将不胜感激
assembly - 8051 的数字电压表
我必须使用组件在 8051 上创建一个数字电压表。我有一个在 LCD 上以十六进制输出,但我无法让它以十进制输出。
底部的大部分是用于进行 16 位划分的代码,但我无法将其链接到十六进制。我也有问题弄清楚代码是如何工作的。任何帮助将不胜感激。
embedded - 使用 SPI 总线将 .hex 文件写入 8051 微控制器的内部 FlashROM
我正在使用 EEPROM 上的 SPI 总线以及 8051 的内部 ROM 进行固件升级,基本上在这两个存储设备上都写了一个 .hex 文件。我可以看到那里写的 .hex 文件。我可以看到从机和主机通信正常,但无法在我的存储设备上写入任何内容。
如果您有建议并且遇到类似的问题,请告诉我实际问题在哪里。
欢迎任何意见。
问候,拉维
c - 如何读取连接在 SPI 总线上的 ROM 的第零地址?
我的主人是一个ARM9处理器。
我想读取连接在 SPI 总线上的 8051 内部 ROM 的第零地址?
我可以使用read()
系统调用来做到这一点吗?正如我在用户空间中想要的那样,我可以使用mmap()
系统调用吗?
serial-port - 从 Internet 操作 8051 端口
我在微控制器 8051 的端口连接继电器。我想从网站上操作它们。所以,我想将它们的状态发送/接收到计算机,然后上传到网络服务器。
像这样的东西 ,但我在学校项目中使用 8051 受到限制。
我发现“Pyserial”可用于将数据接收到计算机。还有其他方法吗?
我对c、php、javascript有一些了解。
microcontroller - 如何使用微控制器 8051 通过中断 4 从 UART 获取字符串
我有点难以从中断 4 函数中获取字符串。但是当我尝试获取单个字符并在 LCD 2*16 中显示时效果很好。但是当我尝试从“dot[i]”变量中获取字符串以显示给 LCD 时,它不起作用。
这是我的代码:
对于我使用 Keil v4 的编译器