找回密码
 立即注册
楼主: 金南京

C51程序的编写有的用框架式、有的用嵌入式那种更为主流

[复制链接]
  • 打卡等级:以坛为家I
  • 打卡总天数:259
  • 最近打卡:2025-05-03 20:32:29
已绑定手机

17

主题

122

回帖

1311

积分

金牌会员

STC-镇江-老蔡

积分
1311
发表于 2024-3-17 15:32:58 | 显示全部楼层
感觉自己又闹了个笑话,;不过有这么多大神的讨论,深感欣慰,尤其姚总:“从 汇编 到 C51, 不走弯路”,听你的乖乖的从基础做起,谢谢大家
平安快乐
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看I
  • 打卡总天数:16
  • 最近打卡:2025-04-30 08:41:32

105

主题

1215

回帖

1万

积分

荣誉版主

积分
12884
发表于 2024-3-18 10:44:44 | 显示全部楼层
fei*** 发表于 2024-3-16 21:34
初学者肯定先裸机编程,啥基础没有,拿什么搞os

(1)这个论点不完全对,依赖具体于是什么需求和是什么OS。我看到一群50/60岁的大妈直接学自动档的驾照,她们也没有从摩托车或者手动档开始学。

(2)谁入门时能在PC机上或者树莓派单片机上先编个裸机程序试试?很难的,需要的硬件基础知识不是一般的多。但是入门时完全可以在Windows或者Linux这样的OS上面学习编写自己的用户程序。
(3)STC单片机目前的硬件基础和在其上运行的RTOS都可以支持初学者从OS框架开始入门学习和进行实际项目编程了。
(4)我观察只是对于“初学者从OS框架开始入门学习单片机程序设计”这个主题既没有提供合适的RTOS框架给用户,也没有足够的配套教材和课程给初学者,因此大家只能是靠自己摸爬滚打,从裸机编程开始学习单片机编程了。

点评

杨老师说的对,初学者是可以从OS框架开始编程的,并且用OS用还会比祼机更容易。 这就好比用手机,如果你只是使用,而不是去研究手机是怎么实现的,那么摸几天自然就熟悉了。 现在的问题是: 单片机比较接近底层,  详情 回复 发表于 2024-3-18 11:30
回复 支持 1 反对 0

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:5
  • 最近打卡:2025-04-30 07:46:22

33

主题

1079

回帖

2321

积分

荣誉版主

积分
2321
发表于 2024-3-18 11:30:08 | 显示全部楼层
本帖最后由 tzz1983 于 2024-3-18 11:33 编辑
杨*** 发表于 2024-3-18 10:44
(1)这个论点不完全对,依赖具体于是什么需求和是什么OS。我看到一群50/60岁的大妈直接学自动档的驾照, ...

杨老师说的对,初学者是可以从OS框架开始编程的,并且用OS用还会比祼机更容易。

这就好比用手机,如果你只是使用,而不是去研究手机是怎么实现的,那么摸几天自然就熟悉了。

现在的问题是: 单片机比较接近底层,使用单片机的这群人本身就是姣姣者。
通常他们在刚接触单片机和RTOS的时候,不满足于只知其然,不知所所然。
然后就陷入了这样一个怪圈,本来我是知道该这样用的,然后我还想知道OS是怎么实现这种功能的,
再然后发现,实现的机制比较复杂,最后的结果是短时间内无法完全了解OS这个机制,此时又对应用就会产生怀疑,不放心。
最后是把 应用 和 OS本身 混淆在一起了,症结就卡在这了。

如果只是用RTOS,那还是比较简单的。

比如只用一个任务,那不是和祼机编程完全一样吗?
循序渐进,再加一个任务,再用用阻塞功能,再用用简单的记数信号量。然后OS不就用起来了吗

呼吁初学RTOS者,一步一步的来,先学简单应用,逐步加入自己的应用,用的过程中遇到问题才去查相关的资料。

最忌好高骛远,一开始就想把OS的机制全研究透。

熟悉用以后再去慢慢了解OS的实现机制,并且也要一个板块一个板块的熟悉,想一口气全吃掉那自然是很难的。

最后,出了问题多往自己身上找原因,不要经常怀疑编译器和OS本身有BUG, 初学者能找到成熟的OS和编译器的BUG,那是机会非常少的事情
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:418
  • 最近打卡:2025-05-04 00:25:16
已绑定手机

34

主题

2097

回帖

2212

积分

荣誉版主

积分
2212
发表于 2024-3-18 12:26:33 | 显示全部楼层
个人观点是,低端的单片机可以使用 中断+状态机+DMA能解决绝大部分的问题,而且运行效率极高。
高端的单片机建议直接用库+实时OS,没必要裸跑。
睁开眼睛做场梦~~~
回复 支持 1 反对 0

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:259
  • 最近打卡:2025-05-03 20:32:29
