相关推荐
Linux 内核学习(1) --- 时钟子系统
使用clk_hw结构向 CCF 框架注册一个时钟设备,返回一个struct clk结构,其中clk_hw结构中 包含了结构,结构包含对时钟操作的具体函数集合为了简化操作,CCF将clock设备抽象为六中不同的类型,并且做了相应的接口封装,比如,对于Gate类型的设备,直接使用等类型的函数就可以进行注册CCF 框架会为每个注册的都分配一个结构,其中包含了操作函数的结构体结构,本质就是关联到init_data中的clk_opsconsumer通过clk_get等函数 获取的struct clk。
Linux设备树(device tree)
设备树(device tree)机制是Linux内核从linux-3.x版本开始引进的一种机制,目的是解决内核源码的arch/arm目录下代码混乱的问题:随着ARM生态的快速发展,在内核源码的arch/arm目录下,存放着几十种arm芯片和几百个开发板相关的源文件,很多开发板和处理器的中断、寄存器等相关硬件资源都在这个目录下以.c或.h的文件格式定义。而对于内核来说,与这些硬件耦合,会导致内核代码混乱不堪,每个开发板上运行的内核镜像都必须单独编译配置,无法通用。什么时候Linux内核能像Windows镜像那样,无论你的电脑什么配置,一个Windows安装包,都可以直接下载安装运行呢?设备树机制,实现了Linux内核和硬件平台的解耦:每个硬件平台的硬件资源使用一个设备树文件(xxx.dts)来描述,而不是在arch/arm下以.c 或 .h 文件来定义。Linux内核是一个通用的内核,在启动过程中,在通过解析设备树中的硬件资源来初始化某个具体的平台。 引入设备树后,很多和内核驱动开发的工作也发生了变化:以往驱动工程师关注的头文件宏定义、寄存器定义,现在这些基本上不用关注,关注的重点则转向了如何根据硬件平台去配置和修改设备树文件。很多驱动的编程接口也发生了变化,开始慢慢使用device tree提供的编程接口去开发驱动。本期课程主要面向嵌入式开发人员,分享Linux下驱动开发所需要的设备树知识和必备技能
STM32L15X数据手册
这个为32位的STM32L微处理器开发的平台,是基于ST自主研发的130nm的超低漏电的工艺技术。STM32L为超低功耗应用提供特别的性能,例如先进的超低功耗模式、优化的动态运行功耗以及特殊的安全性能。无论何种应用,通过不同工作模式,微处理器都可以在高性能和超低功耗之间取得平衡,以保证产品使用周期内的各个环节一直保持优化的功耗水平.
Exynos4412的Linux5.4.174时钟驱动开发(五)——时钟设备树的修改方法
关于时钟有2种设备:时钟使用者(clock consumer)例如pwm、adc、串口,时钟提供者(clock provider)例如晶振、PLL。本文介绍了这2种设备的设备树写法。
保姆级教程:用ComfyUI+LTX-Video插件,5分钟搞定你的第一个AI视频(RTX 4060实测)
本文提供了一份详细的ComfyUI与LTX-Video插件使用指南,帮助用户在RTX 4060显卡上快速生成AI视频。从环境部署到图形化操作,再到提示词优化和性能调优,全面覆盖AI视频生成的各个环节,让零基础用户也能轻松上手。
局域网ip冲突检测工具_python 小工具实现 windows笔记本与 ipad数据互传
宅在家没事的时候就开始琢磨ipad的进阶使用,由于没有mac无法隔空投送,ipad与windows的数据交互表现极差,所以设计了这个ftp小工具。当然,这个工具不仅仅能用于windows与ipad,还可以用于局域网任意两台设备之间程序源码与下载见文章末尾使用说明windows端:biubiubiu.exeipad端: appsotre下载 FE文件管理器windows端操作在c盘下创建ftp目录...
正点原子-Linux嵌入式开发学习-第二期06
A7裸机开发
ZYNQ程序固化实战:从BOOT.bin生成到QSPI/SD卡双启动模式详解
本文详细解析了ZYNQ 7000系列程序固化的完整流程,重点解决了程序断电丢失问题。通过实战演示,从生成BOOT.bin文件到配置QSPI与SD卡双启动模式,逐步指导开发者实现程序在外部存储中的永久驻留,确保产品脱离调试器独立运行。
一文搞懂 | Linux 时钟子系统
Clock 时钟就是 SoC 中的脉搏,由它来控制各个部件按各自的节奏跳动。比如,CPU主频设置,串口的波特率设置,I2S的采样率设置,I2C的速率设置等等。这些不同的clock设置,都需...
揭秘cocos-mcp:如何用AI助手提升CocosCreator游戏开发效率
本文深入介绍了cocos-mcp工具,它作为连接AI助手与CocosCreator编辑器的桥梁,遵循MCP协议,能显著提升游戏开发效率。通过自然语言指令,开发者可让AI直接查询场景结构、批量修改属性或生成上下文代码,将重复操作变为智能调度,实现从“手动操作者”到“指令指挥官”的工作流变革。
MyBatis-Plus 实战:敏感字段自动加解密支持模糊查询
本文基于MyBatis-Plus框架提出了一种全链路敏感字段加密方案。通过自定义TypeHandler实现数据入库自动加密和查询自动解密,结合重写LambdaQueryWrapper处理查询条件加密,并适配多种查询方式。方案核心包括:1)AESUtil工具类提供加解密基础能力;2)EncryptTypeHandler实现字段类型转换;3)实体类通过注解配置加密字段。该方案在保证数据安全的同时,对业务代码侵入性小,支持姓名、手机号等敏感信息的全流程加密处理,满足系统开发的安全需求。
linux通用时钟框架(CCF)
linux 内核版本 v4.19嵌入式平台rv1109 , 文中代码出处。CCF背后的主要思想是统一和抽象分布在不同SoC时钟驱动程序中的类似代码。这种标准化的方法引入了时钟提供者和时钟消费者的概念:提供者是Linux内核驱动程序,它连接到框架并提供对硬件的访问,从而根据SoC数据表提供(使这些对消费者可用)时钟树(由于可以转储整个时钟树);消费者是通过公共API访问框架的Linux内核驱动程序或子系统;
WPF数据绑定Binding对数据的转换与效验(四)
Binding的作用就是架在Source与Target之间的桥梁,数据可以在这座桥梁的帮助下来流通。就像现实世界中的桥梁会设置一些关卡进行安检一样,Binding这座桥上也可以设置关卡对数据的有效性进行检验,不仅如此,当Binding的两端要求使用不同的数据类型时,我们还可以为数据设置转换器。Binding用于数据有效性检验的关卡是它的ValidationRules属性,用于数据类型转换的关卡是它的Converter属性。
AI编程助手选型指南:按认知负荷匹配Copilot/Cursor/Claude
AI编程助手不是通用代码生成器,而是针对开发者不同认知负荷阶段的协同工具。当问题聚焦于语法补全与API参数记忆时,GitHub Copilot作为‘超高速词典’提供即时响应;当任务涉及多步操作、文件跳转与自动化执行,Cursor的Agent工作流引擎成为关键生产力杠杆;而面对硬件时序约束、形式化验证或跨层架构决策等高语义密度场景,Claude Code凭借强推理链与领域知识注入能力不可替代。本文基于STM32电机控制、Spring Boot联调、React状态管理三大真实工程案例,揭示三类工具在‘写—做—想
UFS总体介绍及FPGA开发
通过实现UFS的主控制器、设备控制器等组件,我们可以在FPGA上进行UFS开发,并实现高速数据传输和低功耗特性的存储解决方案。物理层负责传输物理信号,数据链路层提供数据包的传输和错误检测功能,传输层处理数据包的分段、重组和重传,逻辑层管理设备和主控制器之间的命令和数据传输,文件系统层负责文件管理和数据存储。在本文中,我们将介绍UFS的总体架构和特性,并探讨如何在FPGA上进行UFS开发。这些组件的实现涉及到UFS协议的具体细节和硬件平台的特性,因此需要参考UFS协议规范和FPGA开发平台的相关文档。
硬核干货|C#+EtherCAT协议:高精度多轴伺服运动控制通信实战
本文摘要: 文章聚焦工业自动化领域多轴伺服运动控制的高精度与实时性需求,基于C#与EtherCAT协议实现完整解决方案。EtherCAT凭借微秒级同步、分布式架构等优势成为首选,而C#通过优化GC策略和实时线程可满足工业控制要求。文章从工程落地角度,详细拆解EtherCAT的PDO/SDO通信机制与多轴同步控制逻辑,提供完整的C#代码实现(主站初始化、伺服配置、运动控制等),所有代码均通过汇川/松下伺服实测验证。核心亮点包括:纯C#原生开发、工业现场高频问题解决方案、硬件适配指南,帮助开发者快速掌握高精度多
linux设备树_时钟绑定
linux设备树_时钟绑定
LinePhone3.2.7(android端最新版本) sip客户端
SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/
【嵌入式Linux】i.MX6ULL 时钟树——理论分析
本文章结合了正点原子的**i.mx6u嵌入式Linux开发指南**和笔者的理解。 本文章应配合《【嵌入式Linux】i.MX6ULL 时钟树——代码梳理(基础时钟初始化)》使用。
jdk-8u144-linux-x64.tar.gz.
该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包
IDEA的使用指南
IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.
Linux下时钟框架实践---一款芯片的时钟树配置
关键词:时钟、PLL、Mux、Divider、Gate、clk_summary等。 时钟和电源是各种设备的基础设施,整个时钟框架可以抽象为几种基本的元器件:负责提供晶振 Linux内核提供了良好的CCF(Common Clock Framework),框架的两端一个是provider,一个是consumer。 provider指的是提供时钟模块,包括晶振、PLL、Mux、Divider、Ga...
lwip-2.0.3
lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。
Linux学习笔记22-主频和时钟配置实验
1、32.768khz的晶振,供给RTC使用,其并不会参与整个系统的时钟里面去2、在6U的T16和T17 这两个I上接了一个24MHZ的晶振。
linux查看时钟树,RK3288 查看时钟树
主控端可以通过指令查看时钟树,enable_cnt为1,表示时钟已使能。#cat d/clk/clk_summarycat d/clk/clk_summaryclock enable_cnt prepare_cnt rate--------------------------------------------------------------...
Linux clock子系统及驱动实例
在Linux驱动中,操作时钟只需要简单调用内核提供的通用接口即可,clock驱动通常是由芯片厂商开发的,在Linux启动时clock驱动就已经初始化完成。 本篇介绍Linux clock子系统以及clock驱动的实现。
【嵌入式Linux】i.MX6ULL 时钟树——代码梳理(基础时钟初始化)
本文章结合了正点原子的**i.mx6u嵌入式Linux开发指南**和笔者的理解。 本文章应配合《【嵌入式Linux】i.MX6ULL 时钟树——理论分析》使用。
时钟树综合(CTS)
介绍时钟树综合(CTS)的概念以及相关要求
Linux之ARM(IMX6U)裸机主频和时钟配置
Linux之ARM(MX6U)裸机主频和时钟配置1、I.MX6U 时钟系统详解1.1、系统时钟来源 I.MX6U 系列标准的工作频率为 528MHz,有些型号甚至可以工作到 696MHz,但是默认的工作频率为396MHz,这就造成了浪费了,本次我们来配置主频时钟使其工作在528MHz,以及其他的外设时钟源都工作在NXP推荐的工作频率。 1、I.MX6U 时钟系统详解 I.MX6U 的系统主频为 528MHz,有些型号可以跑到 696MHz,但是默认情况下内部 boot rom 会将 I.MX6U 的主频设置
[STM32] 5-1 时钟树(下)
本文基于STM32F103C8T6的时钟系统进行讲解,主要内容包括:1)时钟树结构与总线关系图解;2)外设时钟使能/禁止和复位操作的API使用方法;3)6个随堂测试题及详细解答,涵盖分频/倍频原理、时钟来源(HSI/HSE/LSI/LSE)、SYSTICK时钟源、锁相环倍频系数(2-16)等核心知识点。文章配有时钟树结构图示,并提供了APB1/APB2总线外设时钟控制的具体代码示例,适合STM32初学者系统学习时钟配置。所有内容均参考自B站UP主"铁头山羊"的教程视频。
3199



被折叠的 条评论
为什么被折叠?



