自定义博客皮肤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)
  • 资源 (1)
  • 收藏
  • 关注

原创 android dummy codec

dummy codec1. 什么情况下需要用到虚拟codec一般在linux 或者 android 系统中,没有外挂codec,主控上也没内置codec,但是外挂了一个i2s、spdif的接口的芯片;比如说lt9611 ,芯片内置i2s 接口,用于接收主控的i2s 音频信号,等案例这个时候就需要一个dummy codec ,挂到平台上,注册声卡出来。当播放音频时:主控播放*.wav ----平台i2s rx ------设备lt9611 i2s —>输出2. 虚拟codec 的注册到平台的

2022-05-30 20:57:44 1168

转载 Type-c\Usb3.0

1.引脚定义图2.引脚定义说明要理解Type-C的原理,首先要了解他的PN即定义,Type-C口有4对TX/RX分线,2对USBD+/D-,一对SBU,2个CC,另外还有4个VBUS和4个地线 [2] 。当然,如果接收端只需要DP信号,不需要USB 3.1信号,那DP可以利用全部4对TX/RX差分线做输出,从而实现最多4lanes的DP输出,提供高达32.4Gbps的总输出带宽(每条lane可以输出8.IGbps),轻松实现5Kx3K60帧视频,甚至最高可达8K×4K 60帧视频(4:2:0数据)

2022-03-07 19:06:54 6717 1

原创 MIPI LCD屏厂初始化时序转换为 qcom,mdss-dsi-on-command

屏厂初始化程序转换为android/linux系统上电时序1. DCS_Short_Write_1P(0xE0,0x00);转换qcom,mdss-dsi-on-command 2.{0xF0, 5,{0x55, 0xAA, 0x52, 0x08, 0x00}}, 转换qcom,mdss-dsi-on-command

2022-02-10 14:39:38 5446

原创 《基于nrf52840 i2c 设备驱动》

基于nrf52840 i2c总线的eeprom和rtc设备驱动后续更新ble,zigbe,mesh ota方法

2021-12-18 17:19:44 617

原创 《android / 目录创建dir》

android根目录创建文件夹

2021-12-18 16:36:55 2535 2

原创 《linux 相关工具record》

简介:今天翻到之前学习的记录,整理了一下,但还是有点乱,发出来记录一下。主要的是ftp,nfs在linux上的部署方法,五、六、七是针对于nxp平台arm32位的一个soc实践记录,其中记录了kernel zImage 在emmc相关内容,有用也没用。一、repo相关,是一个链接介绍了repo,git管理代码的方式,前几天更新了一个nxp上repo上传代码的步骤,可以参考:https://blog.csdn.net/m0_57123509/article/details/121808895一:repo

2021-12-18 15:34:54 679

原创 《android AP/BP理解》

一:AP和BP简介大多数手机都至少存在两个处理器,一个负责AP侧,一个负责BP侧。操作系统、用户界面、应用程序都在application processor AP上执行,AP运行在arm上一个处理器上。也就是我们开发rk和nxp平台Android系统,日常所作的事情。而手机射频通信控制软件,运行在另一个处理器上,这个处理器cpu称为BP(Baseband)把射频功能放在bp上主要原因:   (1) 射频控制函数(信号调制、编码、射频为一等)都是与时间高度相关的。最好的办法把这些函数放在一个cpu上

2021-12-15 10:28:59 4484

原创 《yocto》 repo 上传原厂代码

一:简介:repo是管理代码的工具,通过xml文件管理一个项目中的所有git,下面介绍一下怎么传原厂代码到自己服务器。分为四个方面:1.nxp原厂代码下载2.上传repo中git到服务器3.上传管理git xml文件4.拉取上传代码,编译验证注意:下面以nxp 代码为例,区分不同代码需要更改revision:项目名-系统-日期-原厂版本区分(revision: imx8mini-yocto-20211209-imx-5.10.9-1.0.0)二:nxp原厂代码下载$ repo init -u

