前言 放假啦!刚开始的几天在家里面自我隔离甚是无聊,再加上原本阿里云的服务器到期了,于是笔者打算一年一度的装修一下自己的博客。 主要的更新有那么几个: 更换博客系统为WordPress(博客的最终归宿还是WP; 使用Tokin的新主题:Wing,谢谢大佬; 部署GitBook作为未来可能会有的系统化笔记页面; 本文记录的就是在服务器上实现自动化部署…
前言 所谓前言,不过是一些没营养的废话而已,不感兴趣的同学可以直接跳到后面感兴趣的内容来看,当然也可以选择直接退出文档并感叹又被这可恶的老学长浪费了自己人生中宝贵的一分钟(不过大家真的这么选择了老学长会很伤心的T_T 最近几天看到越来越多的小朋友已经开始学习C语言了,作为一个大学生涯已经年过半百的老头,笔者表示十分欣慰,但是也在暗自感慨自己已经被卷…
前言 笔者假期刚开学没几天,现在处于一个比较闲的状态。 假期简单学习了一下ARM汇编相关内容,目的是写一个简单的RTOS,但是这个项目其实只有保存上下文的部分使用到了ARM汇编,于是打算写写博客来沉淀一下假期学到的东西。 单片机的启动过程一直是笔者十分感兴趣的话题,故借着这个机会简单分析一下单片机的启动过程。由于笔者知识浅薄,分析的过程必定有所纰漏…
书接上篇:来学学ARM汇编----基本知识(上) 通过之前的学习,笔者已经对于Armv7-M体系架构有了一些大致的了解,接下来就开始真正的Arm汇编的指令的学习了。 还是那句话,开发者的学习应该追根溯源,故这部分内容的学习是基于Arm编译器armasm用户手册进行的。 源代码行语法 每行汇编代码都具有如下的一般格式: {symbol} {instr…
简介 时间片轮询是裸机开发的过程中十分常用的一种程序架构,其主要的思想是将单个定时器的时间时分复用,可以同时处理多种不同时间间隔的定时任务。 笔者在很久之前的电赛总结的文章中就曾经说过,自己实现了一个时间片轮询架构并且用在了电赛中,后续又为其添加了一些常用的功能。但是前段时间笔者自行审视的时候发现曾经架构中其实存在一些比较严重的问题,于是将该架构进…
笔者落笔此篇的时间是7.1,写上一篇的时间到现在好巧不巧,刚好是一个月。 一个月时间真的发生了一堆怪怪的破事,首先辛苦读者听笔者一顿吐槽好了: 现在写这篇文章的时候笔者正坐在外面的出租屋里面,当然不是因为笔者毕业了、成为社会人了,而是这个暑假学校方面并不想让我们本科生留在学校。经过一段时间的“钉子户生活”,本来形式已经开始向可以留校的好的方向发展了…
契机 笔者落笔的日子是6.1,这篇文章还不知道什么时候能发出去。不得不说这个时间是很尴尬的,主要是有两点: 博客鸽了很久了 6.4笔者就有一门期末考试,现在还没开始复习 但是笔者就是不想复习,毕竟DDL越近复习起来越刺激嘛(划掉 笔者这学期有微机原理的课程,在其中学习x86汇编,但是似乎身边每一个搞嵌入式的朋友都会吐槽这门课:为什么教x86汇编而不…
伴随着愚人节,快乐的四月就这么开始了。 依稀记得四月初,社团的小伙伴问我有没有看过四月是你的谎言,我当时吐槽道:“世界上面对四月大概有两种人:一种人是看过四谎的,每到四月就会整个人蒙上一层忧伤的滤镜,然后一看到花或听到音乐就在心里轻声嘀咕着,没有你的那个四月又来了;另一种是没看过四谎的,他们有着充实的现实生活,会在愚人节开开无所谓的玩笑,会成群结队…
笔者不才,寄存器的结构体映射这个名字其实是笔者自己造出来的,似乎也没有找到什么关于这方面的官方说法。 先解释一下这个名字吧,以免读者产生奇怪的误解: 寄存器的结构体映射描述的是一种通过修改结构体的值实现修改寄存器内容的关系。 而这篇文章中试图解释的问题是:HAL库如何实现从寄存器到结构体的映射。 一些基础知识 C的指针 指针,一个讨论起C语言恒久离…
简介 LED、按键等这些东西是搞嵌入式的每个人都一定会打交道的东西,笔者当然也不例外。LED可以上电即用,但是按键相对而言就要复杂一些了。 众所周知,按键是有抖动的,所以在使用过程中不得不进行消抖操作,如:加电容进行硬件消抖以及延时进行软件消抖等。 但是,硬件消抖这件事不得不在画PCB时费心费力(虽然也没有很费心),而延时的消抖方式让MCU有了一段…