自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 zlog日志库

配置文件:zlog日志库(笔记) —— 配置文件 - 明明1109 - 博客园 (cnblogs.com)

2024-05-22 15:14:55 1

原创 libcurl、http学习

详解libcurl Easy interface API(C++) - 知乎 (zhihu.com)(转)libcurl库使用方法,好长,好详细。 - _浪潮之巅.☆ - 博客园 (cnblogs.com)详解HTTP四种请求:POST、GET、DELETE、PUT - 掘金 (juejin.cn)

2024-05-22 15:12:59 75

原创 lmbench学习

结果分析:性能测试工具 Lmbench 的使用方法以及解析运行结果。编译时参考博客:lmbench基本的部署与使用。

2024-03-11 17:03:10 290

转载 了解coredump

了解coredump_/usr/lib/systemd/systemd-coredump-CSDN博客

2024-01-31 14:08:00 24

转载 linux 进程锁之文件锁lockf()

操作系统实验三——进程控制Lockf()-CSDN博客Linux文件锁学习-flock, lockf, fcntl - blcblc - 博客园 (cnblogs.com)

2023-10-08 19:01:10 269 2

原创 stm32f407 ADC学习记录

采样率:ADC采样的频率,指ADC每秒可以对输入信号进行多少次采样,采样率越高,转换出来的信息将更接近原始信号,但转换时间也会增加。分辨率:ADC转换的数字值的位数,常用的有8位、10位、12位、16位等,分辨率越高,精度越高,但转换速度会受到影响。● 数据对齐以保持内置数据一致性(16位的数据寄存器存放12位的数据)连续转换:完成一次后自动开始下一次转换,不需要再次启动。单次转换:触发转换后转换一次就停下,等待下次触发;注入通道:相当于中断,可打断规则通道的执行。● 可配置 12 位、10。

2023-08-17 09:56:24 183 1

原创 stm32f4 DMA学习记录

DMA功能关键词:数据流;通道号:通过查询 DMA 请求映射表可以找到一个外设传输请求的数据流和通道号;传输方向选择:外设 ==> 存储器,存储器 ==> 外设,存储器 ==> 存储器;外设/存储器数据宽度:8位、16位、32位;单次传输或 4 个、 8 个和 16 个节拍的增量突发传输;传输优先级:低、中、高、非常高;...

2023-08-16 10:47:15 74

原创 linux rsyslog

rsyslog 配置详解 - 君无颜 - 博客园 (cnblogs.com)

2023-08-11 14:05:19 68

原创 MAC 地址格式详解

MAC地址格式详解_51CTO博客_mac地址 格式

2023-08-08 09:49:13 231

转载 【 Linux 】Systemd 使用说明

【 Linux 】Systemd 使用说明(1) - hukey - 博客园 (cnblogs.com)

2023-06-17 17:43:03 67

转载 linux /etc/fstab文件

(179条消息) linux /etc/fstab 文件详细说明(整理版)_小龙王2010的博客-CSDN博客

2023-06-08 11:40:38 117 1

原创 Makefile学习记录

表示比目标还要新的依赖文件列表。$^ 表示所有的依赖文件。$< 表示第一个依赖文件。$@ 表示目标文件。

2023-05-29 09:39:29 55

原创 Linux 高精度定时器(hrtimer)

启动定时器:/*....*/

2023-05-28 13:43:14 457 1

原创 Linux 常用shell总结

awk '{print $2}' $fileName : 一行一行的读取指定的文件, 以空格作为分隔符,打印第二个字段。chmod 777 /data -R: 对目前目录下的所有文件与子目录进行相同的权限变更。ln -s /root /home/guest: 为某一个文件在另外一个位置建立一个同步的链接。

2023-05-09 22:23:15 48

转载 NOR flash和NAND flash的区别

nor flash有独立的地址线,可随机读取每个字。nand flash有更快的写、擦除速度。nor flash有更快的读速度;nand flash擦写次数更多。norflash统一编址;nand容量更大,成本更低。nand公用地址线数据线。

2023-04-06 14:45:12 214 2