2021-12-09 11:25:16 588

原创 《高通mbhc耳机检测》

1.简介Mbhc是codec的一部分,用于检测耳机插入、移除到3.5mm的音频插孔中,以及检测耳机按钮的按下和释放,主要功能: 拔插检测 拔插类型检测:headset、headphone 按钮按下、释放检测 美标国标耳机检测 阻抗检测2.拔插类型美标耳机(US/CTIA headset 4线类型):MIC GND R L欧/国标耳机(Euro/OMTP 4线类型):GND MIC R LHeadphone(3线类型): GND R L如何区分国标(欧标)、美标耳机?

2021-12-09 10:53:30 6752 1

原创 C语言宏定义

doit:一些关于宏的高级定义记录,#include<stdio.h>enum{test0=0,test1,test2,test3,};// 在宏定义中,使用 # 将参数转为字符串#define TO_NAME_INDEX(X) #X,Xint main(){ printf("zyy.....%s\r\n",TO_NAME_INDEX(test3));}out:zyy@host-pc:~/zyy/$ ./main zyy.....test3

2021-11-24 10:14:42 1377

原创 《 linux regmap子系统》

doit一:简介最近在看高通音频相关的驱动,发现codec接口时spi接口,在驱动中找到对应spi接口驱动,发现和之前接触的codec rt5651-i2c驱动不一样,它采用的时regmap框架写的,就整理了一下简单的介绍,如下:首先,要明确一点:regmap是怎么出现的?以i2c为例,在linux内核里面有成千上万的i2c设备驱动。各种i2c设备都需要通过i2c子系统的api进行寄存器的操作。在各自的设备驱动中,i2c读写寄存器的操作通常被封装成2个静态函数xxx_i2c_red_reg()/

2021-11-14 14:10:35 1192

原创 《高通FCT Audio》之2元手电筒

