自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(100)
  • 资源 (2)
  • 收藏
  • 关注

原创 Linux驱动-基于QT控制LED灯

【代码】Linux驱动-基于QT控制LED灯。

2023-08-13 10:48:24 979 2

原创 Linux驱动-基于Buildroot构建系统镜像后实现基于QT项目开发之环境配置

设计好UI界面,并且写好代码之后,把以上项目文件夹复制到Ubuntu中编译可执行程序放到板子;可得到可执行文件放入板子中执行即可。

2023-08-12 17:34:29 456

原创 数据结构与算法笔记-6の链表の反转链表的递归实现与图示

你可以迭代或递归地反转链表。你能否用两种方法解决这道题?

2023-07-22 09:31:37 113

原创 Linux Audio (8) DAPM-5 DAPM情景分析_构造过程(待完善)

对于Mux, Mixer根据kcontrol创建snd_control。根据上述的原则,对下面的route进行path转化。这节课主要是对下面这张图进行设置path,即。

2023-05-21 22:17:44 120

原创 Linux Audio (7) DAPM-4 Path/Route添加过程

它会导到Mux/Mixer中,snd_kcontrol_new被构造成snd_kcontrol,进而设置path->kcontrol。name1和name2是kcontrol,可以通过控制kcontrol来打开某条path。{“sink”, NULL, “source”},其path->connect=1。只有一个kcontrol,通过设置kcontrol 的value来打开某条path。根据名字找到source, sink widget。.sink : 指向sink widget。

2023-05-21 21:26:26 513

原创 Linux Audio (6) DAPM-3 damp的kcontrol注册过程

为例,该widget包含一个Mixer和三个kcontrol;而Muxer则只包含有一个kcontrol;Trace 普通的kcontrol是如何添加到内核中去的,其实在。对于Mixer 和 Muxer有不同的处理。三个kcontrol的注册过程。

2023-05-21 19:41:12 509

原创 Linux Audio (5) DAPM-2 Widget/Path/Route

tinymix 设置普通的kcontrol:直接设置寄存器tinymix 设置DAPM的kcontrol:设置所在Path的connect位调用tinyplay, tinycap在传输数据之前:调用在有app使用声卡时会找出complete path,设置上面所有的widget(上电)

2023-05-21 16:40:19 603

原创 Linux Audio (4) DAPM-1 Kcontrol

比如。

2023-05-21 10:14:48 745

原创 Linux Audio (2-1) ALSA代码分析-基于Linux3.5

分析的入口是从的入口函数开始,在分析的过程中依靠做线索。

2023-05-21 08:08:52 827

原创 Linux Audio (4) ASOC代码分析-基于kernel3.4.2

ASoC是ALSA在SoC方面的发展和演变,它的本质仍然属于ALSA,但是在ALSA架构基础上对CPU相关的代码和Codec相关的代码进行了分离,其原因是采用传统ALSA架构情况下,同一型号的Codec工作于不同的CPU时,需要不同的驱动,这是不符合代码重用的要求的。符号其接口类型的Codec,只有3是不通用的,由特定的电路板上具体的CPU和Codec确定,因此它很像一个插座,上面插着Codec和平台这两个插头。(3)板驱动,这一部分将平台驱动和Codec驱动绑定在一起,描述了板一级的硬件特征。

2023-05-20 19:38:09 609

原创 Linux Audio (4) ASOC代码分析-基于kernel4.19

[TOC](Linux Audio (4) ASOC代码分析)目的在学习ASOC整体框架以及分析方法,而不是死记硬背。Asoc架构会随着Linux Kernel版本改变,有时候可能会引入新概念,所以要掌握分析方法。

2023-05-20 11:33:53 986

原创 Android硬件服务访问(6):编写Java应用程序

Android硬件服务访问(4):编写Java应用程序

2022-11-06 16:16:42 222

原创 Android硬件服务访问(5):在Application Frameworks层增加硬件访问服务

