点一个LED
1.我找了一个比较便宜的硬件STM32F103c8。
2.新建一个项目。
3.因为每一个开发板的原理图是不一样的,所以看原理图找出LED灯,然后在软件上勾选。
4.然后配置一下软件和启动k5
K5会自动的启动
5.在主函数里面添加指令
2024年04月17日
1.我找了一个比较便宜的硬件STM32F103c8。
2.新建一个项目。
3.因为每一个开发板的原理图是不一样的,所以看原理图找出LED灯,然后在软件上勾选。
4.然后配置一下软件和启动k5
K5会自动的启动
5.在主函数里面添加指令
2024年04月17日
写JAVA代码的同学都知道,JAVA里的锁有两大类,一类是synchronized锁,一类是concurrent包里的锁(JUC锁)。其中synchronized锁是JAVA语言层面提供的能力,在此不展开,本文主要讨论JUC里的ReentrantLock锁。
2024年04月17日
linux高端内存中的临时内存区为固定内存区的一部分, 对于固定内存在linux内核中有下面描述
x86armarm64arch/x86/include/asm/fixmap.h?v=4.7, line 67arch/arm/include/asm/fixmap.h?v=4.7, line 11arch/arm64/include/asm/fixmap.h?v=4.7, line 36
2024年04月17日
互斥体概述
信号量是在并行处理环境中对多个处理器访问某个公共资源进行保护的机制,mutex用于互斥操作。 信号量的count初始化为1,down()/up()也可以实现类似mutex的作用。
2024年04月17日
现代各种处理器采用了许多不同的技术,但从物理结构上,CPU的层次结构却可以被统一的表示如下:
最底层为超线程层,此技术为Intel公司研发,目前在ARM等其他架构处理器中并未采用。超线程技术充分利用空闲CPU资源,在单一时间内可以让一个物理核心同时处理两个线程的工作。因此,在开启超线程的4物理核心的机器上,往往可以看到存在有8个逻辑CPU。
2024年04月17日
5.1. RCU 时钟介绍
众所周知,时钟是MCU能正常运行的基本条件,就好比心跳或脉搏,为所有的工作单元提供时间基数。时钟控制单元提供了一系列频率的时钟功能,包括一个内部RC振荡器时钟(IRC)、一个外部高速晶体振荡器时钟(HXTAL)、一个外部低速晶体振荡器时钟(LXTAL)、一个HXTAL时钟监视器、时钟预分频器、时钟多路复用器和时钟门控电路等。
2024年04月17日
在嵌入式系统编程中不管是内核的驱动程序还是应用程序的编写,涉及到大量的预处理与条件编译,这样做的好处主要体现在代码的移植性强以及代码的修改方便等方面。因此引入了预处理与条件编译的概念。在C语言的程序中可包括各种以符号#开头的编译指令,这些指令称为预处理命令。预处理命令属于C语言编译器,而不是C语言的组成部分。通过预处理命令可扩展C语言程序设计的环境。预处理的行为是由指令控制的。这些指令是由#字符开头的一些命令。