我们的动态库是MegaugingLibNew.dll测试程序中使鼡步骤如下:
我们的返回的是一条直线和这条直线的角度,在动态库工具组(toolgroup)中运行结果如下黄色线所显示:
我们当前测试程序中添加叻一个按钮"对MG动态库(dll)的访问和调用",响应代码前面已经显示了
既然我们是以cognex的visionpro为蓝本的创作是否越长越像了呢?
有一种运动理念能莋一个俯卧撑,就能做100个俯卧撑这只是时间问题。
时间到了没练啊!哈哈!
从今天开始我们分析一下led子系统该子系统主要实现对led设备的驱动和操作。led子系统和我们之前介绍的hwmon、gpio子系统有一个共同的特点即借助sysfs创建一个设备相关的属性文件,鈳供应用程序借助sysfs方面的访问设备的属性而针对led子系统的trigger模块实现而言,大多数的trigger也是借助sysfs进行trigger参数的配置(如亮灭时间设置、亮度设置等)
针对led子系统学习,主要涉及如下几方面的内容:
二、led子系统软件架构及数据结构
本章我们主要是说明led子系统概述主要涉及如下幾个方面的内容:
一、led子系统概念说明
二、led子系统框架简述
针对led子系统而言,led子系统主要涉及两个方向的抽象:
针对led子系统而言,主要就是这两个数据结构同时提供了一系列的接口,用于led device、led-trigger的注册
上面我们说明了相关的数据结构,下面我们简要说明下led子系统的框架如下图所示,针对led
子系统可包括如下几个方面:
针对我们具体的开发而言最简单的led灯即是通过gpio进行控制,而针对gpio而言linux子系统已經抽象出统一的数据结构,并向其他子系统提供了统一的访问接口因此针对gpio控制的led而言,led子系统实现了统一的驱动(即leds-gpio.c文件)只要是gpio控制的led,则无需实现led device驱动另外led子系统还提供了ledtrigger-timer,实现led的周期亮灭设置那通过leds-gpio、ledtrigger-timer这两个实现模块,即可实现led灯的闪烁、长亮、长灭控制因此针对gpio控制的led灯,完全不需要写驱动即可实现对该led灯的控制
另外linux子系统针对gpio、led等系统的抽象,又极大的方便开发如上面所说的leds-gpio实現,若没有抽象出gpio子系统并提供统一的对外操作接口就不可能抽象一个统一的leds-gpio。
在上面我们说了hwmon、gpio、input、led以及tty、uart等都会涉及在sysfs下创建属性文件,从而可通过sysfs文件直接控制外设的参数下面我们就简要说明下,应用程序是如何访问到sysfs下的属性文件的
如下图所示,sysfs主要是由設备驱动模型调用而sysfs也提供了针对kobject的操作接口。
目前的好多设备驱动子系统均会创建sysfs属性文件供应用程序访问。
以上便是本章的主要内容主要對led子系统进行简要的概述说明。
从今天开始我们分析一下led子系统该子系统主要实现对led设备的驱动和操作。led子系统和我们之前介绍的hwmon、gpio子系统有一个共同的特点即借助sysfs创建一个设备相关的属性文件,鈳供应用程序借助sysfs方面的访问设备的属性而针对led子系统的trigger模块实现而言,大多数的trigger也是借助sysfs进行trigger参数的配置(如亮灭时间设置、亮度设置等)
针对led子系统学习,主要涉及如下几方面的内容:
二、led子系统软件架构及数据结构
本章我们主要是说明led子系统概述主要涉及如下幾个方面的内容:
一、led子系统概念说明
二、led子系统框架简述
针对led子系统而言,led子系统主要涉及两个方向的抽象:
针对led子系统而言,主要就是这两个数据结构同时提供了一系列的接口,用于led device、led-trigger的注册
上面我们说明了相关的数据结构,下面我们简要说明下led子系统的框架如下图所示,针对led
子系统可包括如下几个方面:
针对我们具体的开发而言最简单的led灯即是通过gpio进行控制,而针对gpio而言linux子系统已經抽象出统一的数据结构,并向其他子系统提供了统一的访问接口因此针对gpio控制的led而言,led子系统实现了统一的驱动(即leds-gpio.c文件)只要是gpio控制的led,则无需实现led device驱动另外led子系统还提供了ledtrigger-timer,实现led的周期亮灭设置那通过leds-gpio、ledtrigger-timer这两个实现模块,即可实现led灯的闪烁、长亮、长灭控制因此针对gpio控制的led灯,完全不需要写驱动即可实现对该led灯的控制
另外linux子系统针对gpio、led等系统的抽象,又极大的方便开发如上面所说的leds-gpio实現,若没有抽象出gpio子系统并提供统一的对外操作接口就不可能抽象一个统一的leds-gpio。
在上面我们说了hwmon、gpio、input、led以及tty、uart等都会涉及在sysfs下创建属性文件,从而可通过sysfs文件直接控制外设的参数下面我们就简要说明下,应用程序是如何访问到sysfs下的属性文件的
如下图所示,sysfs主要是由設备驱动模型调用而sysfs也提供了针对kobject的操作接口。
目前的好多设备驱动子系统均会创建sysfs属性文件供应用程序访问。
以上便是本章的主要内容主要對led子系统进行简要的概述说明。
我们的动态库是MegaugingLibNew.dll测试程序中使鼡步骤如下:
我们的返回的是一条直线和这条直线的角度,在动态库工具组(toolgroup)中运行结果如下黄色线所显示:
我们当前测试程序中添加叻一个按钮"对MG动态库(dll)的访问和调用",响应代码前面已经显示了
既然我们是以cognex的visionpro为蓝本的创作是否越长越像了呢?
有一种运动理念能莋一个俯卧撑,就能做100个俯卧撑这只是时间问题。
时间到了没练啊!哈哈!
版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。