原创 网卡设备中DMA与Cache的一致性问题

2、DMA传输要注意与cache的一致性问题。必须保证DMA缓冲区中的数据时最新的。有两种方法:cache flush和cache invalidate。1、网卡等外设的DMA传输,要求缓冲区的物理地址必须连续。因为DMA硬件时直接和内存进行数据传输。1、只把更新的cache区标记为dirty,并不同步写入memory。2、只在cache区要更新新的数据时,才会更新memory。

2023-03-07 16:29:56 565

原创 CANopen概念总结、心得体会

NMT主机和NMT从机之间通讯的报文就称为。

2023-02-20 19:36:52 1434

原创 glibc memcpy内部机制学习记录

4、剩余的不能采用word copy的尾部使用one byte by one byte进行拷贝。就为对齐之后的剩余大小了,之后的处理方式直接按照虚拟内存页的大小来加快拷贝效率。判断需要拷贝的字节数是否大于临界值(16或8)。1、先进行内存对齐。假设要拷贝的目的地址如下所示。为拷贝目的地的起始地址 ,为拷贝目的地的结束地址,为内存中的对齐边界。

2023-01-31 18:58:32 310

原创 字符设备驱动之mmap、select

mmap,简而言之就是将内核空间的一段内存区域映射到用户空间。映射成功后,用户对这段内存区域的修改可以直接反映到内核空间,相反,内核空间对这段区域的修改也直接反映用户空间。那么对于内核空间与用户空间两者之间需要大量数据传输等操作的话效率是非常高的。当然,也可以将内核空间的一段内存区域同时映射到多个进程,这样还可以实现进程间的共享内存通信。

2023-01-30 17:48:29 539 1

原创 sylixos input子系统学习、调试记录

sylixos input子系统

2023-01-29 16:19:11 315

原创 sja1000 CAN驱动学习、调试记录(基于PeliCan Mode)

BasicCAN Mode:仅支持11位的ID。在扩展模式下,允许使用 11 位 ID的标准帧和29位ID的扩展帧(是标准帧还是扩展帧由 TX帧信息的最高位IDE位确定)。二、硬件介绍硬件框图、寄存器地址分配2.1TRANSMITBUFFER(TXB)传输缓冲区是CPU和比特流处理器(BSP)之间的一个接口,它能够存储一个完整的消息,以便通过CAN网络进行传输。该缓冲区有13个字节长,由CPU写入,并由BSP读出。

2022-12-11 22:07:34 3352 1

原创 usb 驱动学习记录

(118条消息) Linux USB驱动开发_zqixiao_09的博客-CSDN博客(118条消息) Linux USB 驱动开发(一)—— USB设备基础概念_zqixiao_09的博客-CSDN博客_linux usb驱动开发(118条消息) usb中的endpoint(端点)和传输模式_zqixiao_09的博客-CSDN博客

2022-09-14 19:47:33 277

原创 sylixos free 命令

(96条消息) SylixOS 中 free 命令含义_stone8761的博客-CSDN博客

2022-07-17 16:20:36 124

原创 dw网卡参考链接

devmem:(83条消息) 如何编译devmem_Linux 读写memory操作_000F1的博客-CSDN博客

2022-06-14 17:00:29 127

转载 nand flash产生坏块

(66条消息) NAND Flash产生坏块原因_broadCE的博客-CSDN博客_flash坏块产生的原因(66条消息) nand flash坏块管理OOB,BBT,ECC_zhandoushi1982的博客-CSDN博客_oob 坏块管理

2022-04-20 17:04:20 612

转载 linux popen 函数详解

表头文件 #include<stdio.h> 定义函数 FILE * popen( const char * command,const char * type); 函数说明 popen()会调用fork()产生子进程,然后从子进程中调用/bin/sh -c来执行参数command的指令。参数type可使用“r”代表读取,“w”代表写入。依照此type值,popen()会建立管道连到子进程的标准输出设备或标准输入设...

2022-04-20 14:58:50 3658

转载 linux串口编程 select

(55条消息) linux串口编程 select_storyteller87的博客-CSDN博客_linux 串口select

