找回密码
 立即注册
楼主: LAOXU

C51 和 C251 标准库的区别

[复制链接]
  • 打卡等级:以坛为家I
  • 打卡总天数:312
  • 最近打卡:2025-03-11 13:20:13

54

主题

1327

回帖

5395

积分

荣誉版主

积分
5395
发表于 2024-3-22 15:48:19 | 显示全部楼层
杨*** 发表于 2024-3-22 12:32
看来你问你老师也没有得到解决方法,那就去看看大家给你支的招吧。

《关于临界区保护和函数可重入的测试 ...

对你老来说, 什么关中断, 上锁 都不在话下, 根本没问题.

我想表达的是对新手, 易犯错.

51  OS 和 其他 CPU 的 OS 相比.
要好多地方要特别注意, 需增加特有的命令加以保护, 其他 CPU 不用 !
1. 不可重入特征(包括好多内部库函数)
2. 通过 内部 RAM传递参数
3. 指针函数要指定.

这些都是 51构架特有的缺点(短板)
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:312
  • 最近打卡:2025-03-11 13:20:13

54

主题

1327

回帖

5395

积分

荣誉版主

积分
5395
发表于 2024-3-22 15:55:00 | 显示全部楼层
不是特别老练的程序员, 谁知道哪个函数是不重入的 ?

相比其他 CPU 而言, 51用 OS, 所花费的时间成本比较高. 产生 BUG的 概率也高.

想表达的意思就是, 如用 OS, 尽量优先选 251系 (STC32) , 不要选标准 51系 ,  251系用 OS, 系统稳定 不易犯错.
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:312
  • 最近打卡:2025-03-11 13:20:13

54

主题

1327

回帖

5395

积分

荣誉版主

积分
5395
发表于 2024-3-22 16:17:47 | 显示全部楼层
不是特别老练的程序员, 谁知道 51哪个函数是可不重入的 ? 连我都要经常看 51库函数 反汇编,

确定是否可重入, 是否占用 RAM作为内部临时(局部)变量.

相比其他 CPU 而言, 51用 OS, 所花费的时间成本比较高. 产生 BUG的概率也大.

我想表达的意思就是, 如做产品需用到 OS, 尽量优先选 251系 (STC32) , 不要选标准 51系,  

251系用 OS, 系统稳定 不易犯错.
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:312
  • 最近打卡:2025-03-11 13:20:13

54

主题

1327

回帖

5395

积分

荣誉版主

积分
5395
发表于 2024-3-22 16:28:44 | 显示全部楼层
像 你老搞的 扩展 X51指令集, 后 2个扩展寄存器 放在 RAM(10H-17H)中, 不但 OS系统要保护 RAM(10H-17H) , 每个中断中使用, 都要特意保护 RAM(10H-17H) .

难道不显麻烦吗?  新手不是更容易犯错吗?

放在 受 编译器 保护的 寄存器中 多好啊, 省去一大堆麻烦, 新手也不需要了解这个那个注意事项, 更不容易犯错.
回复 支持 反对

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-5-2 06:49 , Processed in 0.132095 second(s), 60 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表