自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(4)
  • 收藏
  • 关注

原创 关于嵌入式软件架构的理解

换句话说,应用程序根本不必知道,也不必关心,当前运行的是什么硬件,应用程序只需要关心抽象层的API是什么样的。新的硬件驱动程序要做的,仅仅是满足接口的要求而已。抽象层有很多种,比如硬件抽象层(HAL)、设备抽象层(DAL),操作系统抽象层(OSAL),网络抽象层,文件系统抽象层,Flash抽象层(RT-Thread里就有这个)等等。这意味着如果我们更改硬件,则只会更改硬件相关的模块(驱动代码),而不是整个代码库。,或者一套硬件迁移到另一套硬件,应用层代码不必更换。对谁进行抽象,就会建立这个东西的抽象层。

2024-08-19 23:26:13 157

原创 关于使用硬件I2C时,为什么不需要开启AFIO时钟

(Alternate Function I/O Event Control Register)寄存器主要用于配置和控制某些特定的事件输出,例如用于触发DMA传输、定时器更新事件等,并不需要用于标准I2C通信的配置。由手册可以看到,当对寄存器AFIO_EVCR,AFIO_MAPR和AFIO_EXTICRX进行读写操作前,应当首先打开AFIO 的时钟。I2C通信主要涉及到GPIO引脚的复用配置,以及I2C外设本身的初始化和控制,而。2、既然开启GPIO的复用功能,为何不用开启AFIO时钟?

2024-08-18 11:14:40 433

原创 STM32开漏输出为什么既能输入又能输出?

如图,便是推挽输出的接线图,通过导通P-MOS输出高电平,导通N-MOS输出低电平。注意:P-MOS和N-MOS不能同时接通,否则引起短路。这种模式输出的电平驱动能力强。

2024-08-03 21:26:35 643

原创 stm32外部中断

外部中断实操。

2024-07-31 16:30:32 412

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除