logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

深入解析CAN总线:从原理到应用

•CAN总线()控制器局域网总线•CAN总线是由BOSCH公司开发的一种简洁易用、传输速度快、易扩展、可靠性高的串行通信总线,广泛应用于汽车、嵌入式、工业控制等领域•CAN总线特征:1.两根通信线(CAN_HCAN_L),线路少2.差分信号通信,抗干扰能力强3.高速CANISO11898):4.低速CANISO11519):5.异步,无需时钟线,通信速率由设备各自约定6.半双工,可挂载多设备,多设

文章图片
#嵌入式硬件#单片机#stm32
单片机中的 Flash、RAM、堆和栈详解:它们都存放什么?彼此有什么关系?

在嵌入式开发中,理解STM32单片机的内存结构对程序设计和系统稳定性至关重要。STM32F103系列包含Flash、RAM、堆(Heap)和栈(Stack)等存储器资源。Flash是非易失性存储器,用于存储程序代码和常量,地址从0x08000000开始,大小为64KB。RAM是易失性存储器,用于运行时数据存储,地址从0x20000000开始,大小为20KB,分为.data、.bss、堆和栈等段。堆

文章图片
#stm32#c语言#嵌入式硬件 +1
Linux ——条件变量

条件变量核心价值:解决 “线程等待条件” 的问题,避免无效轮询,提升 CPU 利用率;核心函数;(必带互斥锁);(唤醒一个)/(唤醒所有);;关键规则条件变量必须和互斥锁配合使用;条件判断用while而非if(解决虚假唤醒);典型场景:生产者 - 消费者模型、线程池、任务队列等;核心逻辑:加锁→判断条件→wait(释放锁 + 阻塞)→被唤醒→重新加锁→再次判断条件→执行逻辑→解锁 + 唤醒。

#linux#开发语言
Linux 进程通信——信号量

核心定位:有名信号量是跨进程同步 / 互斥的轻量级方案,通过 “名称” 实现内核级共享;核心操作sem_open(创建 / 打开)→sem_wait(阻塞申请)/(非阻塞申请)→sem_post(释放唤醒)→sem_closesem_unlink(清理);关键参数:初始值 0(同步)/1(互斥),名称以开头;避坑核心:编译链接pthread+rt,处理sem_wait的信号中断,手动清理信号量避免

#linux
Linux 进程核心知识

execl()成功后,子进程代码被完全替换,原代码后续逻辑永不执行;僵尸进程的核心解决方式是父进程调用wait()waitpid(),而非等待系统自动释放;WNOHANG是实现 “非阻塞监控” 的关键,无此参数则父进程会阻塞到子进程退出;fork()创建的是独立进程(非线程),父子进程有独立 PID 和资源,线程则共享进程资源;父进程的main()逻辑(如监控循环)会持续执行,不受子进程execl

#linux
单片机中的 Flash、RAM、堆和栈详解:它们都存放什么?彼此有什么关系?

在嵌入式开发中,理解STM32单片机的内存结构对程序设计和系统稳定性至关重要。STM32F103系列包含Flash、RAM、堆(Heap)和栈(Stack)等存储器资源。Flash是非易失性存储器,用于存储程序代码和常量,地址从0x08000000开始,大小为64KB。RAM是易失性存储器,用于运行时数据存储,地址从0x20000000开始,大小为20KB,分为.data、.bss、堆和栈等段。堆

文章图片
#stm32#c语言#嵌入式硬件 +1
深入解析CAN总线:从原理到应用

•CAN总线()控制器局域网总线•CAN总线是由BOSCH公司开发的一种简洁易用、传输速度快、易扩展、可靠性高的串行通信总线,广泛应用于汽车、嵌入式、工业控制等领域•CAN总线特征:1.两根通信线(CAN_HCAN_L),线路少2.差分信号通信,抗干扰能力强3.高速CANISO11898):4.低速CANISO11519):5.异步,无需时钟线,通信速率由设备各自约定6.半双工,可挂载多设备,多设

文章图片
#嵌入式硬件#单片机#stm32
    共 13 条
  • 1
  • 2
  • 请选择