瑞芯微
文章平均质量分 90
本专栏以rk3568为基础,讲解瑞芯微平台驱动部分开发的技巧等知识。
一口Linux
《从零开始学ARM》作者,长期分享嵌入式、linux、网络、arm知识。
展开
-
瑞芯微-I2S | ALSA基础-3
ALSA由一系列的内核驱动、应用程序编程接口(API)以及支持linux下声音的应用程序组成、ALSA项目发起的原因是linux下的声卡驱动(OSS)没有获得积极的维护,而且落后于新的声卡技术。Jaroslav Kysela早先写了一个声卡驱动,并由此开始了ALSA项目,随后,更多的开发者加入到开发队伍中,更多的声卡获得支持,API的结构也获得了重组。目前已经成为了linux的主流音频体系结构。原创 2024-04-30 23:10:37 · 1308 阅读 · 0 评论 -
瑞芯微-I2S | 音频驱动调试基本命令和工具-基于rk3568
基于Linux嵌入式设备常用调试方法很多,本文一口君把调试语音用到的工具和方法给大家做一个简单的介绍。原创 2024-04-01 21:32:05 · 1797 阅读 · 1 评论 -
瑞芯微 | I2S-音频基础 -1
最近调试音频驱动,顺便整理学习了一下i2s、alsa相关知识,整理成了几篇文章,后续会陆续更新。喜欢嵌入式、Li怒晓得老铁可以关注一口君账号。原创 2024-03-08 20:53:56 · 2485 阅读 · 0 评论 -
Camera | 15.闪光灯SGM3141概述
在部分版本中wled trigger代替wled_trigger_index,有一对trigger start lux index 和led trigger end lux index.增大wled trigger index参数的值,可以在更暗的场景中触发LEd闪光灯,减少该值,可以在更亮的场景中触发LED闪光灯。SGM3141具有1×/2×操作模式,用于控制闪光和火炬模式的输出电流。启用自动闪光后,聚光模式(少量LED电流)照射目标以计算完全闪光模式的AE和AF。在设备附近连接一个1μF陶瓷电容器。原创 2024-02-01 21:51:13 · 948 阅读 · 0 评论 -
自己实现一个自动检测网卡状态,并设置ip地址
阅读本文前,请先学习下面几篇文章。原创 2023-11-07 20:24:35 · 517 阅读 · 0 评论 -
瑞芯微 | 如何固定以太口地址为指定ip?
rxw的RK3568的evb1公板,有2个以太口,默认UI界面只能配置eth0,无法配置eth1,实际应用中,有时需要。本文介绍2个最简单的方法实现固定IP。原创 2023-10-12 20:45:46 · 834 阅读 · 1 评论 -
安卓如何设置开机启动某个程序?init.rc给你搞定
Adnroid系统就像是是运行在linux系统上的一个“服务进程”,并不算是一个完整的操作系统。这些服务进程是维持设备正常运转的关键,而这些进程的鼻祖就是init进程。进程ID为1,源代码位于system/core/init 目录。原创 2023-09-09 10:36:32 · 1701 阅读 · 0 评论 -
Camera | 12.瑞芯微摄像头自动焦距马达驱动移植
DW9714专为自动对焦和光学变焦照相手机、数码相机和摄像机应用而设计,由韩国动运国际有限公司(Dongwoon )设计生产。工作电压可达3.6V。DAC通过I2C串行接口控制,该接口以高达400kHz的时钟速率操作DAC。DW9714集成了上电复位电路、掉电功能和精确匹配的检测电阻。上电复位电路确保当电源上电时,DAC输出为0V,直到发生有效的写位值。它具有断电功能,可将器件的电流消耗降至最大1uA。原创 2023-09-01 21:56:23 · 917 阅读 · 0 评论 -
瑞芯微|rk3568 uart快速上手
UART使用硬件自动流控时,需要确保UART驱动使能硬件自动流控功能,且在dts中已经切换cts和rts流控引脚的iomux。建议在高波特率(1.5M波特率及以上)、大数据量的场景下都使用硬件自动流控,即使用四线UART。串口唤醒系统功能是在系统待机时串口保持打开,并且把串口中断设置为唤醒源。使用时需要在dts中增。板子上的测试程序,瑞芯微官方已经提供了: ts_uart.uart。处理器通过APB接口访问UART的数据,做控制,以及状态信息。下面是一口君自己编写的测试程序,可以实现简单的数据收发,原创 2023-07-29 10:37:48 · 1413 阅读 · 0 评论 -
瑞芯微|如何让拥有双网口的Linux设备实现数据包转发?
有喜欢Linux、驱动、嵌入式、网络,或者想和一口君侃大山的可以加我好友原创 2023-07-19 19:12:46 · 1875 阅读 · 0 评论 -
基于瑞芯微camera学习原创文章汇总pdf分享给大家
前面一段时间基于瑞芯微3568平台编写了camera系列文章,一共12篇,目前更新完毕。camera系列文章编写前后一共花费2个月时间,期间查阅了很多资料,做了很多实验,根据自己的理解,画了很多流程图、架构图,同时得到了瑞芯微技术讨论群里众多老铁的帮助,因此文章得到了很多粉丝的认可,很多老铁因为这个系列文章添加了一口君好友,能够和这么多大牛一起学习交流,人生一大快事!独乐乐不如众乐乐!一口君把所有文章整理成pdf文档,无条件分享给大家!获取方式见文章底部。原创 2023-06-25 19:25:16 · 826 阅读 · 0 评论 -
Camera | 11.瑞芯微摄像头采集图像颜色偏绿解决笔记
在实际调试基于瑞芯微平台的camera过程中,发现显示的图片发绿,摄像头知识点相当庞大,要想把所有细节全部搞清楚,难度很大,本系列文章仅从v4l2内核架构角度分析,所述内容仅是冰山一角,本系列文章更新暂告一段落,且学且珍惜。有对瑞芯微平台比较感兴趣的老铁,可以加我好友:yikoupeng拉你进瑞芯微技术讨论群。原创 2023-06-13 20:04:19 · 2637 阅读 · 0 评论 -
Camera | 10.linux驱动 led架构-基于rk3568
前面文章我们简单给大家介绍了如何移植闪光灯芯片sgm3141,该驱动依赖了led子系统和v4l2子系统。V4L2可以参考前面camera系列文章,本文主要讲述led子系统。原创 2023-05-31 18:41:05 · 1330 阅读 · 0 评论 -
Camera | 9.如何让camera支持闪光灯?-基于rk3568
瑞芯微sdk中没有专门针对sgm3141的驱动,网上搜了一大圈也没有搜到,很多闪光灯都是基于I2C接口,通过I2C来设置上光灯的工作模式,好在sdk中有类似的芯片rgb13h驱动,该驱动只有一个引脚用于闪光灯,和我们的功能很类似。拍照时上光灯瞬间亮一下,电流比较大,目前是1000mA,最大电流不能超过led最大承受能力。从log可以看出,app拍照的时候,闪光灯操作是通过v4l2下发的命令,flash开启需要先从torch过渡,这样电流可以慢慢增大,减少冲击。这样,打开app就可以看到上光灯的按钮。原创 2023-05-11 22:56:06 · 919 阅读 · 1 评论 -
Camera | 8.让rk3568支持前后置摄像头
本文主要目标是,支持前置摄像头0v5648、后置摄像头ov13850,以及移植过程遇到的一些小问题的解决。要让安卓识别前后置摄像头,还需要在以下文件增加后置摄像头ov13850、前置摄像头ov5684信息。rxw sdk中已经有这两个摄像头的驱动,但是需要增加片选的逻辑,在不重启的情况下要操作后置摄像头,执行下面操作即可。但是点解界面的切换按钮,获取不到前置摄像头图像,在这两个xml文件中增加这两个摄像头信息即可,打开app后,界面显示的是后置摄像头信息。开机后用命令抓帧,用的是前置摄像头。原创 2023-04-20 22:44:17 · 1590 阅读 · 7 评论 -
Camera | 7.瑞芯微rk3568平台摄像头控制器MIPI-CSI驱动架构梳理
因为有拍照、录制视频、直播等刚需,现在手机的摄像头基本都是高清,支持高清摄像头的SoC都支持MIPI-CSI。不同SoC的MIPI-CSI在实现上有一定差别,即使同一厂家设计生产的芯片也都不尽相同。本文基于瑞芯微rk3568平台evb1公板为例来详细讲解MIPI-CSI/DPHY驱动。阅读本文之前,建议大家先仔细学习前面几篇文章。原创 2023-04-12 22:10:07 · 8875 阅读 · 9 评论 -
Camera | 6.v4l2拓扑架构
这些功能模块,并不是都一定每个camera控制器都有的,有一些是通用的,比如,mainpath、selfpath,有一些要完全看SoC设计,即使瑞芯微的SoC,不同型号,差别也不小。所以具体问题要具体分析,不可教条。要添加到拓扑结构中,表示该模块的结构体中包含成员struct media_pad ,它和struct v4l2_subdev中的 struct media_entity entity;这些功能模块有的用于驱动csi、有的驱动isp、有的用于预览图像、有的用于统计视频信息、有的用于配置参数。原创 2023-03-13 23:08:33 · 1758 阅读 · 1 评论 -
Camera | 5.Linux v4l2架构(基于rk3568)
上一篇我们讲解了如何编写基于V4L2的应用程序编写,本文主要讲解内核中V4L2架构,以及一些最重要的结构体、注册函数。厂家在实现自己的摄像头控制器驱动时,总体上都遵循这个架构来实现,但是不同厂家、不同型号的SoC,具体的驱动实现仍然会有一些差别。读者可以通过本文了解各个结构体与对应的摄像头模块、SoC上控制器模块、以及他们之间接口关系,并能够了解这些硬件模块与V4L2架构之间关系。下一张我们基于瑞芯微rk3568来详细讲解具体V4L2的实现。原创 2023-03-02 22:41:32 · 4411 阅读 · 1 评论 -
Camera | 4.瑞芯微平台MIPI摄像头应用程序编写
v4l2是video for Linux 2的缩写,是一套Linux内核视频设备的驱动框架,该驱动框架为应用层提供一套统一的操作接口(一系列的ioctl)官网有一个简单的用于抓图的程序capture.c。本文后面基于该实例编写一个最简单的抓图程序。原创 2023-02-15 20:23:46 · 5225 阅读 · 15 评论 -
Camera | 3.瑞芯微平台MIPI摄像头常用调试命令
前面2篇我们讲解了camera的一些基础概念和知识。本文主要讲述在瑞芯微平台上摄像头开发常用的调试命令。原创 2023-02-07 21:27:07 · 5534 阅读 · 11 评论 -
Camera | 2.MIPI、CSI基础
上一篇我们讲解了camera的一些基础概念和知识。我们说了,现在的手机由于高分辨率的要求,现在基本上都是基于MIPI、CSI协议来实现的,本篇讲解MIPI、CSI的一些基础知识。原创 2023-01-16 22:16:04 · 10843 阅读 · 7 评论 -
Camera | 1.Camera基础知识
摄像头,大家已经非常熟悉了,遍布在生活的方方面面。尤其这上段时间炒的非常火的南京医生上门打小孩老人事件,由于有视频有真相,鲁医生直接被陷入万劫不复的境地。其中的是非对错本文不讨论了,法律和道德自有评判。但这说明了,摄像头对我们的日常生活影响实在太大了。原创 2023-01-06 21:51:11 · 3845 阅读 · 1 评论 -
rk3568 | rk平台GPIO冲突检测小技巧
上一篇我们讲解了如何编写gpio驱动,但是实际操作中,经常发现gpio引脚被占用的情况发生,那么本篇文章就详细讲解rxw平台下如何快速定位gpio复用问题以及如何解决。原创 2022-12-26 11:48:01 · 2654 阅读 · 0 评论 -
rk3568 | 瑞芯微平台GPIO引脚驱动编写
本文基于rk3568平台。rxw可获取更丰富的资料。GPIO(General Purpose Input/Output Port):通用输入输出端口。除作为一般的输入/输出功能外,还可以配置为中断和模拟UART、CAN、PWM、I2C、SDMMC、CLK等功能。实际上,GPIO编写还是很简单的,驱动不论多复杂,最终都还是由这些基本的函数来实现的,这是因为在开发一个新的产品的时候,sdk中很多硬件的配置信息,往往是厂家自己出厂的一个demo板子的硬件信息,原创 2022-12-20 22:43:56 · 9047 阅读 · 4 评论 -
音视频学习之ffplay基础命令整理
ffplay是FFmpeg提供的一个极为简单的音视频媒体播放器(由ffmpeg库和SDL库开发),可以用于音视频播放、可视化分析 ,提供音视频显示和播放相关的图像信息、音频的波形等信息,也可以用作FFmpeg API的测试工具使用。由于是基于FFmpeg开发所以ffmpeg支持的视音频格式它基本上都支持,不过ffplay不是图形化界面需要通过CMD命令窗口来操作。原创 2022-11-19 10:17:18 · 1355 阅读 · 0 评论 -
瑞芯微 | 摄像头ov13850移植笔记
品牌:Omnivision型号:CMK-OV13850接口:MIPI像素:1320WOV13850彩色图像传感器是一款低电压、高性能1/3.06英寸1320万像素CMOS图像传感器,使用OmniBSI+?技术提供了单-1320万像素(4224×3136)摄像头的功能。通过串行摄像头控制总线(SCCB)接口的控制,它提供了全帧、下采样、开窗的10位MIPI图像。原创 2022-11-08 20:57:45 · 6061 阅读 · 18 评论 -
Linux内核 RTC时间架构
上一篇文章我们给大家讲解了基于瑞芯微rk3568平台芯片hym8563驱动的移植,本文给大家详细讲解Linux内核的时间子系统。《》原创 2022-10-12 21:41:30 · 2142 阅读 · 5 评论 -
Linux驱动|rtc-hym8563移植笔记
RTC:实时时钟的缩写是(Real_Time Clock)。RTC 是集成电路,通常称为时钟芯片。HYM8563是一款低功耗CMOS实时时钟/日历芯片,由武汉昊昱公司设计生产。它提供一个可编程的时钟输出,一个中断输出和一个掉电检测器,所有的地址和数据都通过I2C总线接口串行传递。最大总线速度为400Kbits/s,每次读写数据后,内嵌的字地址寄存器会自动递增。原创 2022-09-27 21:48:16 · 3812 阅读 · 2 评论 -
瑞芯微rk356x板子快速上手
瑞芯微出品的RK3568是一款定位中高端的通用型SoC,采用22nm先进制程工艺,主要面向工业互联网、HMI、NVR存储、车载中控、工业网关等领域。物理隔离的开发环境,可能会有一些麻烦,我是自己制作了一个虚拟机,然后确认编译没问题了,才把环境再导入。机缘巧合最近接触了一下瑞芯微的平台,从拿到sdk到完整编译跑起来,还是遇到了一些坑,分享给大家。此处不知道什么原因,不用这个命令编译,看到的设备树文件日期总是不对。公版有2个以太口,其中1个默认是eth0,一个默认是eth1,原创 2022-09-20 22:55:33 · 4176 阅读 · 0 评论