简介:FCT是高通android平台带的,用于工厂大批量生产测试的软件测试方法。进入FCT模式,可以测试硬件的一些基本功能,在小批量、大批量生产时可以快速的测试smt贴出来的设备。一般测试的内容有,功能按键(volumes + 、volumes - 、power key、back,menu)、audio(speaker、mic、handset、ear)、camera(前摄、后摄)、sensor、wifi、bt、eth0、usb3.0、motor。原理:FCT模式下的UI c调用系统的控件(或者/dev

2021-11-11 10:00:18 2234

原创 《高通QCS8250》Debug XBL开机启动、进入fastboot花屏问题

问题描述:1.问题简介在系统开机启动,865平台在bootloader过程中和进入fastboot模式会出现花屏情况,情况如下:(图一是花屏显示,图二是调试正常显示)图一:图二:调试记录:针对上述问题:分析了产生的可能原因,重点排查产生问题的情况,原以为在分析的原因中,可以解决这个花屏问题,可是不如人愿。重新审视问题:按照正常调试流程,debug dsi-mipi信号,把必要要求:电压,reset时序,屏参,format,clk逐一验证排除,没有进展。突发奇想,改变屏的条件,在xbl

2021-10-15 22:11:25 1377 1

原创 《Linux异步通知》之青春往事

青春往事高中时期,当时是夏天,天气非常炎热。我们还是住宿舍,一个大院子,园子的南面是2m高的墙,东西两面是宿舍楼,北面是宿舍大门,把我们围得很安全,但宿舍很简陋,连锁都没有,所以到晚上时候,都是敞开门,穿着内裤睡觉,裤子也放在床尾。 由于是刚开学,几千块钱的学费都在自己手里攥着,有的同学就也放在了床尾。凌晨两点,正睡得熟,迷迷糊糊听见抓小偷。我当时听见这个顿时很兴奋,就跑了出来,一看一个人影正在翻南面的2m的高墙,身手很好,三下五除二就来到了墙头,跳了下去。我一个同学的学费被这个小偷顺了出去,也跟着翻

2021-10-09 22:22:37 306

原创 《linux内核中断》之 法外狂徒张三删库跑路

法外狂徒张三删库跑路真实案例:在今年2月份,国内一个程序员删库的消息传遍it界。他的几行代码,直接让上市公司微盟的市值一天蒸发超10亿,300百万用户直接受到影响。网上是谣言四起,可谓是最牛逼的删库跑路案例。删库跑路是我们程序员可望而不可及的,是传说。最终没有逃出法律的制裁,罚钱和判刑一样也没少,真是删库一时爽,身后火葬场。删库跑路,是我技术道路上永远无法企及的高度。但是对我们技术人员,千万不要因为一时脑热,做出不可挽回的错误i,让自己身陷牢狱之灾。除此之外,企业也应该完善安全机制和管理制度,顺便在想一

2021-09-25 15:55:31 447

原创 《Linux 内核定时器》之iPhone13真香

iPhone13真香系列iphone 的发布会在9月17号,我的一位小伙伴,在发布会结束之后就下单,晒在了朋友圈。作为一个,作为一个爱国主义着,当然要支持国产品牌。最主要的原因:一些品牌吃着中国的饭,砸着中国的碗。像前段时间的H&W的一些知名品牌,做出"停用中国棉花"的决定,所以本人也是内心很抵制一些非国产品牌。但是,第二天我俩聊天 , 12期免息,一个月500,还是值得入手的,啊,真香 !在真香的同时,希望苹果不要做“吃着中国的饭,还砸着中国的锅”!!!H&W就是个例子,天下哪有这样

2021-09-20 12:58:57 189 1

原创 linux驱动 阻塞和非阻塞IO 篇二

@上一篇介绍了linux阻塞与非阻塞的基本概念,以及应用程序的小demo和kernel层对应的api函数。那接下来就以实例来分析,如何在linux驱动层添加等待队列和轮询的方法,以及区别。**一:简介**在linux驱动中,存在很常见的两种设备访问模式,所以在编写驱动的时候,一定要考虑到阻塞和非阻塞。这样做有以下好处1. linux驱动标准的的写法,让你写的驱动正式,拿的出手,也能锻炼个人的规划能力、编程能力、思维能力;2. 提高个人的审美能力,当你去看一个驱动,里面的各种框架,组件的交叉的逻辑

2021-09-13 23:56:43 154

原创 linux 阻塞和非阻塞IO 篇一

@在linux驱动开发中有两种常见的设备访问模式,在编写驱动中要考虑到阻塞和非阻塞两种模式。简介这里的io不是我们所说的gpio引脚,是指input/output,也就是输入/输出,是应用程序对设备驱动的输入/输出操作。当应用程序访问设备驱动进行操作的时候,如果不能获取设备资源,阻塞式IO就会将应用程序挂起,直到设备资源可以获取为止。对于非阻塞IO,应用程序对应的线程不会挂起,它要么轮询等待,直到资源可以使用,要么直接放弃。总结:1->阻塞IO 应用程序对应的线程直接挂起,直到设备资源可以访

2021-09-07 16:17:05 223

原创 esp32初探

目录Esp32 启动流程外部flash外部psram性能查看 A:内存 B:cpu使用率1.Esp32 启动流程在esp32上电运行过程中,固化在rom里面的程序会检查对应gpio状态,从而判断处于下载模式还是flash运行模式。Flash启动:rom读取外置flash的地址(0x1000),加载并运行二级bootloader。Bootloader一段独立的小程序,对芯片频率初始化,并读取spi配置信息,对flash运行模式以及频率进行配置,然后根据分区表定义,从对应的地址加载应用程

2021-08-30 17:22:02 1491

原创 linux 并发与竞争

**并发与竞争**一.简介linux系统是一个多任务的操作系统,存在多个任务同时访问同一片内存区域,这些任务可能会相互影响覆盖内存中的数据,造成内存数据混乱。这个问题会导致系统panic。但总结一下有以下几个原因:a. 多线程并发访问b.内核抢占试访问c.中断程序并发访问d.smp多核间并发访问 并发访问带来的问题就是竞争。如果多个线程同时操作临界区的公共资源,线程之间就存在竞争关系,为了防止出现以上问题,我们在编写去佛那个的时候要考虑到并发与竞争。二.作用保护共享资源,防止并发访问

2021-08-30 16:24:48 195

原创 linux bcm43455 wifi led状态灯调试

前言:wifi 状态灯在嵌入式项目中很常见,同过状态灯可以判断wifi是否正常工作,不同的led status,可以表示数据发,收等。在nxp项目中,用到的是bcm43455 wifi (博通ap6255),需要增加一个led灯来表示wifi是否正常工作。有以下方案: 方案一:bcm43xx ap硬件有先关的led-gpio,由硬件来完成 方案二:无led-gpio,需要nxp主控引出一个gpio与wifi状态tx、rx、radio状态建立trigger 方案三:wifi驱动力面增加phytx0、p

2021-08-02 10:51:57 1195

原创 龙讯桥接芯片lt9611 hdmi out audio调试

前言:在nxp-imx8mm相关项目中用,使用龙讯的桥接芯片lt9611。在调试过程中,发现,audio挑显示器,在一些显示器上没有声音,主控的i2s clk,data信号都是输出到lt9611上的。于是在排查了一些必要条件后,把audio部分的问题归结到了lt9611 mcu的i2s接口上,即、lt9611 i2s 相关寄存器上。1.原理图:i2s:mclk,sclk,ws , data用示波器量都是有信号的。2.官方提供的单片机参考代码audio部分:可以看到整个代码中,只有在函数入口初始

2021-08-02 09:25:26 3761 5

原创 input 子系统(调试 ili251x-tp)

前言:学习这个input子系统是为了看当下项目中ili25xxtp的遇到的问题,也是对自己的一种积累。当前项目用到tp : ili25xx 触控芯片,在linux debian10上,由于系统对触控类设备支持不太友好,上层一些app bt network出现触控不准,触控不到问题。对比鼠标,app能正常工作。通过对比: 鼠标上报的是相对坐标rel,上层点击正常 tp上报的是绝对坐标abs,上层触控异常所以想通过改tp上报的键值,让tp像鼠标一样上报相对坐标,以下是改动部分,下周验证以下。st

2021-08-01 18:46:09 780

原创 linux-wifi/bt调试

wifi、bt开发指导rockchip平台rk wifi、bt调试ap系列:ap6210、ap6212、ap6255、ap6256、ap6356rtl系列:rtl8897、 rtl8811usb系列:8897nxp平台nxp wifi、bt调试ap系列:bcm43455、ap6255、wifi、bt调试步骤:1>wifi /bt固件2>wifi/bt 驱动3>wifi/bt 加载4>wifi/bt 上层调试工具5>wifi/bt debu

2021-07-09 13:02:56 3193 1

原创 iot zwave development guide

linux 安装z-wave简介linux 需要安装z-wave三个软件(二. 可以不安装) :一. zipgateway-7.13.01-Linux-stretch-armhf.deb二. 安装pyzip_ver1_23三. 安装zwarelocal-rpi.tar安装" 一 ,三"之后,电脑访问设备端网页ip,使用账户:密码(user:smarthome)登陆,无特殊说明,安装均选这yes,按回车。安装zipgateway-7.13.01-Linux-stretch-armhf.deb

2021-06-24 22:53:51 519

原创 《yocto》 nxp 原厂代码下载

nxp yocto install guide -01. repo set1 > Create a bin folder in the home directory.$ mkdir ~/bin (this step may not be needed if the bin folder already exists)$ curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo$ chmod a+x

2021-06-24 22:30:20 421

linux/android 串口应用调试源码

ttyS1.c 修改源码中的端口号就可以读写串口了

2021-10-09

空空如也

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

TA关注的人

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