logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

一、驱动基础

驱动的核心作用是让硬件动起来,它是底层硬件和上层软件之间的桥梁,直接与硬件打交道。在无操作系统(裸机)的场景中,驱动开发直接通过操作寄存器控制硬件,比如单片机控制 LED 灯的程序,无需额外的系统框架。在Linux 系统中,驱动开发需要遵循系统提供的驱动框架,为应用程序提供统一的调用接口,整体架构为「应用→操作系统→驱动→硬件」。字符设备:需按串行顺序访问的设备,如鼠标块设备:支持任意顺序访问的存

文章图片
#嵌入式硬件#linux
FreeRTOS工程项目实践

任务之间、中断与任务间,可以使用全局变量和队列进行信息传递;消息队列可以方便地阻塞任务,但是时间和空间开销比全局变量大;消息队列在任务内和中断内要使用不同的函数;为节省消息队列开销,可以在保证数据完整性的情况下传递指针;队列大小要依据实际情况选择,太小会丢数据,太大会浪费内存。本质特性:信号量的本质是消息队列,但其中的元素均为空元素,不占用实际存储空间。核心用途:同步:协调任务的执行时机(解决 “

文章图片
#嵌入式硬件#单片机#c语言 +1
FreeRTOS工程项目实践

任务之间、中断与任务间,可以使用全局变量和队列进行信息传递;消息队列可以方便地阻塞任务,但是时间和空间开销比全局变量大;消息队列在任务内和中断内要使用不同的函数;为节省消息队列开销,可以在保证数据完整性的情况下传递指针;队列大小要依据实际情况选择,太小会丢数据,太大会浪费内存。本质特性:信号量的本质是消息队列,但其中的元素均为空元素,不占用实际存储空间。核心用途:同步:协调任务的执行时机(解决 “

文章图片
#嵌入式硬件#单片机#c语言 +1
到底了