OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
12
返回列表 发新帖
楼主: safu枫

在51和STM32单片机上使用面向对象的编程,第一篇:炫酷地点亮一盏LED灯。。持续更新!!

[复制链接]

8

主题

61

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
235
金钱
235
注册时间
2018-5-2
在线时间
83 小时
 楼主| 发表于 2018-6-21 09:44:58 | 显示全部楼层
BD7JHH 发表于 2018-6-20 11:50
楼主的程序我下载之后, 编译只提了3个警告, 然后写到开发板上, 发现这个灯只能闪个几十次, 然后就常亮 ...

有一个 参数, 可以指定闪烁次数, 或者是无限闪烁
正点原子逻辑分析仪DL16劲爆上市
回复 支持 反对

使用道具 举报

7

主题

98

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
389
金钱
389
注册时间
2012-3-4
在线时间
69 小时
发表于 2018-7-27 15:05:06 | 显示全部楼层
确实不错,最近1年一直在研究 c相关的编程思想。这种思路很值得提倡 尤其在做大的项目,或者设备种类比较多 功能相似的项目时候 开发效率很高很多。
回复 支持 反对

使用道具 举报

9

主题

796

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
2038
金钱
2038
注册时间
2017-8-2
在线时间
522 小时
发表于 2018-7-27 16:04:39 | 显示全部楼层
我觉得楼主写的东西      单片机小白看了会:???         刚入职:       入职好多年:
猪猪熊呢?
回复 支持 反对

使用道具 举报

8

主题

61

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
235
金钱
235
注册时间
2018-5-2
在线时间
83 小时
 楼主| 发表于 2018-8-6 17:54:51 | 显示全部楼层
323232 发表于 2018-7-27 16:04
我觉得楼主写的东西      单片机小白看了会:???         刚入职:       入职好多年:

....我也才入职一年。
回复 支持 反对

使用道具 举报

8

主题

61

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
235
金钱
235
注册时间
2018-5-2
在线时间
83 小时
 楼主| 发表于 2018-8-6 17:55:10 | 显示全部楼层
323232 发表于 2018-7-27 16:04
我觉得楼主写的东西      单片机小白看了会:???         刚入职:       入职好多年:

....我也才入职一年。有很多东西需要和大家一起交流
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手入门

积分
14
金钱
14
注册时间
2018-11-14
在线时间
3 小时
发表于 2018-11-15 09:40:49 | 显示全部楼层
楼主能不能说下如果是51单片机的话,这些代码如何修改?谢谢。
回复 支持 反对

使用道具 举报

8

主题

61

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
235
金钱
235
注册时间
2018-5-2
在线时间
83 小时
 楼主| 发表于 2018-12-10 09:28:10 | 显示全部楼层
zhandi 发表于 2018-11-15 09:40
楼主能不能说下如果是51单片机的话,这些代码如何修改?谢谢。

一样的,只不过有些单片机RAM极小,可以简化一些东西而已,大体思路都是一样的
回复 支持 反对

使用道具 举报

0

主题

5

帖子

0

精华

初级会员

Rank: 2

积分
51
金钱
51
注册时间
2018-1-28
在线时间
14 小时
发表于 2019-5-20 08:44:37 | 显示全部楼层
喜欢楼主的编程思想 会一直关注
回复 支持 反对

使用道具 举报

2

主题

7

帖子

0

精华

新手上路

积分
44
金钱
44
注册时间
2019-4-18
在线时间
10 小时
发表于 2019-11-23 01:13:41 来自手机 | 显示全部楼层
支持楼主,我最近也在研究这个东西,一直觉自己的代码不够美感觉乱糟糟的,而最近刚好想学设备框架下的驱动编写,看了rtt的驱动代码刚开始很懵逼,不知道为何要写得那么绕,这样写的好处是什么,于是就带着疑问去网上查,原来是采用了这种类oop的设计模式。稍微看了下c++ 的面相对象程序,用C模拟是有点麻烦,但不可否认它是很好的设计思想,要不然那些rtt,linux的驱动代码就不会用这种设计模式了。今晚无意间看到你的帖子(因为我在查这方面的资料),帖子写得很棒,通过你的帖子又认识到了一本有用的书《C现代编程》非常的感谢。从51->画板->stm32->stm8->arm汇编->动手写rtos->最近的linux,一路走过来都是采用的面向过程设计,因为从来都没想过oop也能用到单片机开发中来,所以之前索性不学面向对象语言,觉得根本就用不到学来干嘛,甚至是排斥面向对象语言,通过看别人的驱动程序,我觉得这种不是语言,而是一种思想,一种解决问题的方法。自己工作了1年多了,刚开始工作的时候发现程序组织的很差,无意间发现了状态机,后来一直以状态机写裸机程序,这次的oop应该又是一次提升,感谢。希望能加楼主好友,请教、交流这种编程思想。
回复 支持 1 反对 0

使用道具 举报

0

主题

2

帖子

0

精华

新手入门

积分
14
金钱
14
注册时间
2020-5-30
在线时间
3 小时
发表于 2020-7-5 21:31:17 | 显示全部楼层
shikihane 发表于 2018-5-3 17:44
以前年轻的时候,和楼主一样是整天喊着OO大法好,一天不OO,浑身难受。现在是忠实的反OO主义,尤其是用C写O ...

C的精髓在linux内核里,只能实现功能而不能复用的代码的写法是恶性循环。
回复 支持 反对

使用道具 举报

6

主题

43

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
294
金钱
294
注册时间
2013-9-9
在线时间
92 小时
发表于 2020-8-10 19:20:14 | 显示全部楼层
不错的想法,值得借鉴
回复 支持 反对

使用道具 举报

1

主题

2

帖子

0

精华

新手入门

积分
17
金钱
17
注册时间
2020-2-1
在线时间
3 小时
发表于 2021-3-13 14:43:57 | 显示全部楼层
RT-thread的源码就是类似这种思想的实现,支持楼主。
回复 支持 反对

使用道具 举报

1

主题

19

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
256
金钱
256
注册时间
2013-1-21
在线时间
61 小时
发表于 2024-12-6 22:28:58 来自手机 | 显示全部楼层
safu枫 发表于 2018-12-10 09:28
一样的,只不过有些单片机RAM极小,可以简化一些东西而已,大体思路都是一样的

51的程序源码有吗?栈比较小,不会有问题吧?
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-1-19 02:23

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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