- 博客(53)
- 收藏
- 关注
原创 MCU SOC 上电不启动问题总结
在 boot rom 中,芯片启动的时候会先去读 boot mode寄存器中的值,根据 boot mode 的值选择启动模式,通常有 nand nor emmc sd 等,然后去对应的 memory 中读取启动文件。3、在场效应管(或COMS器件)中,VDD为漏极,VSS为源极,VDD和VSS指的是元件引脚,而不表示供电电压。1、对于数字电路来说,VCC是电路的供电电压,VDD是芯片的工作电压(通常Vcc>Vdd),VSS是接地点。进一步说,还有因电路形式不同而必须区分的两种“地”:数字地,模拟地。
2024-09-19 22:41:55 293
原创 linux驱动开发-磁盘管理
在中,mount命令是一种非常常见且有用的工具,用于将文件系统连接到指定的挂载点。通过使用mount命令,管理员可以访问和管理存储设备上的文件和目录,包括硬盘驱动器、CD或DVD驱动器、闪存驱动器等。-l:以列表的形式显示当前已挂载的文件系统。-t :指定要挂载的文件系统的类型,例如ext4、ntfs等。-o :指定挂载选项,比如读写权限、访问控制等。:指定要挂载的设备的名称或路径。:指定要挂载到的目录路径。mount -l。
2024-09-11 22:34:33 1244
原创 DC 板 boot 测 nor 兼容性记录(qspi )
2、由于socket与DC板接触可能不是很好,所以怀疑在数据传输过程中如果 IO频率过高会导致数据读出来的和flash中原本存储的数据对不上,这个一般会怀疑是驱动问题,但其实只是频率问题,所以遇到flash 读写有问题时,可以先考虑将qspi降成 spi模式,也就是将 4线模式转换成 1 线模式,或者是降低 IO频率;IO 频率在驱动的硬件cfg 参数中修改即可。1、EC前芯片能使能各项外设,在测试过程中发现能够读 flash ID ,但是在boot的过程中会遇到问题,包括之前boot的大电流问题;
2024-09-11 19:28:10 907
原创 printf 和 \r \n的故事
linux编译环境和win编译环境下的 \r\n 含义是不同的;\r :是指将光标移动到本行的开头;\n : 是指另起一行;
2024-07-12 15:02:04 156
原创 UNUSED宏用法
有些函数入参用不上的时候,会在编译的时候报 warning,在编译参数里面添加-Werror这个编译选项时,会将所有的warning信息转换为error,对编译造成影响;所以为了避免编译终止问题,我们对于一些函数入参需要用UNUSED_PARA 做下处理;
2024-07-12 14:51:26 157
原创 BSP驱动教程-CAN/CANFD/CANopen知识点总结分享
博世的CAN2.0和CANFD规格书。MDK的CAN入门教程。Kvaser入门教程。
2024-06-15 15:20:28 404
原创 ulog记录(RTTulog部分)
首先计算颜色信息的长度,然后根据颜色信息的长度确定新的日志起始地址和日志长度,去除颜色输出的标记后,再调用后端的输出函数),输出函数ulog_output_to_all_backend相关参数主要包括:日志级别,标签,是否为原始日志,缓冲区,长度。- `rt_err_t ulog_backend_set_filter(ulog_backend_t backend, ulog_backend_filter_t filter)` 函数用于设置日志后端的过滤器。参数 `tag` 是要设置的全局日志标签。
2023-08-02 16:56:58 1332
原创 makefile中的常用关键字和函数
其中的function为函数名,argument是参数,函数名与参数之间用空格或者Tab隔开,如果有多个参数,之间用逗号隔开。
2023-07-29 15:13:40 314
原创 位段和位域
计算机内存是以字节为单位进行划分的,CPU通过地址总线访问内存时,一次能处理多少字节的数据就会让地址总线读几个字节的数据,32位的CPU一次处理4字节的数据,每次就从内存中读取4字节的数据,少了浪费主频,多了没有哟个。当相邻成员的类型相同时,如果它们的位宽之和小于类型的 sizeof 大小,那么后面的成员紧邻前一个成员存储,直到不能容纳为止;这里插播一下大小端存储的简单介绍:大小端存储是计算机用于处理多字节数据的不同方式,在内存中存储多字节数据时,字节的存储习惯。在 : 后面数字来限定成员变量占用的位数。
2023-07-29 14:38:47 174
原创 makefile学习记录
本记录仅用于记录自己makefile学习的知识点,侵权删!跟我学makefile,极力推荐,神书!makefile是为了自动化编译设计的,程序首先需要把源文件编译成中间代码文件,在win下为.obj文件,在unix下为.o文件,这个就是编译(compile)的过程,将大量的obj文件合成为执行文件就是链接过程(link)。
2023-07-23 14:32:55 108
原创 git指令记录
集中式版本控制有一个主版本号,每次版本迭代都会以这个版本号为主,分布式因为每个客户端都是服务器,git没有固定的版本号,代码回滚会有一个哈希值作为代码ID,一般以master作为主仓库,我们可以push到master并合并到主仓库上,主仓库的版本号就会迭代一次,客户端的git迭代与master无关,只有在merge时才会合并一次。分布式版本控制系统:每一个电脑都属于一个服务器,在主仓库拉一份代码以后,则可以将自己的电脑作为服务器,自己在本地做的修改可以提交到主仓库。其中HEAD指向最新放入仓库的版本。
2023-07-15 10:39:32 350
原创 [Linux+gcov+lcov]测试代码覆盖率总结
会生成原始的代码覆盖率文件test.gcov,因为此时没有运行test的可执行文件,所以没有test.gcda的统计数据,覆盖率为0。lcov属于gcov的图形化工具,可转换为html格式的代码覆盖率报告,需要自己安装,网址如下。在编译时会产生.gcno文件,包含重建基本图块和相应的块的源代码的行号信息;(2)运行gcov会生成test.gcda文件,其中包含代码覆盖率信息。在运行编译的程序时会产生.gcda文件,包含弧跳变的次数信息。每行前面的数字表示行运行的次数。其中#####表示未运行的行。
2023-07-07 13:30:17 520
原创 win10+Ubuntu双系统安装教程
Ubuntu桌面版的安装镜像文件名为:ubuntu-<版本号>-desktop-amd64.iso。将镜像文件写入U盘就行。在选择文件的时候要注意文件的类型;选中D盘,右键单击压缩卷,我分了一个60G的空间盘。6、重启并按照设定对Ubuntu进行分区即可。然后安装一下这个工具,在桌面上就可以启动。右键单击WIn按钮,然后打开磁盘管理。用win32diskImage。1、下载Ubuntu镜像文件。3、制作Ubuntu安装盘。2、下载安装镜像工具。5、查看磁盘分区格式。
2023-04-19 21:43:32 1065
原创 CMake Error at /opt/ros/kinetic/share/catkin/cmake/catkinConfig.cmake:83 (find_package)
问题描述:在编译工作包时,出现问题CMake Error at /opt/ros/kinetic/share/catkin/cmake/catkinConfig.cmake:83 (find_package): Could not find a package configuration file provided by "moveit_core" with any of the following names: moveit_coreConfig.cmake moveit_
2022-05-05 17:35:41 1053
转载 STM32外设I2C
I2C(IIC,Inter-Integrated Circuit),两线式串行总线,由PHILIPS公司开发用于连接微控制器及其外围设备。它是由数据线SDA和时钟SCL构成的串行总线,可发送和接收数据。在CPU与被控IC之间、IC与IC之间进行双向传送,高速IIC总线一般可达400kbps以上。IIC是半双工通信方式。IIC通信系统总线IIC协议①空闲状态:I2C总线总线的SDA和SCL两条信号线同时处于高电平时,规定为总线的空闲状态。此时各个器件的输出级场效应管均处在截止状态,
2022-04-14 16:54:57 568
原创 STM32DMA
DMA 全称Direct Memory Access,即直接存储器访问。DMA传输将数据从一个地址空间复制到另一个地址空间。当CPU初始化这个传输动作,传输动作本身是由DMA控制器来实现和完成的。DMA传输方式无需CPU直接控制传输,也没有中断处理方式那样保留现场和恢复现场过程,通过硬件为RAM和IO设备开辟一条直接传输数据的通道,使得CPU的效率大大提高。在DMA出现之前,CPU与外设之间的数据传送方式有程序传送方式、中断传送方式。CPU是通过系统总线与其他部件连接并进行数据传输。作用:为
2022-04-14 16:31:16 662
原创 STM32DAC转换
STM32的DAC模块(数字/模拟转换模块)是12位数字输入,电压输出型的DAC。DAC可以配置为8位或12位模式,也可以与DMA控制器配合使用。DAC工作在12位模式时,数据可以设置成左对齐或右对齐。DAC模块有2个输出通道,每个通道都有单独的转换器。在双DAC模式下,2个通道可以独立地进行转换,也可以同时进行转换并同步地更新2个通道的输出。DAC可以通过引脚输入参考电压VREF+以获得更精确的转换结果。STM32的DAC模块主要特点有:① 2个DAC转换器:每个转换器对应1个输出通道② 8位
2022-04-14 15:37:46 1356
RT-Thread OS
2023-07-30
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人