自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(26)
  • 收藏
  • 关注

原创 RTL8305NB从电口模式切换为光口模式

对于RTL8305NB,要从电口模式切换为光口模式,主要操作涉及到PHY page的切换和特定寄存器的配置。

2024-06-25 15:33:48 1021 1

原创 Nand Flash在STM32环境下查坏块及读写

STM32中NAND Flash的坏块检测和使用通常依赖于具体的NAND Flash芯片型号和STM32的硬件接口(如FMC或SPI)。不过,我可以为你提供一个通用的NAND Flash坏块检测和使用的框架,但请注意,你需要根据你所使用的具体NAND Flash芯片的数据手册来填充和修改这些函数。

2024-05-24 17:28:06 719

原创 十六进制数字56转换成0x56,并写入文件

5的字是0x35,你char test[0] = char[0] - 0x30。/* 0-9 减去0x30 A-F 减去0x37。这样56就可以放到一个字节里面成为0x56了。

2024-01-16 18:21:21 615 1

原创 STM32407用汇顶的GT911触摸芯片调试实盘

【代码】STM32407用汇顶的GT911触摸芯片调试实盘。

2024-01-16 13:18:06 1456

原创 c语言中文件读入处理写入实战

第二行和第一行类似,先写一个十六进制的地址,只是地址累加了16,再冒号加空格,两个字节再加上一个空格,两个字节加上一个空格,当处理了十次两个字节后,接分号。这样第二行就完成了,把第二行写入一个新的txt文件。用c语言写个程序,读取input.txt文件,把读取的内容,处理成先写一个十六进制的地址00000000,再冒号加空格,两个字节再加上一个空格,两个字节加上一个空格,当处理了十次两个字节后,接分号。这样第一行就完成了,把第一行写入一个新的txt文件名叫output.txt。

2024-01-16 12:25:15 560

原创 OSSemPend和OSSemPost的区别,并给出使用案例

在上面的例子中,任务1和任务2都会等待信号量sem。当信号量可用时,它们会执行各自的操作,并在操作完成后释放信号量。这样可以确保同一时间只有一个任务能够访问共享资源,避免了竞争条件的发生。信号量sem相当于一个车位,车1和车2轮流使用。1. OSSemPend函数用于等待信号量。它会阻塞当前任务,直到信号量可用或超时。如果信号量可用,则会减少信号量的计数值,并且任务可以继续执行。它会增加信号量的计数值,并且唤醒等待该信号量的任务。如果没有任务等待该信号量,则信号量的计数值会增加,但不会有其他影响。

2024-01-04 11:44:48 1758

原创 以下是一个关于QT学习方法和学习路线图的建议

3. 掌握QT框架:一旦你掌握了C++编程语言的基础知识,你可以开始学习QT框架。你可以学习QT的核心模块,如Qt Core、Qt GUI和Qt Widgets等。5. 深入学习高级主题:一旦你掌握了QT的基础知识和框架,你可以进一步学习一些高级主题,如多线程编程、网络编程和数据库编程等。总之,学习QT需要掌握C++编程语言和QT框架的基础知识,并通过实践项目来提高自己的编程技能。1. 了解基础知识:首先,你需要了解QT的基础知识,包括QT的概念、架构和基本组件等。

2024-01-02 14:51:48 599

原创 (unsigned int)(&(((type *)0)->member)) 的作用

它可以通过给定一个结构体指针和结构体中某个成员的名称,计算出该成员相对于结构体基地址的偏移量,从而实现在双向链表中快速定位结构体的功能。那么,`(unsigned int)(&(((struct student *)0)->age))`就是计算出`age`成员相对于。在这个例子中,`age`成员的偏移量为`24`,因为`id`成员占用了`4`个字节,`name`成员占用了`20`个字节,而`age`成员紧随其后,它的作用是将一个空指针强制转换为指向结构体的指针,然后取该结构体中某个成员的地址,

2023-12-15 16:26:06 99

原创 简易版,QT做的exe让电脑ppt翻页

在进入QApplication的event loop,通过经过层层调用,最终通过与平台相关的AbstractEventDispatcher的子类QEventDispatcherWin32,将app队列中的消息取出来查看类型,对于特定的message,通过标准的Windows API(PostMessage)传递给Windows OS。根据消息所属窗口进行分发,如果是隐藏窗口的,调用qt_internal_proc处理,如果属于真是窗口的,调用qWindowsWndProc处理。

2023-12-11 10:11:34 126

原创 stm32F413_CAN_TEST

发射机和正常模式接收器模块被关闭以减少电源电流,并且只有a低功率差分接收机监视总线的活动。的唤醒过滤器低功率接收机的输出不锁存总线主导状态,但确保只有总线显性状态和总线隐性状态持续时间长于tfltr(唤醒)总线被反映销RXD。在这种模式下,收发器可以发送并通过总线CANH和CANL接收数据(框图见图1)。母线上输出信号的斜率受到控制在内部进行优化,以保证尽可能低的EME。在待机模式下,母线偏向地,以尽量减少系统供电电流。低功耗接收器由VIO提供,能够检测CAN总线活动,即使VIO是唯一可用的电源电压。

2023-11-06 13:17:25 242

原创 stm32F413 CAN start 卡了一周

机器人MX自动生成的代码,参数是GPIO_AF9_CAN1,我这里需要GPIO_AF8_CAN1。

2023-11-03 16:23:58 323 1

原创 STM32F4xG 配置CAN及测试

CAN 是控制器局域网络 (Controller Area Network) 的简称,它是由研发和生产汽车电子产品著称的德国 BOSCH 公司开发的,并最终成为国际标准(ISO11519以及ISO11898),是国际上应用最广泛的现场总线之一。CAN 通讯不是以时钟信号来进行同步的,它是一种异步通讯,只具有 CAN_High 和 CAN_Low 两条信号线,共同构成一组差分信号线,以差分信号的形式进行通讯。

2023-10-29 15:13:42 173 1

原创 看门狗watchdog

【代码】看门狗watchdog。

2023-10-21 18:46:24 492 1

原创 typedef struct { uint8_t key:6; uint8_t state:2; } key_state_e;的含义

2023-10-18 11:58:32 75

原创 一个简单的ringbuffer Demo

这个demo中,我们定义了一个RingBuffer结构体,包含一个整型数组作为缓冲区,以及头指针和尾指针。在初始化时,我们动态分配了一个大小为BUFFER_SIZE的数组,并将头指针和尾指针都初始化为0。在写入数据时,我们将数据写入到尾指针所指向的位置,并将尾指针向后移动一位。如果此时尾指针等于头指针,说明缓冲区已满,需要将头指针向后移动一位。在读取数据时,我们先判断头指针是否等于尾指针,如果是,则说明缓冲区为空,返回-1。否则,我们将头指针所指向的数据读取出来,并将头指针向后移动一位。

2023-10-15 12:58:17 83 1

原创 软件流程图

其中,Microsoft Visio是一款专业的流程图制作软件,功能强大,但需要付费购买;Edraw Max是一款功能全面的流程图制作软件,支持多种图表类型,也需要付费购买。常用的免费软件有draw.io、Lucidchart、ProcessOn等,它们都可以用来绘制软件流程图。其中,draw.io是一款开源的在线绘图工具,Lucidchart是一款在线协作绘图工具,ProcessOn则是一款国内知名的在线绘图工具。在左侧的工具栏中选择“流程图”,然后选择“软件流程图”模板。流程图用什么软件做?

2023-10-15 12:51:50 131 1

原创 嵌入式开发学习路线

【嵌入式开发系统学习路线 从基础到项目 精品教程 单片机工程师必备课程 物联网开发 c语言 2022追更】https://www.bilibili.com/video/BV1EB4y1N7iD?

2023-08-31 21:27:00 65 1

转载 模拟电子技术基础

模拟电子技术基础。

2023-08-30 19:06:05 180 1

原创 模电面试题--ssw

从理论上(即假设电容为纯电容)说,电容越大,阻抗越小,通过的频率也越高。电容越大低频越容易通过。如果负载电容比较大, 驱动电路要把电容充电、放电, 才能完成信号的跳变,在上升沿比较陡峭的时候, 电流比较大, 这样驱动的电流就会吸收很大的电源电流,由于电路中的电感,电阻(特别是芯片管脚上的电感,会产生反弹),这种电流相对于正常情况来说实际上就是一种噪声,会影响前级的正常工作,这就是所谓的“耦合”。7.如右图所示,R1=10k,R2=2k,UCC=15V,β=100,当Ib=0.1mA时,A点的电压是多少?

2023-08-26 21:49:06 178

转载 keil软件的使用

keil软件的使用。

2023-08-25 17:40:39 65 1

转载 Modbus通信协议

Modbus通信协议。

2023-08-24 10:38:17 43 1

转载 FreeRTOS(教程非常详细)

FreeRTOS(教程非常详细)

2023-08-23 14:32:07 265 1

转载 【STM32小案例 】实现DHT11与0.96寸OLED的动态显示

这里就要认认真真的配置好SPI或者I2C的通信协议 和 OLED的引脚串口 ,有书的直接看野火或原子的书中相关部分,很容易就能配置好, OLED是配置好才可以点亮, 并不是插电就亮。2.先完成DHT11的库编写,就根据DHT11的用户手册来写就没有问题,先保证DHT11能够正常工作,读取温湿度。4,再进行OLED库的编写,其中可以借鉴相关的很多案例,你买OLED应该有商家最开始提供的案例。(2) 显示函数, 就根据自己的实际情况来保证显示屏的基本的运行就可以了。------更新完毕-------

2023-08-15 20:39:05 930 1

转载 linux shell 脚本教程

查找字符串:用于查找字符的位置,输出结果为字符在字符串中所占的数据位置,如果查找多个字符,那哪个字母先出现就计算哪个,如下查找it中i和t两个字符,t先出现,输出为1。你可以直接在终端中使用此命令,但在本测试中,你将通过 shell 脚本运行此命令。如果你想从任何地方运行你的 bash 脚本,就像它是一个常规的 Linux 命令,需要将你的 shell 脚本的位置添加到 PATH 变量中。环境变量:所有的程序,包括shell启动的程序,都能访问环境变量,必要的时候shell脚本也可以定义环境变量。

2023-08-10 01:04:57 9108 2

转载 Makefile入门教程

c编译器的名称,默认值为cc。cpp c预编译器的名称默认值为$(CC) -ECC = gcc回显问题,Makefile中的命令都会被打印出来。如果不想打印命令部分 可以使用@去除回显。

2023-08-07 15:36:24 78 1

原创 c语言笔试题2023

假设浮点变量的名字为x,应当将 if (x == 0.0) 转化为 if ((x>=-EPSINON) && (x

2023-08-05 20:50:22 317 1

空空如也

空空如也

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

TA关注的人

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