- 博客(40)
- 资源 (17)
- 收藏
- 关注
原创 putty 默认颜色设置
Window下的colours设置代码*DefaultForeground:255/255/255 *DefaultBackground:51/51/51 *ANSIBlack:77/77/77 *ANSIGreen:152/251/152 *ANSIYellow:240/230/140 *ANSIBlue:205/133/63 *ANSIBlueBold135/206/235 *ANSIMagenta:2...
2021-02-25 15:36:42
383
原创 Opencv Api
cv.imread 读取一个图片cv.namedWindow 命名一个窗口cv.imshow显示图片cv.waitKey 等待按键cv.destroyAllWindows 销毁所有窗口cv.VideoCapture 读取视频文件或者摄像头数据cv.flip 图像 镜像np.array(image) 求出图像像素image.shape 求出图像的 长 宽 通道数 he...
2019-07-12 23:14:13
2664
原创 spi sync async
spi 的同步和异步传输spi_async spi_sync先看 spi_syncreturn __spi_sync(spi, message, 0);DECLARE_COMPLETION_ONSTACK(done);status = __spi_queued_transfer(spi, message, false);//注意这个falselist_add_t...
2019-05-10 11:26:38
2559
原创 spi子系统
https://blog.youkuaiyun.com/alangaixiaoxiao/article/details/84146885 SPI协议通信CPOL:Clock Polarity,就是时钟的极性CPHA:Clock Phase,就是时钟的相位如果主机在上升沿输出数据到MOSI上,从机就只能在下降沿去采样这个数据了。反之如果一方在下降沿输出数据,那么另一方就必须在上升沿采样这个数据...
2019-05-09 17:51:46
2868
原创 led子系统
led子系统driver/leds/led-class.cleds_initclass_createstatic const struct attribute_group *led_groups[] = {&led_group,#ifdef CONFIG_LEDS_TRIGGERS&led_trigger_group,#endif...
2019-05-08 14:20:36
650
原创 Linux输入子系统
自己整理一下输入子系统的框架:以gpio_keys.c 设备端例子,以evdev.c为handler端的例子。gpio_keys.cplatform_driver_register(&gpio_keys_device_driver); gpio_keys_probe gpio_keys_get_devtree_pdata //设备树填充结构体信息...
2019-05-06 16:39:32
267
原创 高通GPIO配置方式
From 8916 , GPIO configurations start using pinctrl framework .The pin control-based software model differs in the following ways.1. All pin configuration information is defined in a SoC-specifi...
2019-05-06 14:43:08
2652
原创 yocto 初学
https://www.yoctoproject.org/文章:https://blog.youkuaiyun.com/sy373466062/column/info/yocto-projecthttps://blog.youkuaiyun.com/sy373466062/column/info/yoctoYocto:Yocto是这个开源项目的名称,该项目旨在帮助我们自定义Linux系统Poky:Poky有两...
2019-05-06 11:12:19
495
原创 USB 报告描述符 详细解析
C:\Users\tangfeng\Desktop\USB_HID协议中文版.pdfHID Windows编程接口函数文件 hid.dll 中提供了很多个 APIHidD_GetAttributes 请求获得 HID 设备的厂商 ID、产品 ID 和版本号 HidD_FreePreparsedData 释放函数 HidD_GetPreparsedData 所使用的资源 HidD_...
2019-03-28 18:59:22
6908
原创 USB2.0 描述符
参考网站https://www.usb.org/abouthttps://github.com/tmk/tmk_keyboard/wiki/HID-Report-Descriptorhttps://www.usb.org/document-library/hid-descriptor-tool参考资料:Device Class Definition.pdfdt2_4HID Usa...
2019-03-27 13:34:45
484
原创 串口编程总结经验
1. 串口操作需要用到的头文件#include <stdio.h>#include <stdlib.h>#include <unistd.h>#include <fcntl.h>#include <termios.h>#include <sys/types.h>#include <sys/stat.h>...
2019-03-22 09:58:33
431
原创 高效切换目录的方式 pushd popd
平时工作中经常切换代码目录,最常用的就是cd了。但是用cd切换的话,很大的问题就是如果来回切换的目录大于两个的话,就需要不断的敲 cd../../../../这样子,手都快敲断了、最近了解一个命令,可以轻松的来回切换目录。pushd ,popd通常,cd- 能够切换 两个目录,例如:如上可以看出来,实际上 cd - 其中的 - 应该就是 OLDPWD是 替代。c...
2019-03-21 09:55:41
224
原创 海信红外规范
时间T遥控器发射编码时所用到的最小时间单位,定义为 1T=560us.占空比遥控器发射时的载波中,每个周期中的高电平时间与每个周期时间的比值。数据格式遥控器的数据共有19字节(152位)组成,前面有头码,后面有尾码。头码由9ms高电平加4.5ms低电平表示;头码结束后,有16位用户码位8306(1000 0011 0000 0110)。用户码后为...
2019-03-15 16:21:49
3149
3
原创 红外发射和接收
rk3308:MODULE_PARM_DESC 对模块的描述信息module_param_named 加载模块可修改的参数查看模块信息:modinfo *.koparm:(MODULE_PARM_DESC中的信息)insmod *.ko module_param_named设置的变量=xxxinsmod hello.ko watchdog=1000IR发射compat...
2019-03-15 16:13:53
2798
原创 INTEL workshop IOTG EDGE computing
day1:1.intel 不是一个单纯的芯片厂商。2.针对你想深入的应用模式,三个月立项一:intel IOTG Biz Ovterviewsss物联网销售leader:xieqingshan DimoIOT在干什么发财的机会智能摄像头,视觉加速卡---提供参考设计,开发环境和开发软件,不提供产品。2.5-3亿美金营业额潜力:智能零售,智能交通,智能制造,视觉和渠道市场...
2019-03-14 09:24:26
2371
原创 梳理了U-boot 15的代码流程
bootloader通常stage1和stage2两步骤,u-boot也不例外。Stage1:依赖于CPU体系结构的代码(如设备初始化代码等)通常都放在这个程序段,且可以用汇编语言来实现;stage2:通常用C语言来实现,这样可以实现复杂的功能,而且有更好的可读性和移植性。<F:\FileRecv\Uboot中start.S源码的指令级的详尽解析+v1.6.pdf><...
2019-03-14 09:21:48
1062
原创 面试题目
1.通过宏实现一个swap函数,不使用中间变量#define swap(x,y) {(*x)=(*x)+(*y);(*y)=(*x)-(*y);(*x)=(*x)-(*y)}2.字符设备和块设备的区别块设备是随机的读取和写入设备的,而字符设备是按顺序读取和写入设备的3.linux内核的启动过程Vmlinux--->禁止FIQ,IRQ进入SVC(管理员)模式---->禁止c...
2019-03-13 23:38:15
133
原创 隐式类型转换
double ←── float 高↑long↑unsigned↑int ←── char,short 低1.如一个int 型数据与一个unsigned型数据一起运算,需要先将int型数据转换为unsigned型, 然后两者再进行运算,结果为unsigned型。所有这些转换都是由系统自动转换2.一个大于0x80的char型,由于最高位代表符号位,于是数据在实际上是显示为补码形式...
2019-03-05 13:59:22
357
原创 SPRD Camera sensor
总结调试camera sensor的代码流程。简单的基本的代码框架Sprd_Sensor_Porting_Guide_For_SL8521E.pdfOpen 部分:.open = SprdCamera3Factory::camera_device_open return gSprdCamera3Factory.cameraDeviceOpen(atoi(id), hw_device...
2019-02-18 17:19:07
7352
原创 linux ops 一些函数简介
1. int *(open) (struct inode *, struct file *)如果该项为NULL,设备的打开操作永远成功 2.void (*release)(struct inode *, struct file *)如果该项为NULL,设备的打开操作永远成功 3 int (*read) (struct inode *, struct file *, cons...
2018-12-27 19:38:09
2092
原创 删除多余的com(串口)的占用
在软件开发过程中,或者windows使用过程中,经常会出现电脑的com口被占用着,这会导致在使用新的设备的时候,存在com口不够用的情况。下面介绍方法能够解除和释放串口、 解除串口占用:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\COM Name Arbiter讲上述键值清除,即可将串口端口的占用情况解除 释放串口...
2018-11-30 17:54:12
10759
原创 wifi 基本的连接操作
wifi存在4种认证和加密的方式1,open2,WEP3,WPA4,WPA2工具iw,可以用于open和WEP的认证和加密方式,wpa_supplicant 上面四种加密认证方式都支持dhcp:使得WIFI网卡动态获取IPwireless.kernel.orgiw依赖于libnl库iw list 获得所有设备的属性,例如band信息(2...
2018-11-29 23:55:32
1277
原创 windows系统的备份和还原
在使用windows的时候,经常会出现一些系统的问题,例如一些流氓软件安装之后,会擅自修改注册表使你的电脑环境破坏。现在国内的软件环境这么流氓的大前提下,一个使用中的windwos需要不断的备份,这样就不至于流氓软件一次恶意/不经意的修改电脑环境导致电脑崩溃导致电脑系统需要重新安装。 本人就经历了一次电脑启动盘文件系统损坏,这样的损坏对我的影响是:花了整整一天的时间来重装系统,安装之前的软...
2018-11-29 19:56:30
8148
原创 展锐音频dapm完整路径
通过查看展锐音频框架,利用route原理。(方式:DTS,Debugfs(asoc/sprdphone/codec*/dapm),源码)。 找到一条完整的音频路径为:"Normal-Playback" ---> "DAC"--->"Digital DACL Switch"、"Digital DACR Switch"--->"ADie Digital DACL Swi
2018-11-14 14:57:07
1000
原创 Linux中如何使用GPIO信号
在sysfs中配置内核以支持GPIO在menuconfig中, -> GPIO Support (GPIOLIB [=y])从用户空间启用GPIO访问GPIO=22cd /sys/class/gpiolsecho $GPIO > exportls设置GPIO的方向并查看当前值echo "in" > directioncat...
2018-09-25 17:20:19
836
原创 linux shell 编程基础知识
$$:获取当前的shell进程号$?:获取执行上一个指令的返回值(0为成功,非零为失败),可以对上一个命令执行是否成功进行判断。$_:在此之前执行的命令或脚本的最后一个参数 $? 变量其实获取的是上一个程序返回给父进程shell的返回值(该值在0-255之间:0表示运行成功,2表示权限拒绝,1~125为运行失败原因是脚本命令、系统命令错误或参数传递错误,126为找到该命令但是...
2018-09-25 16:57:34
143
原创 linux 小知识 kernel
冯诺依曼结构和哈佛结构冯·诺伊曼结构也称普林斯顿结构,是一种将程序指令存储器和数据存储器合并在一起的存储器结构。程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置,因此程序指令和数据的宽度相同。而哈佛结构将程序指令和数据分开存储,指令和数据可以有不同的数据宽度。此外,哈佛结构还采用了独立的程序总线和数据总线,分别作为 CPU 与每个存储器之间的专用通信路径,具有较高的执行效率。...
2018-09-25 16:34:59
263
原创 字符设备驱动
Cdev结构体:cdev 结构体的 dev_t 成员定义了设备号,为 32 位,其中高 12 位为主设备号,低20 位为次设备号。使用下列宏可以从 dev_t 获得主设备号和次设备号在 调 用 cdev_add() 函 数 向 系 统 注 册 字 符 设 备 之 前 , 应 首 先 调 用register_chrdev_region()或 alloc_chrdev_region()...
2018-09-25 16:30:36
113
原创 Linux设备驱动移植注意事项
移植驱动前注意数据类型:u8、u16、u32、u64、s8、s16、s32、s64只能在内核空间使用_ _u8、_ _u16、_ _u32用来用户空间驱动中最好使用 int8_t、int16_t、int32_t、uint8_t、uint16_t、uint32_t、int64_t、uint64_t 这些 C99 标准确定长度类型结构体对界默认情况下,编译器为结构体的每个成员按其自...
2018-09-25 16:23:19
718
转载 Qualcomm Quick charge原理(摘自网络)
标准下行端口(SDP) 这种端口的D+和D-线上具有15kΩ下拉电阻。限流值如上讨论:挂起时为2.5mA,连接时为100mA,连接并配置为较高功率时为500mA。专用充电端口(DCP) 这种端口不支持任何数据传输,但能够提供1.5A以上的电流。端口的D+和D-线之间短路。这种类型的端口支持较高充电能力的墙上充电器和车载充电器,无需枚举。充电下行端口(CDP) ...
2018-09-25 16:14:14
1145
原创 C++基础知识
1,cout是一个输出流对象,输出操作由“<<“表达。endl是换行符。例如:cout <<"hello!!"<<endl;2,函数的定义在调用之前,使用之前不需要声明。函数的定义在调用之后,需要使用前声明。3,值传递和引用传递结果: the value are 7 12 the value are 107 112 the ...
2018-09-25 16:11:33
155
原创 input_event 和 ioctl
Input子系统的关键函数1,input_allocate_device()struct input_dev *input_allocate_device(void) { struct input_dev *dev; dev = kzalloc(sizeof(struct input_dev), GFP_KERNEL); /*...
2018-09-25 16:01:35
1147
原创 sprd-audio
audio : machine,platform,codec.machine : vbc-rxpx-codec-sc27xx.c //platform : sprd-2stage-dmaengine-pcm.ccodec : sprd-codec.c vbc-rxpx-codec-sc27xx.c late_initcall_sync platform_driver_regis...
2018-09-25 15:44:19
4862
原创 如何调用snd_pcm_open函数
之前确定到当打开pcm设备的时候,会执行到snd_pcm_open,这个open会导致substream->ops->open(substream)的调用。这个open函数在snd_pcm_set_ops函数设置了snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_PLAYBACK, &rtd->ops)也就对应到了soc_pcm_open...
2018-08-24 18:27:11
9056
1
原创 从soc_new_pcm看PCM设备的创建
从int soc_new_pcm(struct snd_soc_pcm_runtime *rtd, int num)看起。先对snd_soc_pcm_runtime结构判断相关字段,确定playback 和 capture用来确定是否产生相关SNDRV_PCM_STREAM_PLAYBACK/SNDRV_PCM_STREAM_CAPTURE流/* 判断dynamic和no_pcm字段...
2018-08-20 17:00:16
1179
原创 accesstoken、refreshtoken
在工作的时候,有点疑惑accesstoken、refreshtoken这两个是怎么实现的,简单查找了一下百度,得到了如下的解释1,token化的协议过程2,当用户登录的时候,生成access_token和refresh_token,并返回给APP。 当access_token失效时,APP使用refresh_token来请求刷新token。 如果refresh_token过期,...
2018-06-29 14:12:42
13482
原创 windows上使用git的两个问题
1,使用git不能正常从本地push到远程服务器分支。刚安装的git,在使用git remote “name” “url”绑定远程分支,或者使用git clone “url”的方式拉下来代码之后,第一次进行push操作:git push时,会出现了refusing的问题。使用如下命令:git config receive.denyCurrentBranch ignore2,使用git在管理代码的时...
2018-06-28 16:46:06
178
原创 安装Perl 和 RVCT3.1 经验
1,安装Perl安装Perl可以直接在网上下载,链接是:http://www.perl.org/安装成功之后,windows打开cmd,键入perl -v 可以查看是否正确安装。如下是安装成功的照片2,安装RVCT3.1下载RVCT3.1我借鉴了 大叔叔的博文步骤:https://www.cnblogs.com/wilyas/p/6067113.html进入https://silver.arm....
2018-06-26 19:29:39
3453
yocto 超详细教程,看完必会搭建linux系统
2019-05-06
Linux kernel coding style
2019-03-18
OpenVINO + HDDL 边缘计算领域上手实验
2019-03-14
免费PDF阅读器
2019-02-18
【暴力删除工具】可以删除win上所有文件
2019-02-16
Writing-udev-rules
2018-09-25
USB数据包/描述符生成工具
2018-09-13
Google Android SDK开发范例大全
2018-08-23
ACPI全中文的资料
2018-06-28
科大讯飞语音唤醒SDK_forJava
2018-06-27
ADB安装驱动
2018-06-27
Source Insight 4.0的破解方式
2018-06-27
USB_HID中文协议
2018-06-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人