2022-04-04 11:10:43 573

转载 SylixOS内核打印调试方法

1.增加系统日志消息缓冲最大数量在使用printk的时候,经常会碰到已经加了打印语句,但是终端上却并没有显示出来信息这种情况,原因是系统默认的缓冲大小有限,而打印信息又比较多,从而导致后面的打印信息覆盖了前面的信息,造成打印丢失。解决方法是修改base中的LW_CFG_MAX_LOGMSGS这个宏,系统默认的值是20,其所在的文件路径为“libsylixos/SylixOS/config/system/system_cfg.h”,如下图所示:2.printk输出定向到文件本操作主要用于x86

2022-02-23 16:39:52 183

转载 sylixos pci 驱动踩坑记录

1、关于IO空间 memory空间 配置空间1.1、配置空间:PCI总线规范定义的配置空间总长度为256个字节,配置信息按一定的顺序和大小依次存放。前64个字节的配置空间称为配置头,对于所有的设备都一样,配置头的主要功能是用来识别设备、定义主机访问PCI卡的方式(I/O访问或者存储器访问,还有中断信息)。其余的192个字节称为本地配置空间,主要定义卡上局部总线的特性、本地空间基地址及范围等。一般我们需要关心配置空间中配置头的信息。配置头寄存器信息如下:Base Addr...

2022-02-11 18:47:22 409

原创 sylixos 线程调度最小时间间隔、内核线程简介

TICK的作用操作系统,Tick仿佛是人的脉搏,不停的向各个器官提供血液。 Tick在操作系统中,会进行调度,是分时调度最基础的组成部分。每次Tick中断,进行一次调度,先将计数加一,然后进行任务切换;在SylixOS 中,Tick以系统时钟为时钟源,采用芯片自带的Tick定时器或者通用定时器实现。系统TICK实现SylixOS Tick实现通常是采用通用定时器的周期性中断,一次中断表示一个tick。系统Tick的时钟频率可以通过API_KernelStartParam函数修改内核启动参数进

2022-02-09 12:50:14 471

原创 命令行输入16进制字符串

setchip COMMON_CFG1 0x444224400f13ffb以上是一个写寄存器值的shell命令。十六进制的数值传递到程序中是字符串。如何将这个64位的十六进制数由字符串转为可写入寄存器的数值呢? 答案是使用接口:unsigned long int strtoull(const char *str, char **endptr, int base) 参数说明:str-- 要转换为无符号长整数的字符串。 endptr-- 对类型...

2021-12-27 15:38:11 1193

转载 stm32h743 低功耗学习总结

(17条消息) STM32低功耗(STM32G0+HAL库+STOP模式+中断唤醒)_love421的博客-CSDN博客_stm32g0低功耗(17条消息) stm32 HAL 低功耗模式_紫枫洛天的博客-CSDN博客1.STM32低功耗一共有三种模式:(1)睡眠模式:功耗高,任意中断,任意事件唤醒(2)停机模式:功耗较低,可以任意外部中断和RTC闹钟唤醒(3)待机模式:功耗最低,但是只可以通过RTC唤醒,WKUP唤醒,NRST引脚复位,IWDG复位2.小白扫盲1)STOP模式下,

2021-12-03 10:26:29 1045

原创 stm32h743 FDCAN驱动踩坑记录

