logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

链接

链接是将各种代码和数据部分收集起来并组合成为一个单一文件的过程。链接可以执行与编译时,也就是在源代码被翻译成机器代码时;也可以执行与加载时,也就是在程序加载器加载到内存并执行时;甚至执行与运行时,由应用程序来执行。连接器的主要作用是使分离编译成为可能。不在需要将一个大型的应用程序组织为一个巨大的源文件,而是把它分解为更小更好管理的模块。当我们改变这些模块中的一个时,只要简单的重新编译它,并重新链.

linux驱动开发扩展--input子系统应用实例

#include <stdio.h>#include <sys/types.h>#include <sys/stat.h>#include <fcntl.h>#include <linux/fb.h>#include <sys/mman.h>#include <linux/input.h>#include <

#linux
stm32步进电机控制策略

1.中断+计数2.主从定时器方式。主定时器用来发送脉冲控制速度,从定时器的自动重载寄存器为该次该次运行脉冲个数限制值用来控制电机转动角度。从定时器的时钟源为主定时器产生中断的时钟,也就是说主定时器溢出一次,从定时器计数值加一,从定时器中断后手动关闭主定时器。3.DMA+PWM。DMA传输的数据中最后一个值为0可以用来控制停止。这种方式容易控制电机按照预先计算好的速度(存储在一个数组中)进行曲线变化

#stm32
linux驱动开发扩展--输入核心层源码分析

drivers/input/input.cinput_init(1)class_register。input类的注册,对应/sys/class/input文件夹(2)input_proc_init。该函数内部主要就是创建了/proc/bus/input文件件和它下面的属性文件以及绑定操作方法(3)register_chrdev。注册设备err = register_chrdev(INPUT_MAJ

#linux
linux驱动开发扩展--自动创建设备文件

要使用struct class、class_create(…) 以及device_create(…)需要包含/include/linux/device.h头文件。class_create(1)创建一个类,会在/sys/class目录下生成相应的文件夹(2)第一个参数指定类的所有者是哪个模块,第二个参数指定类名。(3)class_destroy(…)函数,用于在模块卸载时删除类。(4)函数分析cla

#linux
图像滤波算法——均值、中值、高斯

注:本文为博主参考书籍和他人文章并加上自己的理解所编,作为学习笔记使用并将其分享出去供大家学习。若涉及到引用您的文章内容请评论区告知!如有错误欢迎指正!一、均值滤波    最简单的滤波器是移动平均或方框滤波器,他将K*K窗口中像素值的平均值作为输出。这种滤波器等价于图像与全部元素值为1的核函数先进性卷积再进行尺度缩放。对于尺寸较大的核函数,一个有效的实现策略如下:在扫描行上用一个移动的窗口...

#图像处理
傅里叶变换(一)——认识傅里叶变换

注:本文为博主参考书籍和他人文章并加上自己的理解所编,作为学习笔记使用并将其分享出去供大家学习。若涉及到引用您的文章内容请评论区告知!如有错误欢迎指正! 参考文章:https://zhuanlan.zhihu.com/p/19763358p.s.本文无论是cos还是sin,都统一用“正弦波”(Sine Wave)一词来代表简谐波。一、什么是傅里叶变换 时域及频域    在讲...

#数学#图像处理
C++中的类——构造函数

一、什么是构造函数每个类都分别定义了它的对象被初始化的方式,类通过一个或几个特殊的成员函数来控制其对象的初始化过程,这些函数叫构造函数。构造函数的任务是初始化类对象的数据成员,无论何时只要类的对象被创建,就会执行构造函数。二、构造函数的定义class 类名{   访问说明符:   类名(形参列表):初始值列表{函数体定义}};——————————————————...

到底了