首页 > 产品中心 > 自有产品

嵌入式-嵌入式体系-开发- 21ic学习网

作者:欧宝体育电竞官网入口 信息来源:欧宝体育app入口 发布日期:2021-09-06 18:24:17 点击次数: 5

  英特尔则从头界说这种技能为IPU((InfrastructureProcessingUnit,根底设施芯片),“在大多数状况下,IPU从财政视点来说关于云服务供给商极具吸引力”,Guido Appenzeller英特尔公司数据渠道事业部首席技能官如是说。……

  关于HBM3的音讯,海力士早前曾表明单芯片能够到达5.2Gbps的I/O速率,带宽到达665GB/s,将远超HBM2E。但从Rambus最新发布的HBM3内存子体系来看,数据传输速率到达了8.4Gbps,宽带到达1TB/s,阐明HBM3还有着更大的潜力。并且作为集成了PHY和操控器的完好内存接口子体系,Rambus HBM3计划的推出也意味着HBM3的实在问世也将不远了。……

  X代表着“不知道”,在数学中它也是“系数”,乃至它能够指代任何能够代表的东西或是“无量”。在电子职业具有五花八门的处理器,而在异构核算和超异构核算成为后摩尔年代的“新宠”下,职业遍及运用XPU代表非CPU类处理器或加速器,而安谋科技(Arm我国)则将XPU界说为敞开的智能数据流交融核算渠道。……

  英特尔则从头界说这种技能为IPU((InfrastructureProcessingUnit,根底设施芯片),“在大多数状况下,IPU从财政视点来说关于云服务供给商极具吸引力”,Guido Appenzeller英特尔公司数据渠道事业部首席技能官如是说。……

  关于HBM3的音讯,海力士早前曾表明单芯片能够到达5.2Gbps的I/O速率,带宽到达665GB/s,将远超HBM2E。但从Rambus最新发布的HBM3内存子体系来看,数据传输速率到达了8.4Gbps,宽带到达1TB/s,阐明HBM3还有着更大的潜力。并且作为集成了PHY和操控器的完好内存接口子体系,Rambus HBM3计划的推出也意味着HBM3的实在问世也将不远了。……

  X代表着“不知道”,在数学中它也是“系数”,乃至它能够指代任何能够代表的东西或是“无量”。在电子职业具有五花八门的处理器,而在异构核算和超异构核算成为后摩尔年代的“新宠”下,职业遍及运用XPU代表非CPU类处理器或加速器,而安谋科技(Arm我国)则将XPU界说为敞开的智能数据流交融核算渠道。……

  据一家名为Data Bridge Market Research的陈述称,轿车智能天线的市场需求增加势头微弱,2020 年至 2027 年以 14.8% 的复合年增加率增加,估计到2027年市场规模将到达大约58亿多美元。……

  我国深圳市,2021年8月31日 – 高功用现场可编程逻辑门阵列(FPGA)和嵌入式FPGA(eFPGA)半导体知识产权(IP)范畴的领导性企业Achronix半导体公司,与在FPGA和专用集成电路(ASIC)范畴中供给从规范拟定到芯片完结规划服务的Signoff Semiconductors公司宣告树立协作伙伴关系,为人工智能和机器学习(AI/ML)运用供给专业的FPGA和eFPGA IP规划服务解决计划。Signoff将运用Achronix的FPGA和eFPGA IP技能开发人工智能和深度学习加速器、推了解决计划和边际物联网(IoT)处理器。此次协作将运用Signoff Semiconductors在FPGA和ASIC规划方面经过验证的专业知识,以及Achronix抢先的Speedster7t FPGA芯片和Speedcore eFPGA IP渠道,加速客户产品上市时刻。 跟着人工智能和机器学习高效处理算法的规划杂乱性日益进步,客户需求与经历丰富的规划服务公司协作,这些公司具有在抢先的半导体渠道上开发解决计划范畴内的专业知识。此次协作使Signoff Semiconductors能够直接运用Achronix的芯片、IP和支撑服务,然后加速客户产品的上市时刻。Signoff Semiconductors具有经过职业验证的专业规划服务,专心于为人工智能/机器学习运用供给FPGA和ASIC规划。这种专业技能对Achronix客户来说对错常抱负的,能够使他们运用同一家规划服务公司来完结依据FPGA和eFPGA IP的解决计划。 “Achronix与Signoff Semiconductors之间协作,为咱们的客户供给了经过验证的、专业的人工智能/机器学习规划服务,”Achronix市场营销副总裁Steve Mensor表明,“该公司在FPGA和集成了eFPGA IP的ASIC规划方面具有专业的才能,使咱们的客户能够去规划独立的FPGA芯片,然后运用相同的规划服务协作伙伴将这些规划迁移到具有eFPGA IP的ASIC上。” “转向Achronix FPGA给咱们的对外协作性解决计划组合供给了有力弥补。经过尽力,咱们将一同为咱们的一起客户供给了巨大的潜力,使他们能够加速产品开发进程。”Signoff Semiconductors首席执行官兼联合创始人Vikram Khemchandani表明:“Achronix FPGA和eFPGA技能解决计划是高功用数据加速运用的抱负挑选。”

  在上一篇教程 降压型开关电源教程 中,咱们学习了降压型开关电源。今日咱们一同来学习升压型(Boost or Step-up)开关电源。原理让咱们从下面的这个经典升压型开关电源电路开端:经典开关电源电路实践运用中图中的开关一般是场效应管,但为了简略和洽了解起见,咱们用通用开关符号替代。假定开端时的开关是断开的,电流从 10 伏电源流过电感、流过二极管,然后给电容充电。二极管两边会有一个小小的压降,咱们假定它是 0.5 伏。因而,输出电容被充电到 9.5 伏。到现在为止,咱们仍是在下降电压,且让咱们耐性点。开关断开,电容充电下一步,闭合开关。二极管会阻挠电容放电。因而,输出电压维持在 9.5 伏:开关闭合,电压坚持可是,现在咱们有一个从输入电压经过电感到地的电流通路:电流通路假如咱们一向将开关闭合,咱们底子上是在经过电感将输入短路。那样的话,一些很欠好的作业将会发生。电感被烧掉咱们可不想那么做。咱们仅仅在极短的时刻内闭合电感。咱们仅仅闭合开关一小段时刻,以便刚好满意一些电流流过电感。当咱们这样做时,咱们是在将电能以磁能的办法存储在电感中。现在咱们在电感中以电磁能的办法存储了一些能量,咱们敏捷地断开开关。敏捷断开开关因为电感中的电流不会忽然改动,电流只能持续流过电感、流过二极管,然后流入输出电容。也便是说,能量从电感传递到电容。跟着电感中磁场的坍塌,电容两头的电压被升高了。要留意,电子的活动方向是和传统电流方向相反的,图中电感的左边会因为电流活动而堆集负电荷,相应的,右侧就会因为电子流出而呈现高电压。咱们的升压转化器(Boost Converter)现在现已进步了电压:敏捷断开开关 电压升高前面说过,咱们不希望闭合开关的时刻太长,因为时刻太长会导致短路。因而,咱们用一个高频的方波(Pulse Width Modulated) 来操控开关的闭合和断开:高频方波操控经过增加操控方波的占空比,能够加速电容两头电压抬升的速度,然后进步输出电压。可是, 你怎样知道输出电压究竟是多少呢?讲义中或许会看到这个公式(duty cycle 是指占空比):不管用的公式这个公式只在电流很小的时分管用,在实践电路中,输出电压输出电压和方波占空比、电感的巨细、开关速度、输出电路等等都相关。因而,同降压型(Buck)开关电源相同,假如咱们希望树立一个实在有用的升压电源,咱们需用一个一站式操控芯片。该芯片能够主动调理操控方波的占空比,以保证一个安稳的输出电压。一站式解决计划咱们运用凌力尔特(Linear Technology)的 LT1370 这款芯片来制作升压型开关电源:50瓦电源电源的输入和输出端都接入了电解电容和陶瓷电容,以滤除电流中的高频信号。这是一种开关电源的常见做法:滤波电容为了进步转化功率,咱们运用肖特基二极管,正向压降越低越好:肖特基二极管下面是可供给最大输出为 30 伏的反应电阻网络:反应电阻Vout 在可调电阻为最大值(10k)时最大:下面是一些新花样,这些器材用于操控回路频率补偿,底子上,它们帮忙操控器习惯输出电压的细小改变,以输出洁净的直流电:频率补偿学习怎样规划补偿电路需求许多杂乱的数学运算和操控理论知识,本文不做评论。好音讯是,大多数时分您只需运用芯片数据表(datasheet)中的推荐值,您的电路就会跑起来。安稳回路的办法焊起来从把带有散热片的主控芯片焊接到洞洞板的中心开端,周围留下满意空间,以放置其他器材。坚持元件连线短且焊锡满意粗。再焊接上输出电容:再焊接上反应电阻,连线越短越好:最终,在接近输入的当地焊接上频率补偿电阻和电容,引脚 3 和 6 悬空即可:让咱们看看板子的底部。请留意我怎样组织组件,以便我能够从输入到输出有一个简略的接衔接地。我将陶瓷输入滤波电容直接焊接在操控器的输入引脚上。陶瓷输出滤波电容和输出电解电容平行。跑起来现在假如你给设备上电,能够将输入电压进步到 30 伏。能够进步到 30 伏它只能输出大约 50 瓦的功率,不然设备会过热。它的输入电流约束在 5 安培。留意我说的是输入电流约束,而不是输出电流约束。比方咱们的电源输出 12 伏电压,输出电流为 1安培。因而输出功率为 12 瓦。当我用 5 伏直流电作为其输入时,它的电流到达 2.99 安培:也便是说,输入电流高于输出电流。这是因为咱们不能随便创造出能量。为了进步输出电压,咱们不得不从输入攫取更多的电流。整体而言,咱们的升压开关电源能到达 80% 的功率。最终,值得留意的是,出于安全原因,电路的规划约束为 30 伏输出,但来自负电容器的 30 伏输出也会构成一些损坏。全文完,假如喜爱,就点个“赞”或许“在看”吧。

  写在前面 蜂鸣器是最常用的发声期间,信任许多人的电子之路便是从规划蜂鸣器、驱动蜂鸣器作为开端的,其驱动电路尽管简略,可是却十分有学识,今日和咱们来共享一下规划细节。资料来历:芯片电子之家Part1 摘要  蜂鸣器是电路规划中常用的器材,广泛用于工业操控报警、机房监控、门禁操控、核算机 等电子产品作预警发声器材,驱动电路也十分简略,可是许多人在规划时往往随意规划,导 致实践电路中蜂鸣器不发声、细微发声和乱发声的状况发生。  下面就 3.3V NPN 三极管驱动有源蜂鸣器规划,从实践产品中剖析电路规划存在的问题,提出电路的改善计划,使读者能从小小的蜂鸣器电路中学会剖析和改善电路的办法,然后规划出更优异的产品,到达抛砖引玉的效果。Part2 常见过错接法  图1 为典型的过错接法,当 BUZZER 端输入高电平时蜂鸣器不响或响声太小。当 I/O 口为高电平时,基极电压为 3.3/4.7*3.3V≈2.3V,因为三极管的压降 0.6~0.7V,则三极管射 极电压为 2.3-0.7=1.6V,驱动电压太低导致蜂鸣器无法驱动或许响声很小。图2 过错接法2  图2 为第二种典型的过错接法,因为上拉电阻R2,BUZZER 端在输出低电平时,因为 电阻R1和R2的分压效果,三极管不能牢靠关断。  图3 为第三种过错接法,三极管的高电平门槛电压就只要 0.7V,即在 BUZZER 端输入 压只需超越0.7V就有或许使三极管导通,明显0.7V的门槛电压关于数字电路来说太低了, 电磁搅扰的环境下,很简略构成蜂鸣器鸣叫。  图 4 为第四种过错接法,当CPU的GPIO管脚存在内部下拉时,因为 I/O 口存在输入阻抗,也或许导致三极管不能牢靠关断,并且和图3相同BUZZER端输入电压只需超越0.7V就有或许使三极管导通。  以上几种用法我觉得也不能说是彻底不可,关于器材的各种参数要求会比较限制,不利于器材选型,抗搅扰功用也比较差。Part3 NPN 三极管操控有源蜂鸣器惯例规划  图 5 为通用有源蜂鸣器的驱动电路。电阻R1为限流电阻,防止流过基极电流过大损坏三极管。电阻R2有着重要的效果,榜首个效果:R2 相当于基极的下拉电阻。假如A端被悬空则因为R2的存在能够使三极管坚持在牢靠的关断状况,假如删去R2则当BUZZER输入端悬空时则易遭到搅扰而或许导致三极管状况发生意外翻转或进入不希望的扩大状况,构成蜂鸣器意外发声。第二个效果:R2可提高高电平的门槛电压。假如删去R2,则三极管的高电平门槛电压就只要0.7V,即A端输入电压只需超越0.7V 就有或许导通,增加R2的状况就不同了,当从A端输入电压到达约2.2V 时三极管才会饱满导通,具体核算进程如下:  假定β =120为晶体管参数的最小值,蜂鸣器导通电流是15mA。那么集电极电流IC=15mA。则三极管刚刚到达饱满导通时的基极电流是 IB=15mA/120=0.125mA。流经R2的电流是0.7V/3.3kΩ=0.212mA,流经R1的电流 IR1=0.212mA 0.125mA=0.337 mA。最终算出BUZZER端的门槛电压是0.7V 0.337mA× 4.7kΩ=2.2839V≈2.3V。  图中的C2为电源滤波电容,滤除电源高频杂波。C1能够在有强搅扰环境下,有用的滤除搅扰信号,防止蜂鸣器变音和意外发声,在 RFID射频通讯、Mifare卡的运用时,这儿开端选用0.1uF 的电容,具体能够依据实践状况挑选。Part4 改善计划  蜂鸣器竟然有EMI 辐射?!在 NPN 3.3V 操控有源蜂鸣器时,在电路的 BUZZER 输入 高电平,让蜂鸣器鸣叫,检测蜂鸣器输入管脚(NPN 三极管的C极处信号,发现蜂鸣器在发声时,向外发生1.87KHz,-2.91V 的脉冲信号,如图 6 所示。图 6 蜂鸣器本身发放脉冲  在电路的BUZZER 输入20Hz的脉冲信号,让蜂鸣器鸣叫,检测蜂鸣器输入管脚处信号,发现蜂鸣器在发声时,在操控电平上叠加了1.87KHz,-2.92V 的脉冲信号,并且在蜂鸣器关断时呈现正向尖峰脉冲(≥10V),如图7所示。  图7中1.87KHz,-2.92V 的脉冲信号应该是有源蜂鸣器内部震动源释放出来的信号。常用有源蜂鸣器首要分为压电式、 电磁震动式两种, iMX283 开发板上用的是压电式蜂鸣器,压电式蜂鸣器首要由多谐振荡器、压电蜂鸣片、阻抗匹配器及共识箱、外壳等组成,而多谐震动器由晶体管或集成电路构成,咱们所用的蜂鸣器内部含有晶体管震动电路(有爱好的朋友能够自己拆开看看)。  有源蜂鸣器发生脉冲信号能量不是很强,能够考虑增加滤波电容将脉冲信号滤除。在有源蜂鸣器的两头增加一个104的滤波电容,脉冲信号削减到-110mV,如图 8 所示,但顶部信号因为电容充电过慢,有点延时。图 8 削减蜂鸣器本身发放脉冲  消除蜂鸣器EMI辐射后改善电路图如图9所示:图 9 NPN 有源蜂鸣器操控电路改善后电路图Part5 兼容性规划  作为规范电路,需求考虑电路的兼容性问题,比方相同耐压不同功率的有源蜂鸣器,有 源蜂鸣器和无源蜂鸣器的兼容性问题。1兼容相同耐压不同功率的有源蜂鸣器电路规划  为了电路的兼容性和可扩展性,电路需求考虑兼容不同厂家和不同功率的蜂鸣器。同一 个耐压的蜂鸣器首要是蜂鸣器的内阻和作业电流不相同,一般 3V~5V 耐压的蜂鸣器,不同功率的蜂鸣器导通电流是 10mA~80mA。咱们依照最大功率的蜂鸣器去规划电路即可,即三极管的推进电流依照 80 mA 规划。  假定:β=120 为晶体管参数的最小值,蜂鸣器导通电流是 80 mA。那么集电极电流 IC =80 mA。则三极管刚刚到达饱满导通时的基极电流 IB=80mA/ 120=0.667mA。流经 R2的电流是 0.7V/ 3.3kΩ= 0.212mA,所以流经 R1 的电流应该是 IR1=0.667mA 0.125mA=0.792mA。BUZZER 端的门槛电压是设定在 2.2V,那么 R1=(2.2V-0.7V)/ 0.792mA=1.89K。电阻取惯例 2K 即可。  假如电路替换功率稍大一点的有源蜂鸣器,能够依照上面的核算办法核算 R1 的巨细。2兼容有源蜂鸣器和无源蜂鸣器电路规划  在电路的规划进程中,往往会碰到需求改变,比方项现在期,对蜂鸣器的发声频率没有 要求,但后期有要求,需求替换为无源蜂鸣器,这时就需求修正电路图,乃至修正 PCB, 这样就增加了改动本钱、周期和危险。  有源蜂鸣器和无源蜂鸣器的驱动电路差异首要在于无源蜂鸣器本质上是一个理性元件, 其电流不能瞬变,因而必须有一个续流二极管供给续流。不然,在蜂鸣器两头会有反向感应 电动势,发生几十伏的尖峰电压,或许损坏驱动三极管,并搅扰整个电路体系的其它部分。而假如电路中作业电压较大,要运用耐压值较大的二极管,而假如电路作业频率高,则要选 用高速的二极管。这儿挑选的是 IN4148 的开关二极管。电路如图 10 所示。图 10 NPN 无源蜂鸣器操控电路

  Tyep-C接口是一种USB接口,现在广泛运用在手机、平板等消费电子产品中。比较于曾经的USB接口,Type-C存在较多的有点,最首要的两个有点为:1)过电流才能强;2)无正反、恣意插接。Type-C是怎样完结正反无方向插接的呢?Type-C选用了对称式的引脚规划,两排引脚对称,倒置后仍然能够正确衔接。引脚的界说如下所示。上排左边的GND和下排右侧的GND对称,上排左边的RX和下排右侧的RX对称,在物理结构上即便插反了,引脚衔接也是正确的。这就完结了无方向插接。Type-C是MicroUSB的升级版,在MicroUSB的根底上不只完结了无方向规划更提高了过电流才能。这极大的满意了人们的快充需求。Type-C刚推出时,手机厂商会用在自家的旗舰机型上,跟着科技的展开、制形本钱的下降,该接口越来越遍及,运用也越来越广泛。【1】Type-C很受旗舰机欢迎,与MicroUSB比较有哪些优势?【2】【精品博文】USB接口是否需求上拉电阻?【3】电子入门根底知识之:USB接口大网罗【4】为什么现在的手机越来越多都选用Type-C接口,它究竟有何不同之处?【5】Type-C怎样完结快充的?

  最近在学习MIPI接口的LCD驱动开发与调试,这儿我首要用的是MIPI-DSI接口,它学习起来真的是太杂乱了,特别是关于我这种好久都没写驱动来说更是头疼,可是头疼归头疼,作业咱们仍是要完结的,那就只能硬着头皮往下肝吧!首要了解下什么是MIPI-DSI:MIPI-DSI是一种运用于显现技能的串行接口,兼容DPI(显现像素接口,Display Pixel Interface)、DBI(显现总线接口,Display Bus Interface)和DCS(显现指令集,Display Command Set),以串行的办法发送像素信息或指令给外设,并且从外设中读取状况信息或像素信息,并且在传输的进程中享有自己独立的通讯协议,包括数据包格局和纠错检错机制。下图所示的是MIPI-DSI接口的简略示意图。MIPI-DSI具有高速形式和低速形式两种作业形式,悉数数据通道都能够用于单向的高速传输,但只要榜首个数据通道才可用于低速双向传输,隶属端的状况信息、像素等格局经过该数据通道回来。时钟通道专用于在高速传输数据的进程中传输同步时钟信号。此外,一个主机端可答应一起与多个隶属端进行通讯。(摘录自网友)那么,在Linux中调试MIPI LCD需求留意哪些细节呢?分别是:供电复位时序像素时钟MIPI时钟(本章不触及)MIPI指令(本章不触及)MIPI数据格局(本章不触及)在Linux驱动开发进程中,一般通用的MIPI的驱动都是现成的,比方以下的simple-panel-dsi,便是通用的MIPI接口LCD驱动,它在Linux内核中坐落driver/gpu/drm/panel目录下,对应的文件是:panel-simple.c。一般运用通用的MIPI LCD驱动,咱们只需求依据自己选购的屏的参数进行装备即可,也便是只需求装备设备树即可顺利完结点屏的操作,那么怎样来装备相关参数呢?这儿我用的是瑞芯微的RV1109计划,在此借用荣品LCD的设备树咱们来学习下它的设备树参数:

  点击上方「嵌入式云IOT技能圈」,挑选「置顶大众号」榜首时刻检查嵌入式笔记!上一篇文章,咱们简略的列举了MIPI-DSI驱动的一些常用参数的底子解读,可是那仅仅是蜻蜓点水走了一遍,实在深化往里钻的话仍是很难的,文章如下:Linux MIPI DSI LCD设备驱动开发调试细节学习笔记(一)1、MIPI LCD初始化序列描绘在上一篇文章中,咱们看到荣品的屏设备树中有这么一段代码,可是里边的数据是什么意义呢?panel-init-sequence = [   05 78 01 11   05 78 01 29  ];今日来具体记载下我学习在设备树中适配MIPI-DSI LCD初始化代码的具体进程。Linux供给了装备初始化代码的接口,相应的设备树也就支撑了,这部分在内核的文档里有写:kernel/Documentation/devicetree/bindings/display/panel/simple-panel.txt这个文档里简略描绘了一下:- panel-init-sequence:- panel-exit-sequence: A byte stream formed by simple multiple dcs packets.  byte 0: dcs data type  byte 1: wait number of specified ms after dcs command transmitted  byte 2: packet payload length  byte 3 and beyond: number byte of payload翻译过来大约的意思是:初始化序列退出序列由简略的多个dcs数据包构成的字节省第0个字节:dcs数据类型第1个字节:发送dcs指令后等候指定的毫秒数第2个字节:数据包有用载荷长度第3个字节及今后:有用载荷的字节数一般状况下LCD屏会有初始化和反初始化的进程,可是在实践运用中,一般还很少会用到反初始化,所以LCD面板厂家一般都是只供给初始化代码,在MIPI DSI驱动中,咱们需求将这些厂家供给的初始化代码转化为相应的DCS序列,关于初始化序列和退出序列的描绘,因为我用的渠道是瑞芯微,瑞芯微供给的技能文档也有相应的描绘:具体参数装备办法,检查原厂瑞芯微给的文档的事例描绘:关于 DCS 类型是怎样来了解的,瑞芯微文档中也能够看到对它的描绘:个人的了解办法:假如只要一个数据,对应的指令类型是0x05;假如有两个数据,对应的指令类型是0x15;假如多于两个数据,对应的指令类型是0x39。2、具体的装备办法(举例)最近因为需求调试MIPI接口的LCD显现屏,可是我现已好久没调过驱动了;厂家给了我下面这一段初始化代码,我一看一脸懵逼,关于好多年没搞驱动的我难免觉得有点心虚,怕是月底检验使命的时分要被扣KPI了,厂商的初始化代码如下:SET_GENERIC(0x02);W_D(0x80);W_D(0xAB);SET_GENERIC(0x02);W_D(0x81);W_D(0x4B);SET_GENERIC(0x02);W_D(0x82);W_D(0x84);SET_GENERIC(0x02);W_D(0x83);W_D(0x88);SET_GENERIC(0x02);W_D(0x84);W_D(0xA8);SET_GENERIC(0x02);W_D(0x85);W_D(0xE3);SET_GENERIC(0x02);W_D(0x86);W_D(0xB8);SET_GENERIC(0x02);W_D(0x87);W_D(0x5A);SET_GENERIC(0x02);W_D(0xB1);W_D(0x38);SET_GENERIC(0x01);W_D(0x11);delay_ms(120);SET_GENERIC(0x01);W_D(0x29);那么这个初始化代码是什么意义呢?厂家一般不会告知我,也不会给我供给寄存器手册,因为那是他们的知识产权,所以我也没必要知道他们究竟设置了什么东西,我只需求知道它们便是帮忙我点屏的重要进程之一就能够了。咱们就简略的以为这个初始化代码包括三类指令,分别是:SET_GENERICW_Ddelay_ms不同厂家供给的初始化代码是不同的,但格局底子上都是迥然不同,有的初始化代码很少,也有的超级长,比方荣品的设备树里就有一个更长的,如下所示,这个是现已将初始化代码转化为DCS格局的了:可见有些LCD面板厂家供给的初始化代码也是许多的,所以搞这个真的仍是要有点耐性的,不然很简略犯错,一旦犯错,或许屏幕都点不亮。以上仅仅举一个简略的比如,咱们需求将上面厂家给我的初始化指令转化成对应的DCS格局,然后增加到设备树的初始化序列里,这样驱动在加载的时分才能够被正确识别到。首要感谢CSDN网友供给以下思路:已然要将初始化代码转化成DCS格局,那么就衍生出下面的进程:数个数以SET_GENERIC为开端,下一个SET_GENERIC(不包括这次的SET_GENERIC和Delay)为完毕作为一次数据发送,数一数一共有几个数据。看延时看看厂家供给的初始化代码里边有没有延时。确认了以上进程今后,咱们就需求将初始化代码改写成下面的格局:指令类型 延时数量 数据长度 数据2.1、一般序列SET_GENERIC(0x02);W_D(0x80);W_D(0xAB);如上,有三个数据,所以指令类型为39,所以榜首个序列要这么写:以下每一个字节逐个进行对应:指令类型 延时数量 数据长度 数据1 数据2 数据3  39   00   03   02   80  AB2.2、带延时的序列SET_GENERIC(0x01);W_D(0x11);delay_ms(120);如上,有两个数据,1个延时,所以指令类型为15,所以带延时的序列要这么写:以下每一个字节逐个进行对应:指令类型 延时数量(转16进制)  数据长度  数据1  数据2 15      78        02   01   11 2.3、将厂家给的序列转化为DCS格局序列以此类推,从厂家给咱们的初始化代码转化为序列便是:39 00 03 02 80 AB39 00 03 02 81 4B39 00 03 02 82 8439 00 03 02 83 8839 00 03 02 84 A839 00 03 02 85 E339 00 03 02 86 B839 00 03 02 87 5A39 00 03 02 B1 3815 78 02 01 1115 00 02 01 29所以在设备树里的初始化序列就应该这么写,把上面转化的成果复制到下面来:panel-init-sequence = [  39 00 03 02 80 AB  39 00 03 02 81 4B  39 00 03 02 82 84  39 00 03 02 83 88  39 00 03 02 84 A8  39 00 03 02 85 E3  39 00 03 02 86 B8  39 00 03 02 87 5A  39 00 03 02 B1 38  15 78 02 01 11  15 00 02 01 29];所以咱们就不难了解以上荣品的DTS里初始化序列的意义:panel-init-sequence = [   05 78 01 11   05 78 01 29  ];榜首行:05表明DCS指令类型,表明只要一个数据。78表明延时时刻为(0x78)=>

  120ms01表明指令的数据长度只要一个字节11表明的便是数据同理,第二行也是相同的了解,到这儿咱们就彻底的把握了设备树关于初始化序列的装备办法了,假如想具体了解驱动代码里是怎样完结的,那么也能够去追一追代码,我觉得这种完结形式太优异了,不得不说Linux内核完结的DSI驱动规划思维真的很棒!还有许多内容,分几个章节来写吧,今日就学习总结到这了。往期精彩一个强壮的音视频编解码库-rkmedia的运用瑞芯微RV1109装备7寸电容触摸屏的方向修正笔记怎样增加APP到Buildroot里(以瑞芯微rv1126为例)瑞芯微RV1109装备GPIO设备树修正笔记(了解新渠道从点灯开端)新产品立项了,作为嵌入式软件工程师该怎样来展开规划作业?(个人经历共享)觉得本次共享的文章对您有帮忙,顺手点[在看]并转发共享,也是对我的支撑。

  点击上方「嵌入式云IOT技能圈」,挑选「置顶大众号」榜首时刻检查嵌入式笔记!前面咱们介绍了一些MIPI LCD的根底知识以及LCD初始化序列的装备:Linux MIPI DSI LCD设备驱动开发调试细节学习笔记(一)Linux MIPI DSI驱动调试笔记-设备树DCS格局序列之装备LCD初始化代码(二)要点亮MIPI DSI接口的LCD,咱们还有一个十分重要的装备,那便是屏幕的时序,时序便是点屏的根底,大部分LCD供给的数据手册都迥然不同;因为没搞过这块驱动的调试,我还很忧虑怕这个月都搞不定;可是我的确太轻视自己的才能了,没想到竟然就只用了不到一天时刻不到就把一个彻底没用过的屏给点起来了!所以我告知自己,今后要自傲点,不要怕,上来便是肝才是正路!1、LCD屏幕显现原理与纯 RGB 显现屏同理, MIPI DSI 显现参阅下图:之前有一篇文章也写得很好,结合学习会很有收成:图解LCD硬件原理

  点击上方「嵌入式云IOT技能圈」,挑选「置顶大众号」榜首时刻检查嵌入式笔记!1、确认I2C地址1.1、运用i2cdetect东西检查体系i2c节点的状况很明显这儿能够看到体系现已装备了i2c-0、i2c-1、i2c-3、i2c-4、i2c-5,咱们能够看下原厂在设备树里边的支撑状况:gedit kernel/arch/arm/boot/dts/rv1126.dtsi

  点击上方「嵌入式云IOT技能圈」,挑选「置顶大众号」榜首时刻检查嵌入式笔记!关于小巧GUI,之前发了相关的教程:一种替代串口屏的开源高效开发解决计划 小巧GUI在小熊派上的移植

  摘要这个桌面小盒子是之前的东西,一向放着没有收拾好。最近有空了就把他收拾收拾。小盒子首要用来显现时刻和气候预报,功用比较简略,其实还有许多能够玩的,懒得弄,所以就把最简略的收拾出来。软件是依据rt-thread, UI选用lvgl。功用首要分为两个部分榜首部分--功用功用部分首要分为两个部分,一个是NTP获取实时时刻,一个是气候等信息。NTP比较简略,RTT供给了相关API。代码如下:void get_local_time(void){    time_t now;    now = time(RT_NULL);    tab_info.cur_tm = localtime(

  点击上方「嵌入式云IOT技能圈」,挑选「置顶大众号」榜首时刻检查嵌入式笔记!在调试的时分发现板厂供给商调整了RK原厂的原理图规划,然后他们把串口5本来的M0的衔接换成了另一路IO M1,也便是说他们并没有依照原厂的原理图去规划,所以UART5底子动不起来,因为好久没搞驱动了,对驱动也不熟,所以只能硬着头皮追代码、上示波器、上逻辑剖析仪调试等等,走了许多弯路,最终总算把问题给找出来了,在此记载一下调试进程。1、关于uart5节点pinctrl装备的描绘uart5 {  /omit-if-no-ref/  uart5m0_xfer: uart5m0-xfer {   rockchip,pins =    /* uart5_rx_m0 */

  点击上方「嵌入式云IOT技能圈」,挑选「置顶大众号」榜首时刻检查嵌入式笔记!    板厂默许没有装备背光亮度的接口,考虑到将来产品销售的进程中,不同客户对操作界面的亮度的感觉是不相同的,假如将背光亮度直接固定死,后边客户或许会投诉,所以主张仍是将这个功用装备上,供给可调理背光的接口,以满意不同客户的诉求,那么怎样来装备呢?1、装备屏幕背光操控1.1、检查原理图检查背光管脚的硬件原理图:我这儿的背光操控引脚,运用的是 PWM9_M1 ,也便是 GPIO2_D6 ,一起这个管脚也是使能管脚。1.2、在 pinctrl 中查找对应的节点接下来找下 pinctrl 里有关 pwm9 的节点:pwm9 {  /omit-if-no-ref/  pwm9m0_pins: pwm9m0-pins {  rockchip,pins =    /* pwm9_pin_m0 */

【关闭】 【打印】