前言   本篇继续分析底板原理图mipi电路原理图、mipi摄像头输入硬件接口详解。 <br> RK3568芯片摄像头接口   查看RK3568的芯片手册,摄像头接口并不支持直接sensor模拟信号输入,只能接收mipi信号,RK3568的摄像头接口引脚如下:     只支持mipi的数字信号摄像头。  本来计划是使用RK3568直接接入sensor模拟信号已达到最低延迟,目前看来是不现实,前面需要一个模数转换接入sensor模拟信号,或者直接接入mipi摄像头,所以这个需要做出来测试下融摄像头输入到输出需要多少ms。 <br> Mipi接口   mipi接口是一种移动...

  I0k1y5VLmcsM   2023年12月12日   20   0   0 RK3568

前言   前面输出了HDMI,LVDS,MIPI-DSI,这里还有一个常用的显示接口就是VGA了,这个用的不多了,一般板子都是hdmi了。  本篇分析底板VGA电路。 <br> VGA接口   VGA(VideoGraphicsArray)视频图形阵列是IBM于1987年提出的一个使用模拟信号的电脑显示标准。VGA接口即电脑采用VGA标准输出数据的专用接口。VGA接口共有15针,分成3排,每排5个孔,显卡上应用最为广泛的接口类型,绝大多数显卡都带有此种接口。它传输红、绿、蓝模拟信号以及同步信号(水平和垂直信号)。   <br> VGA电路分析 开发板的底板原理图 VGA...

  I0k1y5VLmcsM   2023年12月07日   14   0   0 引脚封装

前言   本篇继续分析底板原理图mipi/lvds屏幕电路原理图、硬件接口详解。 <br> LVDS与MIPI的区别   液晶屏有RGBTTL、LVDS、MIPI、HDMI接口,这些接口区别于信号的类型(种类),也区别于信号内容。 RGBTTL接口信号类型是TTL电平,信号的内容是RGB666或者RGB888还有行场同步和时钟; LVDS接口信号类型是LVDS信号(低电压差分对),信号的内容是RGB数据还有行场同步和时钟; MIPIDSI接口信号类型是LVDS信号,信号的内容是视频流数据和控制指令。  注意:LVDS和MIPI有点特殊:LVDS和MIPI的物理接线是一样的,都是五...

  I0k1y5VLmcsM   2023年12月06日   9   0   0 LVDS引脚mipi原理图

