自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 stm32 lin主机收发程序

使用STM32 HAL库实现LIN(Local Interconnect Network)主机收发程序,需要依赖STM32的UART外设,因为LIN协议是基于UART的。LIN协议通常使用UART的break信号来标识帧的开始。

2024-05-31 22:15:24 546 1

原创 USB学习笔记1 基础知识

USB(Universal Serial Bus)是一种通用的串行总线标准,用于在计算机系统、外部设备和其他数字设备之间传输数据。USB接口为设备提供了供电、数据传输和连接性,成为连接各种外围设备的主流标准。

2024-03-06 14:26:35 1059 1

原创 使用stc32解析OBD数据

解析了新桑塔纳,解析到了方向盘角度,油门踏板深度,4门状态,左右转向灯、倒车灯,远近光等等。3、把接收到的can数据从串口输出,方便在电脑上分析。5、在上位机软件或单片机上过滤,每个筛选出来找信号。2、然后初始化串口1,用来输出接收到的obd数据。4、保存一段收到的报文数据,把pid去重。6、这是我找到的部分信号。

2023-12-25 08:12:18 552

原创 STC8H库函数使用(2)——任务调度主循环

i++)循环每个任务结构体,如果这个任务的定时计数器不是0,定时计数器减1,如果定时计数器为0了,那就把重载计数器的值赋给定时计数器,然后把任务状态置1,表示这个任务需要运行一下了。任务处理函数很好理解,每个人任务循环一边,只要任务状态 Task_Comps[i].Run为1,清零状态位Task_Comps[i].Run = 0,然后运行任务Task_Comps[i].TaskHook()。我们看一下是怎么实现的,首先计数器每ms减1上面说了是通过定时器0中断实现的,我们看一下定时器0的中断函数。

2023-06-20 16:01:00 2201 3

原创 用STC8H单片机外部中断实现增量式编码器完整计数

这是优化后的,通过将编码器状态和计数器封装到结构体中,我们可以更加便捷地管理编码器状态,并且在中断服务程序中也更容易理解代码的逻辑。功能是利用单片机外部中断判断编码器A相上升沿、下降沿时B相状态,避免编码器方向转换时少计数。

2023-06-14 13:15:36 864 1

原创 STC8H库函数使用笔记

如上图,从入口main函数进去后,先调用system_init函数,把需要用到的硬件初始化后,在while循环运行任务调度函数Task_Pro_handler_Callback();GPIO初始化,IO口有四种模式:准双向口(弱上拉),高阻输入,漏极开路,推挽输出。用来初始化定时器,共有5个定时器,这里初始化定时器0,产生1ms的中断,作为任务调度的基准时钟。打开官方的库函数综合例程,里面有4个文件夹,分别是User,APP,Driver,ISR。在这里除了配置输入输出模式外,还可以配置内部上拉电阻,

2022-11-25 20:50:43 2867

原创 51单片机通过中断接收命令

51命令接收

2021-12-03 09:28:52 1190

原创 c语言学习笔记1

staticstatic修饰局部变脸,改变变量的生命周期。修饰全局变量,改变变量的作用域。修饰多c文件的的函数,改变连接属性。

2021-11-25 10:07:49 378

空空如也

空空如也

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

TA关注的人

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