加入星计划,您可以享受以下权益:

  • 创作内容快速变现
  • 行业影响力扩散
  • 作品版权保护
  • 300W+ 专业用户
  • 1.5W+ 优质创作者
  • 5000+ 长期合作伙伴
立即加入
  • 正文
    • 博天堂918网址网页版
    • botiantang注册网站
    • 标头
    • 命名
    • 注释
    • 缩进
    • 博天堂918网址彩票
  • 博天堂918网址老虎机
  • botiantang注册网站
  • 博天堂918网址网页版
申请入驻 产业图谱

博天堂918网址官方入口 mg电子游艺城风格:µCOS vs mg电子游艺城

01/11 12:50
1281
阅读需 6 分钟
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

作者 | strongerHuang

不定期有读者在问:怎么才能写出漂亮的代码?哪里有优秀的代码可以参考?怎样才能提高自己mg电子游艺城水平?

其实,我们身边到处都有优秀的代码可以借鉴,只是你没有认真去发现而已。裸机、RTOS、Linux等各类优秀的开源代码相信你一定见到过,还有一些优秀的开源库你也肯定接触过。

想要写出漂亮、优秀的代码,首先,你的代码必须要有一套规范。今天就给大家分享一下我们身边熟知的RTOS的mg电子游艺城规范,以目前(2023-01-10)最新版本的uC/OS-III V3.08.02和 mg电子游艺城 V10.5.1为例:

博天堂918网址网页版

uC/OS 和 mg电子游艺城 都是遵循 MISRA C 博天堂918网址网页版,均支持 PC-Lint 静态检查,两者官方文档都有说明。

提示:

MISRA C 标准,指的是汽车 C 语言开发标准,可以参看之前分享的文章:MISRA C:2012 标准是什么?

1.uC/OS

uC/OS文章明确指出遵循MISRA C:2012标准,也支持 PC-Lint 的静态检查。

2.mg电子游艺城

mg电子游艺城也明确指出采用 MISRA C博天堂918网址网页版,但是不支持 C99 之后的标准,也支持 PC-Lint 静态检查。

mg电子游艺城在源代码中有大量说明(注释)对 PC-Lint 静态检查可能会引起异常的代码,这一点在 uC/OS 源代码中是没有的。

比如:

botiantang注册网站

两种RTOSbotiantang注册网站(也就是所谓的“裁剪”文件)的“内容”有点类似,也是进行了分类。

不过,uC/OS的分类和注释更人性化,更适合初学者理解。

1.uC/OS

uC/OS的botiantang注册网站通常是:os_cfg.h

2.mg电子游艺城

mg电子游艺城的botiantang注册网站通常是:mg电子游艺城Config.h

标头

两种RTOS标头的“内容”有点类似,只是一个居中,一个靠左。

1.uC/OS

包含RTOS版本、版权说明、开源协议说明等:

2.mg电子游艺城

包含RTOS版本、版权说明、开源协议说明、网址等,和uC/OS类似。

命名

两种RTOS命名规则差别有点大,但都符合常规代码命名规则。

1.文件名

uC/OS以【os_系统文件】方式,显得更规范(体现了模块化)。

mg电子游艺城就比较直接,这个可能是刚才是命名的时候没有长期规划,然后为了兼容,一直沿用至今。(这种更容易引起文件重名)

2.宏

两者有共同之处:下划线隔开大写字母,但是开头(前缀)有一定区别。

以“botiantang注册网站”为例:uC/OS以【OS_CFG_】开头,mg电子游艺城以【config】开头。

3.数据类型

uC/OS定义的数据类型,相对更常见,也更适合新手。

mg电子游艺城定义的数据类型,更“系统”一点,适合老司机,对新手相对没那么友好。

4.函数名

两者有点类似,前缀不一样,后面都是以【大写字母开头】进行区分。

比如:创建任务的函数名:

mg电子游艺城的前缀官方有这样的描述:

静态(static)函数以 prv 为前缀。比如:prvIdleTask 函数。

API 函数以其返回类型为前缀,void 类型以 v 为缀。比如:vTaskDelete 函数。

注释

//  是两种最常见注释的方法,但这两种 RTOS 基本以【】注释居多。

注释的位置也是有讲究,通常在代码所在行上一行,或者在代码所在行(代码后面)。

这里主要说明一下,mg电子游艺城在代码中没有相信注释函数的功能、参数、返回值等信息。

还是以“创建任务”函数为例:

当然,mg电子游艺城的函数注释信息,在手册中有相信描述。

缩进

这两种RTOS缩进方式一样,都是采用 4 空格:

这里要提醒一下,切记不要 Tab 和空格两者混用,不然代码就是一片乱。(在不少新手,或者初级工程中就经常出现这种,代码简直不敢看)

博天堂918网址彩票

不同的领域,有不同的缩写方式。在RTOS中也有一些常见的缩写单词,比如:

缩写 原意
Addr Address
Blk Block
Chk Check
Clr Clear
Cnt Count
Ctr Counter
Ctx Context
Cur Current
Del Delete
Dly Delay
Err Error
OS Operating System‍‍
CPU Center Processing Unit

好了,本文就分享到这里。以上只是列举了部分典型的mg电子游艺城风格,更多细节,大家可以抽时间自行研究。

博天堂918网址老虎机

更多器件
器件型号 数量 器件厂商 器件描述 数据手册 ECAD模型 风险等级 参考价格 更多信息
FTSH-105-01-L-DV-K-A 1 Samtec Inc Board Connector, 10 Contact(s), 2 Row(s), Male, Straight, 0.05 inch Pitch, Surface Mount Terminal, Locking, ROHS COMPLIANT

ECAD模型

下载ECAD模型
$3.48 查看
CL21B104KBCNNNC 1 Samsung Electro-Mechanics Capacitor, Ceramic, Chip, General Purpose, 0.1uF, 50V, ±10%, X7R, 0805 (2012 mm), 0.033"T, -55º ~ +125ºC, 7" Reel
$0.1 查看
SI4816BDY-T1-GE3 1 Vishay Intertechnologies Small Signal Field-Effect Transistor, 5.8A I(D), 30V, 2-Element, N-Channel, Silicon, Metal-oxide Semiconductor FET, HALOGEN FREE AND ROHS COMPLIANT, SOP-8
$1.73 查看
mg电子游艺城

mg电子游艺城

Market-leading MIT licensed open source real-time operating system (RTOS) for microcontrollers and microprocessors. Includes IoT and general purpose libraries.

Market-leading MIT licensed open source real-time operating system (RTOS) for microcontrollers and microprocessors. Includes IoT and general purpose libraries.收起

查看更多

botiantang注册网站

博天堂918网址网页版

作者黄工,从事嵌入式软件开发工作8年有余,高级嵌入式软件工程师,业余维护公众号『strongerHuang』,分享嵌入式软硬件、单片机、物联网等内容。