嵌入式大杂烩
本博客内容会同步至我的微信公众号【嵌入式大杂烩】欢迎关注!关注并回复【1024】送你一份学习资料包!
【RT-Thread笔记】内核基础 【RT-Thread笔记】内核基础
最近在工作中有用到多任务系统,趁热进行学习一下。这里我选择国产实时操作系统RT-Thread进行学习,因为现在很火呀。之前已经有简单地过了一遍RT-Thread,奈何学过地知识一旦不用,就会很容易地忘掉,所以应当多做一些学习笔记~ RT-T
2019-08-30
C语言代码优化的一些经验及小技巧(三) C语言代码优化的一些经验及小技巧(三)
循环展开简单的循环可以展开以获取更好的性能,但需要付出代码体积增加的代价。循环展开后,循环计数应该越来越小从而执行更少的代码分支。如果循环迭代次数只有几次,那么可以完全展开循环,以便消除循坏带来的负担。例如: for(i=0; i<3
2019-08-29
C语言代码优化的一些经验及小技巧(二) C语言代码优化的一些经验及小技巧(二)
函数相关1、参数的书写要完整参数的书写要完整,不要贪图省事只写参数的类型而省略参数名字。如果函数没有参数,则用void填充。例如: voidSetValue(intwidth,intheight); // 良好的风格 voidSetValu
2019-08-28
程序的组成、存储与运行 程序的组成、存储与运行
一般 MCU 包含的存储空间有:片内 Flash 与片内 RAM, RAM 相当于内存, Flash 相当于硬盘。编译器会将一个程序分类为好几个部分,分别存储在 MCU 不同的存储区。 一、编译过程之前分享过C程序的编译过程的笔记:C程序的
2019-08-28
C语言代码优化的一些经验及小技巧(一) C语言代码优化的一些经验及小技巧(一)
一、变量与值得比较1、布尔变量与零值的比较不可将布尔变量直接与 TRUE、 FALSE或者 1、 0进行比较 。据布尔类型的语义,零值为“ 假”(记为 FALSE),任何非零值都是“ 真”(记为TRUE)。 TRUE的值究竟是什么并没有统一
2019-08-27
【STM32笔记】什么是通讯? 【STM32笔记】什么是通讯?
一、什么是串行通讯与并行通讯?按数据传送的方式,通讯可分为串行通讯与并行通讯,串行通讯是指设备之间通过少量数据信号线(一般是 8 根以下),地线以及控制信号线,按数据位形式一位一位地传输数据的通讯方式。 而并行通讯一般是指使用 8、 16、
2019-08-23
【C语言笔记】goto语句 【C语言笔记】goto语句
关于C语言的goto语句存在很多争议,很多书籍都建议“谨慎使用,或者根本不用”。这里先不做过多的讨论,存在即合理,既然是C语言中的一个知识点,我们还是有必要学会使用。先看一些goto如何用: 一、goto的基本语法goto语句有两部分:go
2019-08-22
【STM32笔记】串口空闲中断接收不定长数据(DMA方式) 【STM32笔记】串口空闲中断接收不定长数据(DMA方式)
在使用STM32的串口接收数据的时候,我们常常会使用接收中断的方式来接收数据,常用的是RXNE。这里分享另一种接收数据的方式——IDLE中断(PS:本文的例子运行在STM32F103ZET6上)。 一、IDLE中断什么时候发生?IDLE就是
2019-08-18
替代串口打印,嵌入式中另一种打印调试的方法 替代串口打印,嵌入式中另一种打印调试的方法
一、前言在我们的嵌入式开发中,常常把printf重定向到MCU的串口外设,再配合上位机界面软件,通过打印调试信息的方式来调试我们的嵌入式软件。 此处,我们介绍另一种打印调试的方法——SEGGER 的RTT 。RTT全称是Real Time
2019-08-16
【工具】这个神器可以提取你代码中的关键信息生成技术文档 【工具】这个神器可以提取你代码中的关键信息生成技术文档
一、前言以前,我们学C语言的时候,多多少少都查过一些标准库函数吧。这里介绍查找C语言的标准库函数的两种方法:一种方法是直接到http://www.cplusplus.com这个网站上去查看: 这里覆盖了C语言标准库中的所有函数,给出了每个
2019-08-13
【C语言笔记】assert怎么用? 【C语言笔记】assert怎么用?
一、什么是assert()?编写代码时,我们总是会做出一些假设,断言(assert)就是用于在代码中捕捉这些假设,可以将断言看作是异常处理的一种高级形式。 断言表示为一些布尔表达式,程序员相信在程序中的某个特定点该表达式值为真。可以在任何时
2019-08-12
【C语言笔记】联合体 【C语言笔记】联合体
一、什么是联合体?在C语言中,变量的定义是分配存储空间的过程。一般的,每个变量都具有其独有的存储空间,那么可不可以在同一个内存空间中存储不同的数据类型(不是同事存储)呢? 答案是可以的,使用联合体就可以达到这样的目的。联合体也叫共用体,在C
2019-08-01
3 / 10