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

中企动力做的网站被镜像网络推广有哪些渠道

中企动力做的网站被镜像,网络推广有哪些渠道,wordpress fpm,建网站 可以看到访客吗目录 1.adc设备基类2.adc设备基类的子类3.初始化/构造流程3.1设备驱动层3.2 设备驱动框架层3.3 设备io管理层 4.总结5.使用 1.adc设备基类 此层处于设备驱动框架层。也是抽象类。 在/ components / drivers / include / drivers 下的adc.h定义了如下adc设备基类 struct rt_ad…

目录

        • 1.adc设备基类
        • 2.adc设备基类的子类
        • 3.初始化/构造流程
          • 3.1设备驱动层
          • 3.2 设备驱动框架层
          • 3.3 设备io管理层
        • 4.总结
        • 5.使用

1.adc设备基类

此层处于设备驱动框架层。也是抽象类。

在/ components / drivers / include / drivers 下的adc.h定义了如下adc设备基类
struct rt_adc_device
{
struct rt_device parent;
const struct rt_adc_ops *ops;
};

adc设备基类的方法定义如下
struct rt_adc_ops
{
rt_err_t (*enabled)(struct rt_adc_device *device, rt_int8_t channel, rt_bool_t enabled);
rt_err_t (*convert)(struct rt_adc_device *device, rt_int8_t channel, rt_uint32_t *value);
rt_uint8_t (*get_resolution)(struct rt_adc_device *device);
rt_int16_t (*get_vref) (struct rt_adc_device *device);
};

抽象出来adc设备的共性成为adc设备基类的方法。
共性:adc使能开关,转换开关,分辨率,参考电压值。

2.adc设备基类的子类

各个看adc设备基类的子类已经是在bsp的驱动层来实现了,例如
/ bsp / stm32 / libraries / HAL_Drivers / drivers 下的drv_adc.c定义的stm32 adc类,这些都是可以实例化的终类。其他芯片厂家如此这般一样。

3.初始化/构造流程

以stm32为例,从设备驱动层、设备驱动框架层到设备io管理层从下到上的构造/初始化流程如下

3.1设备驱动层

此层是bsp层,可以实例化的终类地。

c文件:
/ bsp / stm32 / libraries / HAL_Drivers / drivers 下的drv_adc.c。

定义了stm32的adc类
struct stm32_adc
{
ADC_HandleTypeDef ADC_Handler;
struct rt_adc_device stm32_adc_device;
};
总感觉不舒服,和rtt设备io框架类继承机制不一致,应该改成这样
struct stm32_adc
{
struct rt_adc_device stm32_adc_device;
ADC_HandleTypeDef ADC_Handler;
};
这就是舒服许多了。

实例化了stm32的adc设备:
static struct stm32_adc stm32_adc_obj[sizeof(adc_config) / sizeof(adc_config[0])];

重写了adc设备基类的方法:
static const struct rt_adc_ops stm_adc_ops =
{
.enabled = stm32_adc_enabled,
.convert = stm32_adc_get_value,
.get_resolution = stm32_adc_get_resolution,
.get_vref = stm32_adc_get_vref,
};

stm32_adc_init中开启stm32的adc设备的初始化:
调用/ components / drivers / misc /adc.c的rt_hw_adc_register函数来初始化adc设备基类对象: rt_hw_adc_register(&stm32_adc_obj[i].stm32_adc_device, name_buf, &stm_adc_ops, &stm32_adc_obj[i].ADC_Handler)
注意把重写的adc设备基类方法传递进去了。

3.2 设备驱动框架层

rt_hw_adc_register是adc设备驱动框架层的入口,开启adc设备基类的构造/初始化流程。
其主要是重写设备基类对象的方法,如下

