如何使用增强型双数据指针
官方介绍双数据指针使用“强大的”,这么强大的功能怎么没人用,官方库函数也没给样例。
琢磨了很久也不会使用这功能?
本帖最后由 STC爱好者 于 2023-1-6 16:19 编辑
https://www.stcai.com/gjrj
STC爱好者 发表于 2023-1-6 16:15
https://www.stcai.com/gjrj
你不点进去看一下吗
QQ624353765 发表于 2023-1-6 17:17
你不点进去看一下吗
增强型双数据指针只提供汇编例程:
原先我想编写的, 使用双指针的 STC 51系列标准函数库, 但再三考虑, 由于 STC 51系列的 DPTR双指针寄存器, SFR地址和 Keil C51编译器支持的标准SFR地址
不兼容, 实际使用于中, 由于 Keil 不支持, 需手动设置, 非专业老司机极其容易犯错(如中断入口 SFR保护处理, 以及中断中用到 DPTR寻址, 等等) , 没有通用性,
对新手来说, 使用不当, 可能问题出在哪里都查不到, 实用性不强, 故未编制.
51指令集, 由于设计年代较早, 那时 RAM容量小, 应用要求低, 无所谓. 但放在现在, DPTR单指针寻址, 那怕打了补丁, 作分时双指针操作, 实际上也是个鸡肋,
用着头大, 不用又不行, .
相比之下, 251指令集(STC32使用的), 保留 DPTR是为了和 51兼容, 其丰富多样化的外部寻址方式, 让 DPTR 几乎没有什么用处了, C251编译器 偶然会用一下,
是为了精简代码. STC32G8K64-42MHz-LQFP48, RMB2.7;
STC32G8K64-42MHz-LQFP32, RMB2.6;
尽量选 STC32G系列开发,有强大的 DMA 支持
强大的DMA
乘风飞扬 发表于 2023-1-6 18:38
增强型双数据指针只提供汇编例程:
这汇编代码怎么使用 确实挺麻烦的,不用这些功能有点可惜,用起来keil支持又不好。
页:
[1]