GitHub上一个高star的嵌入式C编码规范
在逛GitHub时,发现一篇嵌入式C编码规范,写的比较详细。在学习的同时,给翻译了下加深学习。 本文翻译自:Recommended C style and coding rules 中文英文推荐的 C 风格和编码规则本文描述了 Tilen MAJERLE 在他的项目和库中使用的 C 代码风格。 最重要的一条规则让我们从 GNOME developer 站点的引用开始。 编写代码时最重要的一条规则是:检查周围的代码并尝试模仿它。 作为一个维护者,如果收到一个明显与周围代码风格不同的补丁,这是是令人沮丧的。这是不尊重人的,就像有人穿着泥泞的鞋子走进一间一尘不染的房子一样。 因此,无论本文档推荐什么,如果已经编写了代码,并且你正在修补它,请保持它当前的样式一致,即使它不是你最喜欢的样式。 一般规则这里列出了最明显和最重要的一般规则。在你继续阅读其他章节之前,请仔细检查它们。 使用 C99 标准 不使用制表符,使用空格代替 每个缩进级别使用 4 空格 在关键字和左括号之间使用 1 空格 1234567891011/* OK */if (condition)while (...
大学生体测评分标准(附评分表)|体测成绩怎么算?多少分及格
大学生体测主要从身体形态、身体机能和身体素质等方面综合评定学生的体质健康水平。 目前最新的大学生体测评分标准是基于2014年修订的《国家学生体质健康标准》,总分由标准分与附加分构成,满分为120分。标准分由各单项指标得分与权重乘积之和组成,满分为100分。附加分根据实测成绩确定,即对成绩超过100分的加分指标进行加分,满分为20分;其中男生加分项目为引体向上和1000米跑,女生加分项目为一分钟仰卧起坐和800米跑,各指标加分幅度均为10分。 体测多少分及格根据学生学年总分评定等级:90.0分及以上为优秀,80.0~89.9分为良好,60.0~79.9分为及格,59.9分及以下为不及格。 学生测试成绩评定达到良好及以上者,方可参加评优与评奖;成绩达到优秀者,方可获体育奖学分。测试成绩评定不及格者,在本学年度准予补测一次,补测仍不及格,则学年成绩评定为不及格。 大学体测项目与权重 单项指标 权重(%) 体重指数(BMI) 15 肺活量 15 50米跑 20 坐位体前屈 10 立定跳远 10 引体向上(男)/1分钟仰卧起坐(女) 10 1...
一键升级npm依赖包到最新版本教程
有时候我们需要将项目中的 npm 依赖包升级到最新版本,一个一个手动检查太麻烦了,这时候可以使用 npm-check-updates 工具来一键升级。 1. 全局安装npm-check-updates1npm install -g npm-check-updates 2. 检查版本在 package.json 所在目录(根目录)执行 ncu,可以查看当前的依赖版本和最新的依赖版本: 1ncu 输出示例: 12345678910Checking E:\GitHub\blog\package.json[====================] 21/21 100% hexo ^6.3.0 → ^7.1.1 hexo-renderer-marked ^6.0.0 → ^6.2.0 hexo-renderer-stylus ^2.0.1 → ^3.0.1 hexo-theme-butterfly ^4.7.0 → ^4.13.0 hexo-theme-landscape ^0.0.3 → ^1.0.0Run ...
Windows任务计划程序如何定时执行Python程序
引言在 Windows 电脑上如果要实现定时执行 Python 程序,可以借助 Windows 任务计划程序。它是 Windows 操作系统自带的一个功能,可以让您在指定的时间或事件触发时自动执行某些操作。例如,您可以使用任务计划程序来定时执行 Python 脚本,或者在系统启动时自动打开某个程序。任务计划程序可以让您更加方便地管理您的计算机,并且可以帮助您提高工作效率。 使用 Windows 任务计划程序首先在 Windows 任务栏搜索任务计划程序,并打开。 添加一个新的定时计划任务 输入任务名称及描述名称必填,描述可以选择是否填写。这里名称填写阿里云盘签到。 设置任务触发周期可以选择每天、每周、每月等。 点击下一步,具体设置触发时间,如下图设置,从 2023.4.2 号开始,晚上 8 点执行,也就是每天晚上 8 点开始执行这个任务计划。 设置任务要执行的动作选择启动程序。点击下一步,启动程序需要填写以下参数: 程序或者脚本(必填):指的是任务需要执行的程序或者脚本。 添加参数(可选):指的是上面的程序或者脚本要添加的参数。 起始于(可选): 指的是上面的程序或者脚...
香橙派迁移系统到新的SD卡
前言刚开始用香橙派的时候,用的是一个 16G 的 SD 卡,但随着系统上装的软件越来越多,16G 的空间明显不够用了,于是我打算扩容一下,将 16G 的 SD 卡更换为 64G。但如果换一张大的 SD 卡,重新装系统,装软件、配置环境这些就比较麻烦了,因此考虑将系统迁移,以下方法适用于香橙派以及树莓派。 迁移系统 准备一张新的 SD 卡,一个 USB 读卡器。 空间大于 64G 的 SD 卡一般默认是exFAT格式,而香橙派不识别exFAT格式,处理方法将 SD 卡格式化为FAT32格式。 Windows 系统格式化大于 32G 的 U 盘或者内存卡,只能选择NTFS、exFAT,无法直接格式化为FAT32格式。这里使用DiskGenius 来格式化 64G 的 SD 卡,具体方法今天先不介绍。 启动香橙派,利用读卡器把新 SD 卡插入树莓派 USB 口。 在命令行输入df -h,查看 SD 卡是否识别。 1234567891011121314root@orangepi5:~# df -hFilesystem Size Used Avail Use% Mou...
教你1秒使用ChatGPT中文版无需账号
ChatGPT 是由 OpenAI 开发的一款基于自然语言处理技术的聊天机器人。它通过自动分析用户发言,从语义上理解用户想表达的意思,并自动生成回复。ChatGPT 不仅可以进行对话,还可以解答所提的问题、编写邮件、视频脚本、文案、翻译,甚至还能编写程序。可以说它是无所不能!ChatGPT 可以通过丰富多样的语句元素进行快速构建出多样化的问答模型,并实现自我学习,累积知识,越用越聪明。 ChatGPT最近霸屏了,但想要用上ChatGPT,很多人卡在注册账号这一步。 其实,不注册也是可以体验ChatGPT的强大功能的。 今天给大家推荐几个ChatGPT国内中文版,可快速体验ChatGPT,值得称赞的是它们不需要注册、不需要登录,打开即用。亲测可用,文末可直接获取链接。 https://xc.com/ https://chat.forchhuoange.cn/ https://aicodehelper.com/chat http://chat.h2ai.cn/home 最新可用国内版网站,持续更新中……
飞书机器人搭建教程
前言飞书允许用户在群组中创建自定义机器人,值得称赞的是,飞书个人账号即可创建机器人,而不像其它的还需要注册一个企业,进行认证等一系列复杂操作后才可以使用机器人。在飞书创建机器人后,在其它渠道可通过 Webhook 的方式将消息发送到该群组中。 Webhook 即网络钩子,也称为用户自定义 HTTP 回调函数(user-defined HTTP callbacks),通常用于监听某些行为事件,当事件触发时会向用户指定的目标地址发送信息。飞书的机器人本质上也就是提供了一个监听-->通知的行为逻辑,让用户能够将消息转发到飞书上。 创建飞书机器人安装飞书首先去官网下载飞书,进行安装。安装完毕, 创建群聊飞书机器人是在群聊中使用的,因此需要先创建一个群组。 在飞书界面进行点击加号-创建群组。填写群组的相关信息,完成群组创建爱你。 添加自定义机器人在群组界面的设置中点击群机器人然后再点击添加机器人按钮进入到添加界面,选择第一位的「自定义机器人」。 然后填写机器人名称及描述相关信息,即可完成添加。 飞书机器人使用在飞书群组中创建完自定义机器人时,会获得一个webhook地址,类似...
阿里云盘二月签到自动打卡脚本
更新记录 2023.02.23 新增多账号登录,在环境变量 ali_refresh_token 中可添加多个,用逗号 , 分开。 2023.02.21 新增签到提醒,目前支持 PushPlus 和 server 酱(PushPlus 是我常用的推送渠道)。 本地运行,请自行在代码中修改 PUSH_PLUS_TOKEN 以及 PUSH_KEY。 青龙运行在配置中请至少配置一个。 12PUSH_PLUS_TOKEN = '' # push+ 微信推送的用户令牌PUSH_KEY = '' # server 酱的 PUSH_KEY,兼容旧版与 Turbo 版 2023.02.19 阿里云二月签到初版 ...
ESP32系列教程之空中升级OTA
准备工作 配置好开发环境,本文是基于VSCODE + PlatformIO 一个可用于联网的WiFi 编译一个.bin固件升级程序,并上传得到一个http网址。 首先编写一个程序,每隔1s打印hello world!,并生成.bin升级固件。关于如何编译生成.bin升级固件,详见附录。 123456789101112131415#include <Arduino.h>void setup(){ // put your setup code here, to run once: Serial.begin(115200);}void loop(){ // put your main code here, to run repeatedly: Serial.println("hello world!"); delay(1000);} 空中升级OTA代码说明程序流程讲解:开机–>等待联网–>成功联网–>升级。 引入头文件 12#include <WiFi....
ESP32系列教程之SmartConfig智能配网
SmartConfig介绍随着越来越多智能家居设备进入家庭,这些产品大部分都是要连接家庭的WiFi网络的。而WiFi网络的接入需要知道无线路由器的名称(SSID)和密码,绝大多数的智能家居是没有输入接口的,在设备中预先设置WiFi的名称和密码显然是不现实的,这样对于智能家居要连接的无线路由器输入无线路由器的名字和密码就成了一个困难。为了克服这个问题,人们使用了多种配网方法,比如智能家居热点配网,手机热点配网,蓝牙辅助配网等等,这些配网方式都存在一定的不方便之处,而smartConfig配网方式是这些无线配网方式里面比较方便和快捷的配网方式之一。ESP8266、ESP32使用了ESP-Touch协议,它适用于TI开发的SmartConfig技术。SmartConfig又名快连,用于将基于Wi-Fi的新型物联网设备连接到Wi-Fi网络。当前设备在没有和其他设备建立任何实际性通信链接的状态下,一键配置该设备接入WIFI。smartconfig的配网基本原理是通过手机直接发送报文到待配网设备。手机发送UDP广播报文,待配网设备扫描所有的可用无线信道,找到发送smartConfig的报文,...