Android硬件服务访问4:在Application Frameworks层增加硬件访问服务

2022-11-06 15:55:46 541

原创 Android硬件服务访问(4):编写JNI方法提供Java访问硬件服务接口

Android硬件服务访问(4):编写JNI方法提供Java访问硬件服务接口

2022-11-06 15:30:51 691

原创 Android硬件服务访问(1):总体框架

Android硬件服务访问1:总体框架

2022-11-06 14:32:28 428

原创 Android硬件服务访问(3):HAL中添加接口支持访问硬件

Android硬件服务访问(2):HAL中添加接口支持访问硬件

2022-11-06 14:30:46 718 2

原创 Android硬件服务访问(2):Driver

Android硬件访问服务系列笔记2:Driver

2022-11-06 13:06:58 397

原创 Linux Audio (3) 应用层实例程序

ALSA应用实例:playback and capture

2022-10-15 09:57:34 275

原创 Linux Audio (1) ALSA架构

ASOC总体框图

2022-10-15 09:28:15 527

原创 Linux Audio (2)ALSA代码分析-基于Linux3.5

ALSA和Asoc流程分析

2022-10-07 11:53:52 1105

原创 电子产品量产工具-软件架构-页面系统

该笔记为百问网韦东山老师免费课程学习过程的整理,学习过程中,软件架构思想很重要,所以在每学习完一个单元后悔整理一下。

2022-07-10 15:43:19 281

原创 电子产品量产工具-软件架构-输入系统

该笔记为百问网韦东山老师免费课程学习过程的整理,学习过程中,软件架构思想很重要,所以在每学习完一个单元后悔整理一下。

2022-07-03 17:33:39 222

原创 电子产品量产工具-软件架构-显示系统

韦东山项目实战:电子量产工具软件架构梳理

2022-06-26 18:00:21 464

原创 [Linux驱动之路] 驱动设计的思想_面向对象_分层_分离—程序扩展

韦东山老师的Linux驱动设计基础课程的p128 5_101驱动设计的思想_面向对象_分层_分离这课在开发板上实作练习,可控制imx6ull_pro板子的LED开关。基于韦老师代码的基础上,更改如下代码:led_resource.h#ifndef _LED_RESOURCE_H#define _LED_RESOURCE_H/* GPIO3_0 *//* bit[31:16] = group *//* bit[15:0] = which pin */#define GROUP(x) .

2022-04-24 21:29:17 420 2

原创 嵌入式Linux之路读书和学习计划

嵌入式Linux之路读书和学习计划书籍视频书籍《嵌入式Linux基础教程》计划学习时长一个月,12月31号看完主要内容《嵌入式Linux应用开发完全开发手册》计划学习时长一个月,1月31号看完主要内容学习时间段:主要的学习时间放到下班回来以及周末时间看书,公司晚上也可以观看电子版书籍来学习。学习达成目标:快速地建立起嵌入式Linux系统架构的基本概念和知识框架。视频暂时不看视频教程,因为比较耗时。...

2021-12-04 12:14:26 80

原创 基础:bluetooth协议记录

蓝牙物理链路:SCO和ACLSCO(同步定向连接) - 是一种双向的音频数据的传输链路,该链路只支持8K及16K单声道的音频数据,主要用于同步话音传送。SCO连接为对称连接,利用保留时隙传送数据包。连接建立后,主设备和从设备可以不被选中就发送SCO数据包。SCO数据包既可以传送话音,也可以传送数据,但在传送数据时,只用于重发被损坏的那部分的数据。ACL(异步无连接) - 主要用于分组数据传送。ACL为面向无连接的异步链路,是主单元与共存于微微网中的所有从单元之间实现一点多址的连接方式。它既支持对称连接

2021-10-18 10:25:55 504

原创 程序员面试宝典笔记3-循环递归与概率

