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

赣州做网站的公司哪家好搜索引擎优化与推广技术

赣州做网站的公司哪家好,搜索引擎优化与推广技术,wordpress架设系统,青岛中企动力科技股份有限公司目录 1.dac设备基类2.dac设备基类的子类3.初始化/构造流程3.1设备驱动层3.2 设备驱动框架层3.3 设备io管理层 4.总结5.使用 1.dac设备基类 此层处于设备驱动框架层。也是抽象类。 在/ components / drivers / include / drivers 下的dac.h定义了如下dac设备基类 struct rt_da… 目录 1.dac设备基类2.dac设备基类的子类3.初始化/构造流程3.1设备驱动层3.2 设备驱动框架层3.3 设备io管理层 4.总结5.使用 1.dac设备基类 此层处于设备驱动框架层。也是抽象类。 在/ components / drivers / include / drivers 下的dac.h定义了如下dac设备基类 struct rt_dac_device { struct rt_device parent; const struct rt_dac_ops *ops; }; dac设备基类的方法定义如下 struct rt_dac_ops { rt_err_t (*disabled)(struct rt_dac_device *device, rt_uint32_t channel); rt_err_t (*enabled)(struct rt_dac_device *device, rt_uint32_t channel); rt_err_t (*convert)(struct rt_dac_device *device, rt_uint32_t channel, rt_uint32_t *value); rt_uint8_t (*get_resolution)(struct rt_dac_device *device); }; 抽象出来dac设备的共性成为dac设备基类的方法。 共性:失能dac使能dac转换分辨率。 2.dac设备基类的子类 各个看dac设备基类的子类已经是在bsp的驱动层来实现了例如 / bsp / stm32 / libraries / HAL_Drivers / drivers 下的drv_dac.c定义的stm32 dac类这些都是可以实例化的终类。其他芯片厂家如此这般一样。 3.初始化/构造流程 以stm32为例从设备驱动层、设备驱动框架层到设备io管理层从下到上的构造/初始化流程如下 3.1设备驱动层 此层是bsp层可以实例化的终类地。 c文件: / bsp / stm32 / libraries / HAL_Drivers / drivers 下的drv_dac.c。 定义了stm32的dac类 struct stm32_dac { DAC_HandleTypeDef DAC_Handler; struct rt_dac_device stm32_dac_device; }; 总感觉不舒服和rtt设备io框架类继承机制不一致应该改成这样 struct stm32_dac { struct rt_dac_device stm32_dac_device; DAC_HandleTypeDef DAC_Handler; }; 这就是舒服许多了。 实例化了stm32的dac设备: static struct stm32_dac stm32_dac_obj[sizeof(dac_config) / sizeof(dac_config[0])]; 重写了dac设备基类的方法: static const struct rt_dac_ops stm_dac_ops { .disabled stm32_dac_disabled, .enabled stm32_dac_enabled, .convert stm32_set_dac_value, .get_resolution stm32_dac_get_resolution, }; stm32_dac_init中开启stm32的dac设备的初始化: 调用/ components / drivers / misc /dac.c的rt_hw_dac_register函数来初始化adc设备基类对象: rt_hw_dac_register(stm32_dac_obj[i].stm32_dac_device, name_buf, stm_dac_ops, stm32_dac_obj[i].DAC_Handler) 注意把重写的dac设备基类方法传递进去了。 3.2 设备驱动框架层 rt_hw_dac_register是dac设备驱动框架层的入口开启dac设备基类的构造/初始化流程。 其主要是重写设备基类对象的方法如下 / components / drivers / misc 下的dac.c实现了设备驱动框架层接口。 重写dac设备基类的父类设备基类的方法如下 #ifdef RT_USING_DEVICE_OPS device-parent.ops dac_ops; #else device-parent.init RT_NULL; device-parent.open RT_NULL; device-parent.close RT_NULL; device-parent.read RT_NULL; device-parent.write _dac_write; device-parent.control _dac_control; #endif 同时重写dac设备基类的方法。 device-ops ops; 并最终调用设备基类的初始化/构造函数rt_device_register。 3.3 设备io管理层 rt_device_register是io管理层的入口。从框架章节可以知道所有设备类都继承自设备基类rt_device自然都要实现设备基类rt_device的约束方法上面已经重写。 在/ components / drivers / core 下的device.c中实现了rt_device_register由它将pin设备放到容器里管理。 4.总结 整个设备对象的构造/初始化流程其实是对具体设备对象也就是结构体进行初始化赋值按照先调用子类构造/初始化函数再调用父类的构造/初始化函数方式——其实也是子类构造/初始化函数调用父类构造/初始化函数的流程来完成设备对象的初始化/构造。最终放到对象容器里来管理。 5.使用 文档
http://www.tj-hxxt.cn/news/230686.html

相关文章:

  • 网站建设方向网络教育
  • 百度网站适配代码黄骅市属于沧州吗
  • 旅游电子商务网站模板企业公司如何做网站
  • vs做的网站排版错位百度 网站改版了
  • 门户网站自查报告网页视频制作软件
  • 山东省交通厅建设网站建设银行etc官方网站
  • 网站平面图要怎么做建筑公司网站常用长尾词
  • 学做网站需要哪几本书小型网站开发费用
  • 网站搭建公司排行榜电脑去哪里建设网站
  • 帝国做的网站打开速度东莞建网站公司哪个好
  • 甘肃平凉建设局网站个人网站做什么好
  • wordpress登录后评论seo搜索引擎优化报价
  • 傻瓜式免费自助建站系统做书app下载网站
  • 全网网站建设优化做外贸推广的公司
  • 旅游网站开发与建设论文做海报的素材网站
  • 荆州seo推广优化网站做什么的
  • 普通网站一年要多少钱适合大学生做的网站有哪些
  • 网站技术开发文档模板哈尔滨网站开发建设公司
  • 网站目录结构怎么做网站域名怎么写好
  • 网络营销跟网站推广有啥区别精准客源 获客
  • 怎么做一个盈利网站wordpress新建html5
  • 专业的集团网站开发开发买房子平台
  • 最好的开发网站建设大连公共资源交易平台官网
  • 做心悦腾龙光环的网站是什么湘阴网站建设
  • 怎么建网站赚钱秦皇岛市属于哪个省份
  • 网站代码 上传 wordpress 空间各地农业信息网站的建设
  • 美团招聘网站开发杭州久邦电力建设有限公司网站
  • 广州网站设计与制作公司技术支持 深圳网站建设贝尔利
  • 免费服务器搭建网站详细教程看设计比较好的网站
  • 什么是静态网站网站制作好如何上线