已绑定手机

17

主题

122

回帖

1311

积分

金牌会员

STC-镇江-老蔡

积分
1311
发表于 2024-3-18 19:04:32 | 显示全部楼层
晓*** 发表于 2024-3-18 12:26
个人观点是,低端的单片机可以使用 中断+状态机+DMA能解决绝大部分的问题,而且运行效率极高。
高端的单片 ...

谢谢
平安快乐
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:402
  • 最近打卡:2025-05-04 00:31:29

2

主题

170

回帖

208

积分

中级会员

积分
208
发表于 2024-3-18 19:37:48 来自手机 | 显示全部楼层
裸机编程吧…
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民II
  • 打卡总天数:80
  • 最近打卡:2025-04-27 21:49:47

6

主题

65

回帖

538

积分

高级会员

积分
538
发表于 2024-3-18 19:41:38 | 显示全部楼层
本帖最后由 feiyu 于 2024-3-18 19:43 编辑
杨*** 发表于 2024-3-18 10:44
(1)这个论点不完全对,依赖具体于是什么需求和是什么OS。我看到一群50/60岁的大妈直接学自动档的驾照, ...

既然他问出了跑裸机和跑OS那种主流这个问题,还说自己是初学者,那我只能认为他是刚接触单片机的小白,项目也就跑过流水灯这些。这种情况在我个人观点里是必不可能给他推荐OS,单片机开发基本都是跟电路、芯片打交道。寄存器、外设、时序都不知道干嘛的,再加一层OS,出问题都不知道怎么找,到最后大概率是一团乱麻。你拿widows、Linux这种,带API甚至根本不用管底层的来对比,我感觉不是很恰当。

点评

“再加一层OS,出问题都不知道怎么找”,关键是什么样的“OS” (1)其实使用C51就有好几种很简单RTOS框架可以使用。 (2)即使不用RTOS这种OS框架,对于裸机编程,用计算机操作系统术语来说,从“main”函数开始的  详情 回复 发表于 2024-3-18 20:16
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:418
  • 最近打卡:2025-05-04 00:25:16
已绑定手机

34

主题

2097

回帖

2212

积分

荣誉版主

积分
2212
发表于 2024-3-18 19:54:13 | 显示全部楼层
fei*** 发表于 2024-3-18 19:41
既然他问出了跑裸机和跑OS那种主流这个问题,还说自己是初学者,那我只能认为他是刚接触单片机的小白,项 ...

既然都圈定范围是C51了,那芯片配置都不可能太高,优先推荐裸机就可以了,中断、状态机、DMA用的好的话,即使挂很多外设也能流畅并发,要想发挥芯片大部分的潜能,非裸机莫属。
玩OS推荐那些选择内置了Systick定时器的MCU,否则意义不是很大。
睁开眼睛做场梦~~~
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看I
  • 打卡总天数:16
  • 最近打卡:2025-04-30 08:41:32

105

主题

1215

回帖

1万

积分

荣誉版主

积分
12884
发表于 2024-3-18 20:16:27 | 显示全部楼层
fei*** 发表于 2024-3-18 19:41
既然他问出了跑裸机和跑OS那种主流这个问题,还说自己是初学者,那我只能认为他是刚接触单片机的小白,项 ...

“再加一层OS,出问题都不知道怎么找”,关键是什么样的“OS”

(1)其实使用C51就有好几种很简单RTOS框架可以使用。
(2)即使不用RTOS这种OS框架,对于裸机编程,用计算机操作系统术语来说,从“main”函数开始的程序被称为“后台任务”,每一个中断服务程序ISR被称为一个“前台任务”。因此裸机编程只要包含中断程序,本身就是属于“前后台多任务OS”,所以使用C51裸机编程仍然使用了“OS框架”。
(3)本论坛里已经有了两个裸机编程的“前后台多任务OS”框架介绍
        一个是STC官方库函数使用的框架,
        一个是坛友写的“最佳入门多线程示例讲解-核心代码简单易懂,
         仅44行代码 ”(https://www.stcaimcu.com/forum.p ... 4197&extra=page%3D1),
        大家可以去看看


回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:259
  • 最近打卡:2025-05-03 20:32:29
已绑定手机

17

主题

122

回帖

1311

积分

金牌会员

STC-镇江-老蔡

积分
1311
发表于 2024-3-19 03:17:49 | 显示全部楼层
杨*** 发表于 2024-3-18 20:16
“再加一层OS,出问题都不知道怎么找”,关键是什么样的“OS”

(1)其实使用C51就有好几种很简单RTOS框 ...

你的回答我听懂了,谢谢大佬
平安快乐
回复 支持 反对

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2025-5-4 15:04 , Processed in 0.137667 second(s), 120 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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