硬汉嵌入式论坛

 找回密码
 立即注册
查看: 1442|回复: 5
收起左侧

请教一下硬汉哥如何做到代码整洁的

[复制链接]

39

主题

196

回帖

323

积分

高级会员

积分
323
发表于 2020-10-28 13:01:18 | 显示全部楼层 |阅读模式
我之前自己写的裸机程序,有很多变量可能在不同的.c文件里面调用了。然后程序就变得很难看,在文件开头有很多很多的extern,代码可读性也变得很差。


我在接触了你们的例程后,觉得代码写的很漂亮,但是我之前没接触过程序设计的理念,这些设计框架理解起来比较困难。
请问一下有没有什么讲述代码设计的书籍或者是教程。

我看到了你们的程序中有BSP这个概念,那么又是怎么样把硬件的驱动和业务的逻辑分开来的呢?

请教一下论坛中的各位大佬,不吝赐教,在此先表示感谢。
回复

使用道具 举报

39

主题

196

回帖

323

积分

高级会员

积分
323
 楼主| 发表于 2020-10-28 13:51:59 | 显示全部楼层
其实我看到了硬汉哥的例程之后,又看了我之前写的代码..
我就很想把它们重构了,但是又不知道从何做起,去学习这种编程的思想。

还有顺便问一句 无标1题.png
这里判断灯是否点亮,为什么是去读取ODR的值而不是去读取IDR的值呀

回复

使用道具 举报

39

主题

196

回帖

323

积分

高级会员

积分
323
 楼主| 发表于 2020-10-28 14:16:25 | 显示全部楼层
以bsp_led为例子,如果我要控制不同的电机,有步进的有直流的,但是本质上都是控制GPIO口,那么我在bsp里面要把不同功能的电机驱动分开吗?
还是说都写在一个bsp_motor.c里面,然后再在这个.c文件中,把它们分成是步进的还是直流的。
回复

使用道具 举报

334

主题

2032

回帖

3039

积分

版主

Rank: 7Rank: 7Rank: 7

积分
3039
发表于 2020-10-28 15:13:05 | 显示全部楼层
排版格式方面可以试一下Astyle这个软件。 我在用,还不错。 http://www.armbbs.cn/forum.php?m ... mp;highlight=astyle
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106746
QQ
发表于 2020-10-28 15:15:25 | 显示全部楼层
会飞的猪_2020 发表于 2020-10-28 13:51
其实我看到了硬汉哥的例程之后,又看了我之前写的代码..
我就很想把它们重构了,但是又不知道从何做起,去 ...

因为配置的输出,可以读ODR
回复

使用道具 举报

39

主题

196

回帖

323

积分

高级会员

积分
323
 楼主| 发表于 2020-10-29 11:12:08 | 显示全部楼层
caicaptain2 发表于 2020-10-28 15:13
排版格式方面可以试一下Astyle这个软件。 我在用,还不错。 http://www.armbbs.cn/forum.php?mod=viewthrea ...

不是格式的美化,是那种程序的设计感,把程序分层的思想应该怎么学习。
回复

使用道具 举报

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

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-3 15:46 , Processed in 0.173867 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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