自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

星空语_的博客

每一个优秀的人,都有一段沉默的时光。那一段时光,是付出了很多努力,忍受了很多的孤独和寂寞,不抱怨不诉苦,只有自己知道。而当日后说起时,连自己都能被感动的日子。

  • 博客(62)
  • 资源 (10)
  • 问答 (2)
  • 收藏
  • 关注

原创 C语言基础知识总结及练习

2023-03-01 13:51:48 58

原创 嵌入式常问问题和知识

嵌入式面试常问问题

2023-02-21 09:57:27 1494

原创 “kernel is not clean, please run make mrproper ” 的解决办法

遇见如下问题:make[2]: *** [prepare3] Error 1make[2]: *** 正在等待未完成的任务....package/pkg-generic.mk:238: recipe for target '/home/sunhelong/work/buildbetter/buildroot/output/build/linux-custom/.stamp_built' failedmake[1]: *** [/home/sunhelong/work/buildbetter/buil

2020-05-25 17:23:02 819

原创 linux支持 zImage rootfs dtb 剥离 及 zImage和dtb拼接

1.1. 选择bootz模式启动zImage内核之前选择bootm模式启动boot.im,boot.img带有its格式的header,需要根据header去header。现在直接启动zImage,需要通过do bootz()函数启动。方式如下:1.1.1. 在uboot目下执行make menuconfig,选中bootz1.1.2. 选中Command line interface —> Boot commands —> bootz1.1.3. 选中Enable a defa

2020-05-25 17:01:41 3278

原创 adb: error: 46-byte write failed: Invalid argument

adb push fail问题解决方法记录

2023-10-23 14:22:07 768

原创 【问题】进程间发送消息队列无法接受

每个进程都进行mq_open(”/tmp_mq", O_RDWR,…)获取自己的消息队列标识符,然后使用此标识符在进程下mq_send和mq_receive就可以解决此问题。消息队列标识符无法在进程间共享,每个进程都需要获取自己的消息队列标识符。但是可以访问同一个消息队列名称,(要以"/“开头,保持名称路径一致)。

2023-08-02 10:43:21 174

原创 linux问题记录

线程栈过小,syslog占用栈,导致栈溢出。

2023-08-02 10:37:47 119

原创 linux问题记录

线程栈过小,syslog占用栈,导致栈溢出。

2023-07-14 19:27:14 100

原创 进程间通信问题 mq_send fail

进程间fd不共享,新的进程要重新mq_open, 使用新的fd进行mq_send。

2023-07-13 17:29:26 69

原创 tinyxml2安装及使用

tinyxml2

2023-06-08 15:26:21 1391

原创 ipc msg

(2)消息队列类似于管道却又比管道更加人性化,管道的读端只要是管道里有消息都会将其读走,而消息队列是有选择性地去读取数据,只要不是它想要地都不会读走。4.当一个发送方往消息队列中发送数据时,接收方一直还没接收,数据会一直在消息队列里等待接收方的出现。(3)当消息队列的写端往消息队列写入数据时,读端还没打开,数据会一直在消息队列中等待它读端打开。//获取消息队列id号,如果不存在则创建。//每次清空一下结构体变量里的内容。//申请一个消息队列结构体变量。/* 消息队列接收 *///设计消息队列结构体。

2023-05-10 11:36:27 89

原创 ubuntu warning: gpg (GnuPG) is not available. 解决办法

lrwxrwxrwx 1 root root 13 5月 16 09:38 git-repo.repo -> /usr/bin/snap。lrwxrwxrwx 1 root root 13 5月 16 09:38 repo -> git-repo.repo。-rw-r–r-- 1 kkkkcom kkkkcom 45277 5月 26 10:40 repo。-rw-r–r-- 1 root root 45277 5月 26 10:40 repo。

2023-03-28 16:37:13 1771

原创 ubuntu android

a、依赖库安装。

2023-03-24 19:11:07 54

原创 vimrc 和 bashrc区别

bashrc: 配置环境的个性化配置,如目录颜色、添加环境变量等。vimrc:配置vim编辑的操作及显示配置。

2023-03-23 16:47:06 68

原创 AP BP CP

AP(application processor):应用处理器。CP(communicate processor):通讯处理器。BP(Baseband processor):基带处理器。

2023-03-22 16:25:15 128

原创 clk_enable()和 clk_prepare_enable()区别

clk_enable()和clk_disable()。只有clk_enable()和clk_disable()带来的问题是,有时候,某些硬件。用的clk_enable()。而clk_prepare_enable()则同时完成准备和使能的工作,当然也只能在可能睡眠的上。clk_enable()分解成不可在原子上下文调用的clk_prepare()(该函数可能睡眠)和可以在原子上下文调。加上prepare后,把过去的。名称中含有prepare、unprepare字符串的API是内核后来才加入的,过去只有。

2023-03-19 14:22:34 673

原创 中断控制器

与local_irq_disable()和local_irq_enable()不同,disable_irq()、enable_irq()针对的则是中断。GPIO0_5中断发生的时候,内核的调用顺序是:sirfsoc_gpio_handle_irq()->generic_handle_irq()-irq_domain_add_legacy()、irq_domain_add_linear()、irq_domain_add_tree()等。在内核中,通过irq_chip结构体来描述中断控制器。

2023-03-17 22:52:45 1412

转载 Dynamic DMA mapping Guide

对于一个硬件设备上的寄存器等设备资源,内核是按照物理地址来管理的。如果设备在MMIO地址空间中有若干的寄存器,或者该设备足够的智能,它可以通过DMA执行读写系统内存的操作,这些情况下,设备使用的地址就是总线地址。例如:即便是一个系统支持64位地址内存和64 位地址的PCI bar,但是DMA可以不使用全部的64 bit地址,通过IOMMU的映射,PCI设备上的DMA可以只使用32位DMA地址。在DMA API中涉及好几个地址的概念(物理地址、虚拟地址和总线地址),正确的理解这些地址是非常重要的。

2023-03-13 15:28:06 68

原创 IIC、SPI、USB驱动架构类比

2023-03-12 22:49:12 93

原创 linux字符设备和块设备的区别 以及网络设备

2、块设备对I/0请求有对应的缓冲区,因此他们可以选择以什么样的顺序进行响应。对于存储设备而言,调整读写的顺序作用巨大,因为读写连续的扇区的读写速度比分离的扇区更快。1、字符设备以字节为单位。大多数设备是字符设备,因为他们不需要缓冲而且不以固定块大小进行操作。4、块设备工作于VFS(虚拟文件系统)之下。1、块设备只能以块为单位接受输入和输出。2、字符设备无需缓冲直接读写。3、字符设备只能被顺序读写。3、块设备可以随机访问。

2023-03-11 18:50:52 990

原创 strlen 和sizeof

sizeof是C/C++中的一个操作符(operator),简单的说其作用就是返回一个对象或者类型所占的内存字节数。strlen原型:strlen遇到‘\0’返回,其长度不包括‘、0’sizeof是一个运算符,不是函数。

2023-03-09 10:11:52 46

原创 DMA cache一致性怎么保持(修改中)

(1)在向内传输(rx)时,DMA设备将数据写入内存后,DMAC将向CPU发出中断请求,在RX ISR中使用该内存之前,需要先InvalidateD-Cache(sync_single_for_cpu)使cache无效重填(refill),此时CPU通过高速缓存cache获得的才是最新的数据。CPU的读/写用的是不同的cache(读用的是cache,写则用的是write buffer),所以建立流式DMA映射需要指明数据在DMA通道中的流向,以便由内核决定是操作cache还是write buffer。

2023-03-08 23:56:49 396

原创 while(i ++) i是先加1 ,再进入循环体

写程序用while(i++)碰到一个问题,i的初始值没有进入循环体,后来验证后发现,i是先加1,再进入的循环体。

2023-03-08 16:37:24 561

原创 二分法查找 C

第一行两个正整数n,v(1

2023-03-03 19:16:55 52

原创 MMU作用及Cache作用

2、TTW(Translation Table Walk):即转换表漫游,当TLB中没有缓冲对应的地址转换关系时,需要通过通过对内存中转换页表(大多数处理器的转换为多级页表)的访问来获得虚拟地址和物理地址的对应关系.TTW成功后,结果写入TLB中。1、TLB(Translation Lookside Buffer):即转换旁路缓存,TLB时MMU的核心部件,它缓存少量的虚拟地址和物理地址的转换关系,是转换表的cache,因此也经常被成为“快表”。

2023-03-02 23:34:48 268

原创 SourceInsight tab和空格快速互转

1、选择Edit -> Select All。2、选择Special-> Edit。

2023-03-02 14:42:04 484

原创 g2d 作用

【代码】g2d 作用。

2023-02-28 18:22:05 371

原创 如何唤醒 wait_event_interruptible()

线程1通过系统调用进入内核,后调用wake_up_interruptible等待唤醒事件,当事件不满足条件时,线程1进入休眠状态。中断或其他线程任务事件满足条件时,调用wait_event_interruptible,唤醒等待在wait_queue_head上的线程1。如果两个线程调用wait_event_interruptible(test,condition)阻塞休眠,一个中断调用wake_up_interruptible(test)但是并没有设置condition为1,会怎么样?

2023-02-28 17:04:46 298

原创 Linux下实现线程同步的四种方法:

条件本身是由互斥量保护的。条件变量是利用线程间共享的全局变量进行同步的一种机制,主要包括两个动作:一个线程等待“条件变量的条件成立”而挂起;如果另一个线程改变了条件,它发信号给关联的条件变量,唤醒一个或多个等待它的线程,重新获得互斥锁,重新评价条件。动态初始化,int pthread_cond_init(pthread_cond_t *cond, pthread_condattr_t *cond_attr);对共享资源的访问,要对互斥量进行加锁,如果互斥量已经上了锁,调用线程会阻塞,直到互斥量被解锁。

2023-02-28 15:49:04 1481

原创 g2d驱动设计流程

2、根据寄存器手册配置g2d 设备时钟。1、获取g2d 设备寄存器地址及映射。5、实现g2d中断函数。5、实现ioctl函数。

2023-02-24 17:03:26 219

原创 const char *str,char const *str,char *const str区别

str指向的内容是只读的,但是str 指向的地址是可以变的。

2023-02-23 23:32:30 147

原创 理解void *与 *(void **)的区别

就是它所指向的,在这里是指向放void型的地方;void** 是说: 这也是一个指针,去掉一个()就是它所指向的,它指向一个放void*型的地方.void* 是说: 这是一个指针,去掉一个(

2023-02-22 14:20:49 929

原创 硅麦驱动开发及调试(pdm>>I2S>>pcm)

硅麦mic驱动开发

2022-11-17 15:57:47 1872

原创 linux5.10升级

linux官网下载linux代码: https://www.kernel.org/1、下载最新linux代码。2、查看config信息。

2022-08-22 16:34:45 609

原创 gerrit 快速查找commit

网页上commit快速查找

2022-08-11 16:21:24 760

原创 Uboot删除环境变量

uboot删除变量

2022-08-11 15:19:18 2968

转载 ffmpeg命令参考

ffmpeg

2022-07-21 17:34:38 62

原创 Wrong JPEG library version: library is 80, caller expects 62 解决办法

添加/usr/include/jconfig.h,并将JPEG_VERSION的值由62设为80,这样可以轻松构建项目并链接正确的版本。

2022-05-10 23:58:15 1371 2

原创 我感兴趣的模块

我感兴趣的模块:存储:usb、pciedisplayaudioisp

2022-01-05 01:14:18 180

原创 遍历文件夹下所有子目录下的文件(linux C )

void listDir(char *path){ DIR *pDir ; struct dirent *ent ; int i=0 ; char childpath[512]; char childfile[512]; pDir=opendir(path); memset(childpath,0,sizeof(childpath)); while((ent=readdir(pDir))!=NULL) { if(ent->d_type & DT_DIR) {

2021-11-23 10:27:40 212

win10系统超级终端.7z

win10系统超级终端.7z

2021-11-18

sunflower.7z

sunflower.7z

2021-10-15

ONVIF_Device_TestTool.7z

ONVIF_Device_TestTool_v15.06.zip

2021-10-15

win10超级终端 win10超级终端

win10超级终端 win10超级终端

2021-10-15

gray_blue_theme.xml

source insight暗色护眼主题

2021-10-09

VSCodeUserSetup-x64-1.43.2.exe.7z

Visual Studio Code,或简称为 VSCode,是我最喜欢的代码编辑器,我希望能有更多人享受到 VSCode 的便捷与强大。 在前端开发中,有一个非常好用的工具,Visual Studio Code,简称VS code。 无数个大言不惭的攻城狮,都被VS code比德芙还丝滑的强大功能所折服。

2020-07-23

yuvplayer.7z

1)支持选择导入本地文件,支持实时显示 YUV 格式的图片,简单易用。 (2)支持多种 YUV 格式,包括: YU12、YV12、NV21、NV12、YUYV422、YVYU422、YUV422P、UYVY422 等等。 (3)支持多种图像转化算法,包括: FAST_BILINEAR、BILINEAR、BICUBIC 等等

2020-07-23

XnViewMP-win-x64.exe

XnViewMP是一款专业好用图片浏览器,是著名的免费看图软件XnView的增强新版本软件,其中MP是Multi Platform的缩写,软件不但具有XnView原本的功能,还增强了包括浏览器、幻灯片、屏幕捕捉、缩略图制作、批处理转换、十六进制浏览、拖放、通讯录、扫描输入等功能,实现图片查看、图片转换、图片浏览为一体,支持几乎网络上所有的500多种格式图片格式,且更进一步的实现多平台的支持,不同平台也将提供统一的界面和体验。这个用户带来了极大的便利,是用户实现图片浏览器功能的好帮手。

2020-07-23

Elecard-HEVC-Analyzer.zip

视频编解码查看工具,可以查看jpeg图片,及视频 Elecard.Streameye.Tools,一个强大的视频序列或码流分析软件,YUV分析,264文件分析软件,H.264视频编解码学习必备的东西,Elecard StreamEye Suite是一套用于专业视频压缩领域的功能强大的工具 ,能够帮助用户进行有效的对于视频序列的深入分析。感觉STREAM EYE的界面更加亲民,而且他的视频窗口可缩放,比较好操作,但是功能上面还是不如VISA强大,不过初学的话也是可以接受了。编码视频的可视化表现,流结构分析,这些流可以是MPEG-1/2/4 or AVC/H.264 VES(视频基本流)、SS(MPEG1的系统流)、,PS(MPEG2的程序流)、

2020-07-23

基于yocto和buildroot平台的syslog配置分享版.doc

关于syslog的使用和配置和编译,在本地怎么配置syslog和调用syslog,或者在开发板客户端怎么配置syslog及怎么使用

2020-04-29

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

TA关注的人

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