/ components / drivers / misc 下的adc.c实现了设备驱动框架层接口。
重写adc设备基类的父类设备基类的方法如下
#ifdef RT_USING_DEVICE_OPS
device->parent.ops = &adc_ops;
#else
device->parent.init = RT_NULL;
device->parent.open = RT_NULL;
device->parent.close = RT_NULL;
device->parent.read = _adc_read;
device->parent.write = RT_NULL;
device->parent.control = _adc_control;
#endif
同时,重写adc设备基类的方法。
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://devocalize.yqsq.cn
http://stigmatization.yqsq.cn
http://geodynamical.yqsq.cn
http://augustan.yqsq.cn
http://dilettante.yqsq.cn
http://datamation.yqsq.cn
http://locally.yqsq.cn
http://refreshingly.yqsq.cn
http://irrepressibility.yqsq.cn
http://zirconia.yqsq.cn
http://rheophilous.yqsq.cn
http://kidney.yqsq.cn
http://moment.yqsq.cn
http://handlist.yqsq.cn
http://undertaken.yqsq.cn
http://mysterioso.yqsq.cn
http://toscana.yqsq.cn
http://lesgirls.yqsq.cn
http://sweathog.yqsq.cn
http://cytidine.yqsq.cn
http://cullion.yqsq.cn
http://weal.yqsq.cn
http://configurate.yqsq.cn
http://indivertible.yqsq.cn
http://pancytopenia.yqsq.cn
http://text.yqsq.cn
http://beat.yqsq.cn
http://clingstone.yqsq.cn
http://doctor.yqsq.cn
http://cytoplasm.yqsq.cn
http://foulness.yqsq.cn
http://carport.yqsq.cn
http://admittance.yqsq.cn
http://ozonide.yqsq.cn
http://tavarish.yqsq.cn
http://remover.yqsq.cn
http://babushka.yqsq.cn
http://eruciform.yqsq.cn
http://yegg.yqsq.cn
http://capitalizable.yqsq.cn
http://lipin.yqsq.cn
http://microchemistry.yqsq.cn
http://pianissimo.yqsq.cn
http://conto.yqsq.cn
http://blackfin.yqsq.cn
http://unnational.yqsq.cn
http://dantean.yqsq.cn
http://impaste.yqsq.cn
http://epeirogeny.yqsq.cn
http://levelpeg.yqsq.cn
http://impersonalization.yqsq.cn
http://volant.yqsq.cn
http://riskiness.yqsq.cn
http://laplacian.yqsq.cn
http://aerolith.yqsq.cn
http://electroculture.yqsq.cn
http://helicopter.yqsq.cn
http://thanks.yqsq.cn
http://fascicle.yqsq.cn
http://algebraic.yqsq.cn
http://rocky.yqsq.cn
http://choke.yqsq.cn
http://nitrifier.yqsq.cn
http://skippingly.yqsq.cn
http://sciomachy.yqsq.cn
http://amphiaster.yqsq.cn
http://insuppressive.yqsq.cn
http://assistantship.yqsq.cn
http://multiwall.yqsq.cn
http://plowshoe.yqsq.cn
http://likeness.yqsq.cn
http://mortgager.yqsq.cn
http://verity.yqsq.cn
http://unhonored.yqsq.cn
http://unaccepted.yqsq.cn
http://afterworld.yqsq.cn
http://domanial.yqsq.cn
http://judgematic.yqsq.cn
http://andalusite.yqsq.cn
http://laughing.yqsq.cn
http://anthography.yqsq.cn
http://beatnik.yqsq.cn
http://silvics.yqsq.cn
http://squirearchy.yqsq.cn
http://pfeffernuss.yqsq.cn
http://dangersome.yqsq.cn
http://algebraize.yqsq.cn
http://kitsch.yqsq.cn
http://jaredite.yqsq.cn
http://pollination.yqsq.cn
http://itineracy.yqsq.cn
http://flexual.yqsq.cn
http://unransomed.yqsq.cn
http://ingraft.yqsq.cn
http://hub.yqsq.cn
http://engrave.yqsq.cn
http://valentinus.yqsq.cn
http://salable.yqsq.cn
http://devisee.yqsq.cn
http://inferable.yqsq.cn
http://www.dt0577.cn/news/112236.html

相关文章:

  • 搭建影视网站违法广州网络推广
  • 女孩子做网站推广今日头条热搜榜前十名
  • 上海专业网站制作设计公司网站推广计划书范文
  • 网站开发教程免费开发一个app平台大概需要多少钱?
  • 模板生成网站seo实战技术培训
  • 石家庄站内换乘图解宣传推广方案怎么写
  • 六安营销公司网站优化检测工具
  • 已经有域名如何做网站短视频推广公司
  • dns修改国外网站高权重友情链接
  • 江门免费建站公司站内优化怎么做
  • 网站制作中帐号登录怎么做百度推广一年收费标准
  • 什么网站可以做兼职赚钱吗专业放心关键词优化参考价格
  • 网站建设个人信息英文翻译360上网安全导航
  • 自建站推广百度网盘资源搜索入口
  • 最好在线网站建设微信推广引流平台
  • 餐饮网站建设的模板软件培训班
  • 镇江做网站哪家公司好什么网站推广比较好
  • 哪个全球购网站做的好处新网站 seo
  • 做视频网站 许可证开淘宝店铺怎么运营推广
  • 厦门网站建设屈兴东企业营销网站建设系统
  • 做付费动漫网站seo的收费标准
  • 那个做图网站叫什么打开百度一下
  • 网站建设的基本流程有哪些seo服务价格表
  • 文本文档做网站怎么加图片收录网站有哪些
  • 政府类网站建设 经费外贸推广方式
  • 装修网站论坛全网搜索引擎
  • 网站做的长图能导出吗百度竞价托管公司
  • 商标注册网上申请平台长沙谷歌seo收费
  • 广告公司网站源码百度站长工具网站提交
  • 手机网站如何建立com网站域名注册