前言   驱动写好后,用户层使用系统函数调用操作相关驱动从而实现与系统内核的关联,本篇主要就是理解清楚驱动如何让用户编程来实现与内核的交互。 <br> 杂项设备文件操作集 cd/usr/src/linux-headers-4.18.0-15 viinclude/linux/fs.h   搜索到(vi则直接使用“/”):   structfile_operations{ structmoduleowner; loff_t(llseek)(structfile,loff_t,int); ssize_t(read)(structfile,char__user,size_t,loff_t...

  I0k1y5VLmcsM   2023年11月30日   15   0   0 驱动开发设备节点

前言   驱动的开发需要先熟悉基本概念类型,本篇讲解linux杂项设备基础,还是基于虚拟机ubuntu去制作驱动,只需要虚拟机就可以尝试编写注册杂项设备的基本流程。 <br> linux三大设备驱动 字符设备:IO的传输过程是以字符为单位的,没有缓冲,比如I2C(SDA、SCL),SPI(MISO、MOSI、SCLK、CS)。 块设备:IO的传输过程是以块为单位的,跟存储相关的都属于块设备,比如tf卡,sd卡。 网络设备:IO的传输以socket套接字来访问的。 <br> 杂项设备 杂项设备是属于字符设备,可以自动生成设备节点,设备节点位于/dev/目录下,是设备...

  I0k1y5VLmcsM   2023年11月22日   19   0   0 设备号linux

前言   前面做高速电路,选择是阿li狗,外围电路由于读者熟悉AD,使用使用ad比较顺手,非高速电路就使用AD了,其实AD也可以做高速电路,由于笔者从13年开始做硬是从AD9开始的,所以开始切入AD做硬件软件学习成本会低很多。 <br> AltiumDesigner 简介   AltiumDesigner是原Protel软件开发商Altium公司推出的一体化的电子产品开发系统,主要运行在Windows操作系统。这套软件通过把原理图设计、电路仿真、PCB绘制编辑、拓扑逻辑自动布线、信号完整性分析和设计输出等技术的完美融合,为设计者提供了全新的设计解决方案,使设计者可以轻松进行设计,熟...

  I0k1y5VLmcsM   2023年11月19日   21   0   0 中文显示原理图ad17插入图片

前言   做硬件做系统做驱动,很难从核心板做起,所以我们先依赖核心板,分析底板周围的电路,然后使用AD绘制原理图和设计PCB,打样我司测试底板,完成硬件测试,再继续系统适配,驱动移植,从而一步一步完善成为一个功能完善的底板,且搭载了我们跳完的系统和驱动。  本篇文章,先从底板的电源电路和RTC时钟电路分析。 <br> 说明   分析原理图的过程中,常用的电阻,电容,电感,通用接插件这些元器件不进行说明,默认情况下,笔者绘制板子将会直接使用0603贴片封装的相关元器件,2.54mm或者1.27mm的dip排针,电容有部分要使用点电解电容(电感的封装跟点解电容一样),文章中不会进行仔细...

  I0k1y5VLmcsM   2023年11月19日   15   0   0 原理图

前言   上一篇项目已经构建好了Qt,板子接入mipi屏幕也跑起来了,Qt也能正常运行了,现在需要接入定制开发的sdk,sdk中使用了硬解码等资源涉及到bsp的mpp,所以下一步就是引入mpp和sdk到Qt开发环境中,从而Qt中可以调用sdk接口进行进一步的应用结合开发了。 <br> 注意   本文公开了Qt开发嵌入式主板应用的实际过程,提供给读者学习参考,基本流程一致(但是有经验的开发板方案商一般会直接提供基于SDK的Qt基础环境Demo的虚拟机),本次算是额外走了一次过程,记录下,仅供参考。  本文所有资料不对外提供,遵守基本的职业道德是一切的根本,重在学习熟悉解决问题的过程。...

  I0k1y5VLmcsM   2023年11月13日   20   0   0 MPPQtRK3588

前言   网页很多时候是动态的,于是本篇文章目标实现一个简答的动态页面---页静态页面互相跳转,点击可以跳转到子页面。 <br> Demo    下载地址   链接:https://pan.baidu.com/s/1bbhcu1XTiaJRYGRQRG5a0g?pwd=1234 <br> HTML基本页面交换   上一篇的“HelloWorld”应用程序确实输出了简单的纯文本。但网络的语言是HTML。因此,让看看如何生成HTML。将输出当前时间,并显示列表对象中的一些数据。 创建新的请求处理   与第一个HelloWorldController类似,创建另一个名为Lis...

  I0k1y5VLmcsM   2023年11月12日   32   0   0 Qt轻量级http服务器Qt

前言   做网站与云端后台开发,购买了阿里云的域名,但是使用了腾讯云的服务器,所以需要将域名(没有备案)转到腾讯云。 前提条件 域名   查询相关的域名,公司域名则最好新建公司模板(域名过户也是个需要等待几天),以下是腾讯云注册模板(域名所属为信息模板者,建议先决定购买哪个服务器,然后再在对应的服务商购买域名,域名转出需要注册成功后60个工作日以后才可以进行),如下图:    (注意:建议先购买云服务器,云服务器价格服务差距较大,后面转域名也可以,但是转入域名是需要钱的,本次转入就是五十,差不多是第一年申请的费用)。  然后等待信息模板通过认证,腾讯云2天,阿里云差不多是3天。   购买服务器...

  I0k1y5VLmcsM   2023年11月12日   55   0   0 腾讯云服务器插入图片

前言   编译ubuntu驱动之前,发现使用的gcc是7.3.0,而使用apt管理和下载的都无法直接或间接安装gcc7.3.0,于是只能从源码安装gcc7.3.0编译器。 <br> GCC 概述   GCC是以GPL许可证所发行的自由软件,也是GNU计划的关键部分。GCC的初衷是为GNU操作系统专门编写一款编译器,现已被大多数类Unix操作系统(如Linux、BSD、MacOSX等)采纳为标准的编译器,甚至在微软的Windows上也可以使用GCC。GCC支持多种计算机体系结构芯片,如x86、ARM、MIPS等,并已被移植到其他多种硬件平台。  GCC原名为GNUC语言编译器(GNU...

  I0k1y5VLmcsM   2023年11月02日   21   0   0 g++linux驱动开发编译器

前言   前面学习了驱动的基础框架,上一篇编译了gcc7.3.0,那么为了方便很好的熟悉流程,本篇,将使用ubuntu18.04,直接编译ubuntu18.04的驱动,然后做好本篇文章的相关实战测试。 <br> Ubuntu虚拟机准备 步骤一:安装虚拟机   本次使用之前rk3568的ubuntu18.04,笔者没有重新弄了,安装虚拟机的过程请自行搜索查找完成。   步骤二:获取内核版本号   获取内核版本号是为了确认内核版本号一致。 sudocat/proc/version    步骤三:校准编译器版本   前面获取了内核的编译器版本是gcc7.3.0,但是本机是gcc7.5,...

  I0k1y5VLmcsM   2023年11月02日   44   0   0 Linuxbc插入图片

前言   在arm上做了Qt的应用程序,为了在局域网实现web页的访问方式来配置arm上Qt的程序,局域网轻量级http服务器是很好的实现方式之一,有机会做国产麒麟上Qt的http服务器,正好接触到了QtWebApp可以实现。  本篇实战解说QtWebApp的轻量级Demo。  本篇篇幅较长,为了保持基础的完整性将必要的东西都放在本篇。 <br> Demo    下载地址   链接:https://pan.baidu.com/s/1tSFWCTsbPY5c1rWo2Mxz_Q?pwd=1234 <br> QtWebApp(HTTPServerinC) 概述   QtWe...

  I0k1y5VLmcsM   2023年11月02日   25   0   0 QtHTTPqtwebapp

前言   上一篇使用QtWebApp的基于Qt的轻量级http服务器实现了一个静态网页返回的Demo,网页服务器很重要的就是日志,因为在服务器类上并没有直接返回,所以,本篇先把日志加上。 <br> Demo    下载地址   链接:https://pan.baidu.com/s/1BPVRLS07qk-WPi-txERKbg?pwd=1234 <br> 日志系统 生产环境需要查看旧的日志消息,例如两天前的日志消息。   可以简单地将输出重定向到一个文件(MyFirstWebApp>logfile.txt),但这有两个问题: 在许多系统上,输出重定向有些慢。 日...

  I0k1y5VLmcsM   2023年11月02日   38   0   0 HTTP日志文件

前言   qt提供了q3d进行三维开发,虽然这个框架没有得到大量运用也不是那么成功,性能上也有很大的欠缺,但是普通的点到为止的应用展示还是可以的。  其中就包括华丽绚烂的三维图表,数据量不大的时候是可以使用的。 <br> Demo:Q3DScatter散点图演示效果        <br> Q3D提供的三维图表   依赖QtDataVisualization。在安装qt的时候要选择安装QtDataVisualization模块。 Q3DScatter散点图   Q3D的散点图,性能大约支撑1000个点可以不卡顿,具体依赖pc,1000个点是什么概念,可以理解为:10x1...

  I0k1y5VLmcsM   2023年11月02日   48   0   0 Qt散点图Qtq3d散点图

前言   之前在ubuntu上发布qt程序相对还好,使用脚本,在麒麟上发布的时候,使用脚本就不太兼容,同时为了实现直接点击应用可以启动应用的效果,使用linuxdeployqt发布qt程序。  本篇文章依然是继续发布主题,有centOS的qt项目需要发布,系统是CentOS8.2,同时也做了CentOS7.5的发布(CentOS7.5整体差上不差,就是需要先yum卸载自带的cmake,然后源码安装cmake3.4) <br> 相关博客   《Qt实用技巧:ubuntu发布程序打包流程(解决插件xcb加载失败)》:在ubuntu上发布程序遇到xcb问题,当我们将其部署到另外同样环境但...

  I0k1y5VLmcsM   2023年11月02日   53   0   0 centosQtlinuxdeployqt

前言   之前特定的mysql版本msvc版本已经调通了,但是为了更好的跨平台,所以选择用mingw32版本,于是需要编译mysql驱动的mingw32版本的驱动库,以便提供给qt连接mysql使用。 <br> 编译环境 Qt5.9.3mingw32   安装得时候记得要勾选上源码 mysql-installer-community-8.0.16.0    下载数据库   https://downloads.mysql.com/archives/community/   <br> 编译mysql驱动库(Qt5.9.3+mysql8.0.16) 步骤一:安装Qt5.9.3...

  I0k1y5VLmcsM   2023年11月02日   20   0   0 mysql数据库插入图片

前言   前面注册了账号,实名认证属于个人,个人代理申请公司,但是公司作为著作权人,保存无法通过,所以是需要通过机构注册进行实名企业认证才可以了。  所以本篇,是公司企业作为主体注册并通过实名认证。 <br> 著作权人需要已实名认证   这里企业作为其他组织的著作权人,也需要申请机构账号,因之前申请和实名认证的是个人账号,而给企业申请的时候提示没有认证。    要更改手机号和邮箱。 更换之前个人账户的手机号   (一个手机号只能使用一次,只能找个手机号背锅了)   更换之前个人账户的邮箱   (一个邮箱只能使用一次,好在QQ邮箱可以申请别名)   <br> 计算机软件著...

前言   本篇就适合代码崩溃的方法,可以定位到代码崩溃原因,测试Demo。 <br> 使用gdb定位Qt的release(国产麒麟系统) 步骤一:新建立一个简单的应用    步骤二:造崩溃代码 DumpWidget::DumpWidget(QWidgetparent): QMainWindow(parent), ui(newUi::DumpWidget), _pTimer(0) { ui->setupUi(this); LOG<<_pTimer; if0 if(!_pTimer) { _pTimer=newQTimer(this); } endif LOG&lt...

  I0k1y5VLmcsM   2023年11月02日   23   0   0 qt崩溃定位国产麒麟Qt

前言   上一篇,通过研究,可以定位到函数,本篇进一步优化,没有行数,程序较为复杂的时候,就无法定位,所以进一步定位。  本篇做了qBreakpad的研究,但是没有成功,过程也还是填出来,后来突然注意到gdb出现行数的方法,并通过了几轮测试以及实战,确实可以定位到行数,所以为了大家方便,把国企麒麟上的Qt崩溃方法分享出来。  本篇文章比较长,就不分篇了,同时还做了专项测试。 <br> 注意   阅读者如果一开始有点懵,可能先要看先大致扫一下:《麒麟系统开发笔记(十):在国产麒麟系统上使用gdb定位崩溃异常方法流程以及测试Demo》,本篇也是解决上一篇探讨的遗留问题(只定位了函数,未...

关注 更多

空空如也 ~ ~

粉丝 更多

空空如也 ~ ~