先放一张FDCAN控制框图镇贴:can 使用的是专门的外设时钟,所以要有相应的外设时钟配置和选择。关于波特率计算:代码中把位时序中的 BS1 和 BS2 段分别设置成了 31Tq 和 8Tq,再加上 SYNC_SEG段(固定为1Tq),一个 CAN 数据位就是 40Tq 了,加上 CAN 外设的分频配置为 1 分频, CAN 所使用的总线时钟 fPLL1Q = 40MHz,于是我们可计算出它的波特率:1Tq = 1/(40M) = 1/40 usT1bit = (31+8+1..

2021-10-28 19:52:17 2280

原创 stm32h743 定时器实现PWM功能踩坑记录

先用一张高级定时器框图镇楼定时器输出PWM,先要搞懂两个概念:定时器工作频率与定时器频率定时器工作频率 =外设总线频率/(PSC+1)假设外设总线频率是1MHZ,PSC是9,那么定时器工作频率是100KHZ,也就是启动后1秒计数10万次;定时器频率 = 定时器工作频率/(CNT+1)假设CNT是99,则定时器频率是1KHZ,也就是1秒计数1000次,每1ms(计数每数到100)产生一次溢出中断。PSC:预分频系数CNT:自动重装载值关...

2021-10-28 15:06:52 953

原创 stm32h743 FM25CL64铁电存储器踩坑记录

调试FRAM经验总结:1、跑完FRAM读写代码之后,逻分仪发现总线上只有简单、短暂的电平变化,明显不是SPI的通信数据。(经提醒发现连片选拉高拉低都没有执行到位)后来发现是因为片选引脚没有初始化,所以直接拉高拉低是无效的。2、引脚成功初始化后发现CLK、MISO、MOSI数据仍不正常。通过加打印的方式发现跑到HAL_SPI_Transmit中之后还没有执行到写SPI数据寄存器的那一步就return了。后来经提醒发现:上图中的指针使用方式错误后来又发现:打印出来发现

2021-10-27 17:55:53 2216

原创 四线电阻触摸屏原理(仅作为学习记录)

转载自:http://www.elecfans.com/kongzhijishu/renjijiemian/596589.html四线电阻触摸屏原理_qlexcel的专栏-CSDN博客_电阻触摸屏原理linux input子系统、驱动框架学习参考链接:(25条消息) linux驱动中probe函数是怎么调用的_夏天Alex-CSDN博客_linux probeLinux Platform驱动模型(二) _驱动方法 - Abnor - 博客园 (cnblogs.com)Linux 获.

2021-09-02 11:28:45 580

原创 stm32f4 SPI 总线驱动、flash驱动学习指南

零死角玩转系列是从库函数的角度讲解SPI总线驱动的:(19条消息) 第24章 SPI—读写串行FLASH—零死角玩转STM32-F429系列_flyleaf91的专栏-CSDN博客SPI总线驱动关键词:CPOL:时钟极性(为0 时有效电平为高电平)CPHA:时钟相位(为0 时在第一个时钟边沿采样数据)MSTR:主从模式选择位BR[2:0]:波特率控制(时钟分频)对于本人来说,更适合看寄存器版本的总线驱动。下面是stm32f4 的SPI寄存器一览表:W25Q128的操作

2021-08-18 11:43:57 329

转载 静态链接库与动态链接库

https://blog.csdn.net/qq_34063988/article/details/102872591

2021-06-14 16:07:15 58

转载 CANopen--基于DS402协议的伺服电机原点回零模式实现

硬件:Copley 驱动器ACJ-055-18+Maxon DCX-35L电机<转载请标明出处>1、原点回零方式简介:有几种原点回零方法,每种方法建立:原点参考(限位或原点开关转换或编码器索引脉冲)运动方向以及索引脉冲与限位器原点开关之间的关系。图 1 回零过程图原点回零模式用于寻找机械原点, 并定位机械原点与机械零点的位置关系。原点回零成后, 电机停止位置为机械原点(HomePosition), 通过设置 607Ch, 可以设定机械原点与机械零点(ZeroPosi.

2021-05-10 14:02:41 2704

转载 485信号该不该接地

如果排查的思路对你有帮助,请记住 消雨匆匆 or大吊工。码字和排查很累,仅此而已差分信号:差分传输是一种信号传输的技术,区别于传统的一根信号线一根地线的做法,差分传输在这两根线上都传输信号,这两个信号的振幅相等,相位相差180度,极性相反。在这两根线上传输的信号就是差分信号。对于这个问题真的有疑问,上网查了资料,无外乎就是接或者不接(我承认废话了):(1)理论上,485是差分信号,只要两个信号之间差分传输,和GND并没有什么关系,而且485本来就是抑制共模传输的,稳的很。(2)工程上,...

2021-05-06 11:53:08 6749

空空如也

空空如也

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

TA关注的人

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