程序员面试宝典笔记3-循环递归与概率递归基础典型递归问题循环与数组问题螺旋队列问题概率

2021-10-18 10:24:31 158

原创 C语言-链表和字符串翻转

链表翻转typedef struct Node{ int data; Node * next;}Node, *pNode;pNode LinkReverse(pNode pLink){ pNode pf, pq, pr; pf = pLink; pq = pf->next; while (NULL != pq) { pr = pq->next; pq->next = pf; pf = pq; pq = pr; } pLink->next

2021-10-18 10:23:44 164

原创 Linux命令

Linux命令Linux常用命令VI编辑器命令VI高级指令GCC常用命令Linux常用命令pwd当前文件位置ls -a文件夹所有文件ls -l文件夹列表ls -R递归显示文件目录cat -s多个空行合并查看文件cat -b加行号显示查看文件nl加行号head -n 文件名前 n 行查看tail -n 文件名后 n 行查看cp file_1 file_2复制 file_1 为 file_2cp file

2021-10-18 10:23:20 46

原创 Git代码提交说明文档-初稿

Git代码提交说明文档-初稿1 写在前面的话该文档以一个软件工程师在整个产品开发周期中的代码提交过程为场景,来为软件开发人员提供详细的Git提交以及分支管理使用参考。其中,产品开发周期主要分为几个阶段:EV (开发验证,送样)、DV (试产)、PV (量产)本文档包括以下四方面:指令说明,错误处理,分支管理,场景示例。2 指令说明基础代码git add .git commit -m "提交注释"git tag V1.0 -m "realse v1.0" git push -u -

2021-09-09 18:53:10 527

原创 BLE Mesh-1の基本概念

Mesh基本概念广播和洪泛:蓝牙Mesh技术采用BLE的广播报文来实现,这是一种基于洪泛的信息传递机制。缺点:1. 信息泛滥;解决:1. 消息缓存队列;2. TTL字段。节点和设备:未在网络中的设备加入Mesh网络中后称为节点,这个过程称之为配网过程(Provisioning)。网络和子网:一个蓝牙Mesh网络中有以下四种资源是共享的:节点的网络地址网络密钥应用密钥IV Index在此基础上,蓝牙Mesh网络可以划分为多个子网,便于分类管理和统一控制。元素:每个节点都有至少包含

2020-11-19 21:30:03 340

原创 数据结构与算法@双向链表

双向链表双向链表的数据结构双向链表的建立双向链表的插入节点双向链表的删除节点双向链表的遍历双向链表的长度双向链表查找节点双向链表替换节点主函数http://c.biancheng.net/view/3343.html双向链表的数据结构typedef struct line{ struct line * prior; //指向直接前趋 int data; struct line * next; //指向直接后继}line;双向链表的建立line* initLine(lin

2020-09-19 20:26:55 145

原创 BT-10の蓝牙技术原理のBT协议-应用框架の蓝牙音视频应用框架-AVRCP

BT协议-应用框架の蓝牙音视频应用框架蓝牙音视频遥控应用框架-AVRCP一,设备角色二,应用模型三,AVRCP遥控操作四,AV/C 指令与响应五,AVRCP所支持的设备指令六,AVRCP的设备AV功能分类通用音视频分发应用框架-GAVDPGAVDP通信规范设备状态连接控制传输控制信令控制安全控制高级音频分发应用框架-A2DPA2DP通信流程A2DP音频编码本节介绍三个蓝牙音视频的高级应用框架:蓝牙音视频遥控应用框架-AVRCP:实现蓝牙无线遥控功能的规范。它只描述遥控器的控制功能,不负责处理音频视频数

2020-08-19 20:36:26 852 4

原创 BT-10の蓝牙技术原理のBT协议-应用框架の蓝牙通用访问协议(GAP)

BT协议-应用框架の蓝牙通用访问协议-GAP一,GAP连接模式二,GAP空闲模式三,GAP连接建立GAP 是其他所有蓝牙应用框架的基础,它描述了两个蓝牙设备监理通信时必要的基本操作,包括设备的发现,链路的建立和配置以及安全性设置。GAP描述了蓝牙底层传输协议的应用,主要包括 链路控制器(LC) 和 链路管理器(LM),同时为了安全起见,特涉及到一些高层协议,如逻辑链路控制协议(L2CAP),串口仿真协议(RFCOMM)和对象交换协议(OBEX)。从三个方面来介绍GAP:GAP连接模式,GAP空闲模式,

2020-08-18 11:08:15 712

原创 BT-9の蓝牙技术原理のBT协议の蓝牙音频视频控制传输协议(AVCTP)

蓝牙技术原理のBT协议の蓝牙音频视频控制传输协议-AVCTP一,概述AVCTP 定义了蓝牙音频视频设备之间传输控制指令和响应消息的标准。AVCTP给出了在点对点链路上传输指令与响应消息进而控制远端的蓝牙音频视频设备的过程。具体的指令与响应消息格式在相应的应用框架当中定义,如AVRCP,GAVDP,A2DP,VDP。AVCTP事务(Transaction)是指AVTCP指令和响应的交互过程。发送指令的控制器(CT)初始化会话过程并发送指令,接受指令的目标设备(TG)根据指令将自身的当前状况以响应消息的形

2020-08-17 22:36:59 1476

原创 BT-8の蓝牙技术原理のBT协议の蓝牙音频视频分发传输协议(AVDTP)

蓝牙音频视频分发传输协议-AVDTPAVDTP概述传输服务及传输过程信令过程 及 信令消息蓝牙音频视频分发传输协议(AVDTP): 定义了蓝牙设备间A/V数据流的协商,建立,和传输过程以及相互交换信令消息形式。AVDTP概述音视频的应用协议和应用框架总览为:AVDTP实现实体通过L2CAP分组进行:A/V数据流的传输A/V信令的交换如下图所示:这两者的关系:A/V信令 提供 A/V数据流 的发现,配置,建立和传输控制功能。基本的概念和术语:Stream:两个点对点设备之

2020-08-17 21:38:32 981

原创 程序员面试宝典笔记4-位运算与嵌入式编程

程序员面试宝典笔记4-位运算与嵌入式编程位制转换嵌入式编程static

2020-08-14 22:12:07 215

原创 程序员面试宝典笔记2-指针与引用

程序员面试宝典笔记2-指针与引用指针基本问题传递动态内存函数指针指针数组与数组指针迷途指针指针和句柄this指针 (C++)

2020-08-13 18:03:43 176

原创 BLE-11の蓝牙4.1协议栈详解の通用属性协议(GATT)

BLE-11の蓝牙4.1协议栈详解の通用属性协议(GATT)-待补充

2020-07-28 21:33:05 771

原创 BLE-8の蓝牙4.1协议栈详解の逻辑链路管理和适配层(L2CAP)

1)L2CAP架构L2CAP位于Bluetooth Host中,包括两个子模块:Channel Manager主要负责创建、管理、释放L2CAP channel。L2CAP Resource Manager负责统一管理、调度L2CAP channel上传递的PDU(Packet Data Unit),以确保那些高QoS的packet可以获得对物理信道的控制权。###################################L2CAP Protocol7.1 功能介绍经过Link La

2020-07-28 15:56:29 510

中缀->后缀.pptx

本资源是数据结构与算法中栈的应用:中缀表达式转为后缀表达式的PPT分解。便于自己理解,也上传到网络上供参考!

2020-04-17

头插法创建线性链表算法分解演示.pptx

头插法(反向)创建线性链表算法分解演示;头插法也就是创建线性链表时,每次新建的结点插入到头结点之后,这样最后一个插入的结点就成为了创建后链表的第一个结点(注意和头结点的区别)。

2020-01-04

空空如也

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

TA关注的人

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