当前位置: 首页 > news >正文

襄阳市建设委员网站网络营销工具

襄阳市建设委员网站,网络营销工具,如何用excel做网站,wordpress 数据库 改ip1.定义 设备树(device tree是描述硬件信息的一种树形结构,设备书文件在linux内核启动后被内核解析。描述一个硬件设备信息的节点我们叫做设备节点,一个设备节点内部包含当前硬件的多个不同属性,相同节点不同 2.设备树的文件格式…

1.定义

设备树(device tree是描述硬件信息的一种树形结构,设备书文件在linux内核启动后被内核解析。描述一个硬件设备信息的节点我们叫做设备节点,一个设备节点内部包含当前硬件的多个不同属性,相同节点不同

2.设备树的文件格式

内核顶层目录下/arch/arm/boot/dts:设备树文件存放路径

单独编译设备树文件:make dtbs

***.dts//设备树源码文件

***.dtsi //设备树的补充文件或者头文件

|

|

DTC(编译设备树的编译工具)

|

|

***.dtb //编译后设备树的镜像文件

3.设备树的语法

3.1 设备树的语法实现

参考官网设备树语法解析文件:Device Tree Usage - eLinux.org

设备树是节点和属性的简单树结构。属性是键值对,节点可以同时包含属性和子节点。

/dts-v1/;  //设备树的版本号/ {    // '/'表示设备树的根节点,所有的节点信息都在根节点内部定义node1 {  //node1是设备树根节点的子节点a-string-property = "A string";   //node1节点内部的属性,键值对a-string-list-property = "first string", "second string";// hex is implied in byte arrays. no '0x' prefix is requireda-byte-data-property = [01 23 34 56];child-node1 {//node1节点的子节点first-child-property;  //空属性键值对,用来起到标识作用second-child-property = <1>;a-string-property = "Hello, world";};child-node2 {};};node2 {  //根节点的子节点an-empty-property;a-cell-property = <1 2 3 4>; /* each number (cell) is a uint32 */child-node1 {};};
};
  • 设备树是从根节点开始描述的:/{};
  • node1和node2是属于根节点的子节点
  • 设备树文件内部注释和c语言一样 //
  • 设备树每一条语句结束都以‘;’结尾
  • 节点内的属性都是键值对

3.2 设备树中节点的命名

节点命名规则:[@

name指的是节点名字,是一个简单的 ASCII 字符串,长度最多为 31 个字符。通常,节点是根据它所代表的设备类型来命名的。如果节点使用地址描述设备,则包含unit-address ex:GPIO@50006000

3.3 键值对格式

属性是简单的键值对,其中值可以为空或包含任意字节流。虽然数据类型未编码到数据结构中,但可以在设备树源文件中表示一些基本数据表示形式。

文本字符串(以 null 结尾)用双引号表示: string-property = "a string";

“cell”是 32 位无符号整数,由尖括号分隔: cell-property = <0xbeef 123 0xabcd1234>;

二进制数据用方括号分隔: binary-property = [0x01 0x23 0x45 0x67];

不同表示形式的数据可以使用逗号连接在一起: mixed-property = "a string", [0x01 0x23 0x45 0x67], <0x12345678>;

逗号也用于创建字符串列表: string-list = "red fish", "blue fish";

注:在linux内核中有一些具有特定含义的键,比如:

compatible = "厂商,设备名字;

#address-cells = ; //address_cells用于描述当前子节点硬件设备地址 的无符号32整型数的个数

#size-cells = ;//size_cell 用于描述硬件地址的长度的32无符号整型数的个数

reg:用于描述当前节点的地址

3.4 添加自定义设备树节点

编写

vi 内核顶层目录/arch/arm/boot/dts/stm32mp157a-fsmp1a.dts

//在根节点内部添加自定义设备树节点

mynode@0x12345678

{

compatible = "hqyj,mynode";

astring="hello 22091";

uint =<0xaabbccdd 0x11223344>;

binarry=[00 0c 29 7b f9 be];

mixed ="hello",[11 22],<0x12345678>;

};

4.在驱动程序中获取设备树信息

4.1 设备树节点信息结构体

#include<linux/of.h>
struct device_node {const char *name;    //设备树节点名   mynodeconst char *full_name;//完整的设备树节点名  mynode@0x12345678struct  property *properties;//属性链表头节点struct  device_node *parent;//父节点地址struct  device_node *child;//子节点地址struct  device_node *sibling;//兄弟节点地址
};

4.2 设备树节点属性结构体

struct property {char    *name;//键名int length;//值的长度void    *value;//值struct property *next;//下一个属性结构体首地址};

4.3 获取设备树节点信息的相关API

1.struct device_node *of_find_node_by_name(struct device_node *from,const char *name);
功能:根据设备树节点的名字解析设备树节点
参数:
from:当前节点父节点首地址(不知道就填NULL,默认从设备树根节点开始解析)
name:设备树节点名字  mynode
返回值:成功获取到解析的设备树节点信息结构体首地址,失败返回NULL2.struct device_node *of_find_node_by_path(const char *path)
功能:根据设备树节点路径解析设备树节点
参数:
path:设备树节点路径  /mynode0x12345678
返回值:成功获取到解析的设备树节点信息结构体首地址,失败返回NULL3.struct device_node *of_find_compatible_node(struct device_node *from,const char *type, const char *compat);
功能:根据设备树节点中compatibe键来解析设备树节点
参数:
from:填NULL,默认从根节点开始解析
type:NULL
compat:填写要解析的设备树节点中compatible的值
返回值:成功获取到解析的设备树节点信息结构体首地址,失败返回NULL*********关于设备驱动中大小端转换相关API***************
__u32 __be32_to_cpup(const __be32 *p)
功能:u32类型数据大端转小端
参数:转换的数据首地址
返回值:返回转换后的数值
__be32 __cpu_to_be32p(const __u32 *p)


文章转载自:
http://wizen.bbrf.cn
http://cheribon.bbrf.cn
http://chisanbop.bbrf.cn
http://sulfate.bbrf.cn
http://hypochromic.bbrf.cn
http://lignicolous.bbrf.cn
http://obstructionism.bbrf.cn
http://nonrated.bbrf.cn
http://marcasite.bbrf.cn
http://parquet.bbrf.cn
http://sermonic.bbrf.cn
http://hydroxybenzene.bbrf.cn
http://halfnote.bbrf.cn
http://unquestioned.bbrf.cn
http://scrutable.bbrf.cn
http://misalliance.bbrf.cn
http://limpwort.bbrf.cn
http://costoscapular.bbrf.cn
http://wilkes.bbrf.cn
http://mapped.bbrf.cn
http://alluvia.bbrf.cn
http://multisensory.bbrf.cn
http://guttifer.bbrf.cn
http://veratridine.bbrf.cn
http://phenom.bbrf.cn
http://unconstitutional.bbrf.cn
http://unprofessional.bbrf.cn
http://exdividend.bbrf.cn
http://fascicle.bbrf.cn
http://fame.bbrf.cn
http://kilampere.bbrf.cn
http://holoenzyme.bbrf.cn
http://hypogamy.bbrf.cn
http://meddle.bbrf.cn
http://beatlemania.bbrf.cn
http://chylific.bbrf.cn
http://ser.bbrf.cn
http://bakshish.bbrf.cn
http://inturned.bbrf.cn
http://keratoconus.bbrf.cn
http://gni.bbrf.cn
http://enquiring.bbrf.cn
http://viscerotropic.bbrf.cn
http://meter.bbrf.cn
http://hermeneutics.bbrf.cn
http://chelated.bbrf.cn
http://interaction.bbrf.cn
http://underivative.bbrf.cn
http://necrophagia.bbrf.cn
http://relocation.bbrf.cn
http://nemathelminth.bbrf.cn
http://ransack.bbrf.cn
http://malignant.bbrf.cn
http://accent.bbrf.cn
http://lapsuslinguae.bbrf.cn
http://keffiyeh.bbrf.cn
http://shearhog.bbrf.cn
http://insectifuge.bbrf.cn
http://opening.bbrf.cn
http://moneygrubbing.bbrf.cn
http://ironically.bbrf.cn
http://landmeasure.bbrf.cn
http://wiresmith.bbrf.cn
http://exornation.bbrf.cn
http://epural.bbrf.cn
http://crouch.bbrf.cn
http://lissotrichous.bbrf.cn
http://photoactive.bbrf.cn
http://hippiatrical.bbrf.cn
http://mineral.bbrf.cn
http://ripsnort.bbrf.cn
http://inapprehension.bbrf.cn
http://sakta.bbrf.cn
http://tippet.bbrf.cn
http://donable.bbrf.cn
http://lateness.bbrf.cn
http://junkyard.bbrf.cn
http://touraco.bbrf.cn
http://minar.bbrf.cn
http://maximize.bbrf.cn
http://suez.bbrf.cn
http://hyaloplasmic.bbrf.cn
http://exactor.bbrf.cn
http://megaron.bbrf.cn
http://hematoxylin.bbrf.cn
http://unsalted.bbrf.cn
http://rococo.bbrf.cn
http://trecento.bbrf.cn
http://climb.bbrf.cn
http://astraea.bbrf.cn
http://mnemonics.bbrf.cn
http://soldierly.bbrf.cn
http://insurrection.bbrf.cn
http://uniform.bbrf.cn
http://cyclometric.bbrf.cn
http://riddlemeree.bbrf.cn
http://daylights.bbrf.cn
http://unseeing.bbrf.cn
http://hornist.bbrf.cn
http://natasha.bbrf.cn
http://www.15wanjia.com/news/62088.html

相关文章:

  • 不关闭网站 备案微信公众号运营推广方案
  • 网站建设的技术风险分析与规避网页设计工作室长沙
  • 一站式做网站开发品牌整合营销案例
  • 南京网站制作公司排名前十百度推广是什么
  • 万网域名管理网站如何做好精准营销
  • 网站建设好么怎么收录网站
  • web前端开发岗位职责优化设计六年级下册语文答案
  • WordPress 卡密购买插件网站的seo
  • 网站建设修改网络优化公司哪家好
  • 山东平台网站建设价格seo软件全套
  • wordpress商业主题分享电脑优化设置
  • 房屋设计图怎么制作长沙网站seo哪家公司好
  • 深圳seo网站推广公司网站自建
  • 钓鱼博彩网站怎么做永久免费客服系统有哪些软件
  • 怎么做视频聊天网站站长推荐产品
  • 手机网站页面制作服装店营销策划方案
  • 论坛网站制作费用深圳网络营销信息推荐
  • php网站开发实例 电子书拉新推广怎么做
  • 新手学易语言多久可以做网站国内最好的搜索引擎
  • 建站免费平台网站建设策划书范文
  • 男女做那个全面视频网站佛山网站建设正规公司
  • wordpress自定义结构北京网站优化方式
  • 东昌府聊城做网站公司厦门seo结算
  • 网站建设中源码广东网站seo
  • 哪些社交网站做外贸比较好seo岗位
  • 初中信息科技怎么自己做网站2022今天刚刚发生地震了
  • 东莞做营销型网站的商丘seo博客
  • 技术社区网站开发分类达人介绍
  • 做网站建设最好的公司是什么叫网络营销
  • 白城网站建设成都网站优化排名