![](https://img-blog.csdnimg.cn/20190918135101160.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
杂文
杂文
<( ̄︶ ̄)Okay.
<( ̄︶ ̄)↗[GO!]
展开
-
SPI总线学习总结
同步/异步,串行/并行,SPI/I2C/UART/RS485/CAN等简单介绍与区别(1)全双工同时支持收发(2)同步通信有同步时钟,(3)串行外围接口总线串行通信指计算机与I/O设备之间通信的各位顺序依次一位一位进行传送。通常数据在一根数据线或者一对差分线上传输。(4)主从模式(5)在时钟移位脉冲下,数据按位传输SPI有四种工作模式:通过串行时钟极性(CPOL)和相位(CPHA)的搭配来得到四种工作模式:1.CPOL=0,串行时钟空闲状态为低电平,此时可以通过时钟相位(CPHA)来选择具原创 2022-07-03 14:40:36 · 470 阅读 · 0 评论 -
I2C学习
i2c知识整理原创 2022-05-22 13:37:30 · 258 阅读 · 0 评论 -
DRM 架构简要说明
1.概述DRM全称是Direct Rendering Manager,管理进行显示输出的, buffer分配, 帧缓冲. libdrm库提供了一系列友好的控制封装, 使用户可以方便的进行显示的控制, 但并不是 只能通过libdrm库来 控制drm, 用户可以直接操作drm的ioctl或者是使用framebuffer的 接口实现显示操作. 后面重点介绍kernel态 drm的机制.以下为drm显示大致框架:2. 设备节点DRM 的设备节点为 “/dev/dri/cardX”, X为0-15的数值.原创 2021-12-14 17:48:46 · 4708 阅读 · 0 评论 -
场频和行频
参考链接:关于帧率和刷新率的区分行频行频又称水平扫描频率,是指每秒钟电子枪从屏幕上从左向右扫描的次数,单位是Hz。帧数:显卡一秒钟渲染好并发送给显示器多少张画面。帧率一帧就是一幅静止的画面,连续的帧就形成了动画,如电影等。我们通常说的帧率就是在一秒钟时间里传输的图片的帧数表示,每一帧都是静止的图像,快速连续的显示帧便形成了运动的假象,还原了物体当时的状态。高帧率可以得到更流畅、更逼真的动画。每秒钟帧数越多(FPS:Frames Per Second),所显示的动作就会月流畅。一般来说,图像帧率设原创 2022-05-22 14:36:02 · 1856 阅读 · 0 评论 -
Linux下的DMA驱动学习
1.参考博客链接Linux-2440下的DMA驱动(详解)中断、DMA区别CACHE存储器2.DMA简介直接访问存储器,DMA传输方式无需CPU直接控制传输,通过硬件为RAM、I/O设备开辟一条直接传送数据的通路,能使cpu的效率大大提高。RAM:随机存储器,是与cpu直接交换数据的内部存储器,速度很快。DMA虽然能够释放cpu,但是,除非数据量很大,不然不建议使用DMA方式,因为一般影响传输速率的是外设。3.DMA驱动编写套路注册DMA中断,分配缓冲区DMA中断:DMA方式是原创 2021-11-06 10:34:07 · 535 阅读 · 0 评论 -
解决普通用户切换到root用户“认证失败“
问题:步骤1:sudo passwd步骤2:输入自己的用户密码步骤3:输入root账户密码步骤4:再次输入root账户密码输入命令:su - root 输入刚才的root密码 结果如下原创 2020-09-14 15:26:57 · 1155 阅读 · 0 评论 -
fdisk: WARNING: rereading partition table failed, kernel still uses old table: Device or resource bu
卸载原创 2020-12-16 19:43:44 · 2104 阅读 · 1 评论 -
#、##、__VA_ARGS__和##__VA_ARGS__的作用
#、##、__VA_ARGS__和##__VA_ARGS__的作用转载 2021-08-12 10:37:52 · 52 阅读 · 0 评论 -
USB_ID原理
USB_ID转载 2021-08-18 13:51:00 · 1286 阅读 · 0 评论 -
网络编程之cs服务器
服务端#include <stdio.h>#include <sys/types.h>#include <sys/socket.h>#include <arpa/inet.h>#include <sys/socket.h>#include <netinet/in.h>#include <arpa/inet.h>#include <unistd.h>int server_init(const c原创 2020-12-04 10:29:37 · 193 阅读 · 0 评论 -
网络编程 之 MSG_WAITALL
一、MSG_WAITALL 理解MSG_WAITALL标志,如果recv设置了这个标志,当没有收到请求的字节数时,recv函数会阻塞。然而,当被信号打断,或者发生了错误,或者断开了连接,或者接收到的下一个数据和已经接收的数据的数据类型不一致时,recv函数即使没有收到请求的字节数,也会返回,返回一个错误。二、代码示例#include <stdio.h>#include <sys/types.h>#include <sys/socket.h>#include &原创 2020-10-16 16:55:34 · 3136 阅读 · 0 评论 -
line 1 /bin/bash: No such file or directory
参考链接1.打开notepad++2.选择编码3.转为UTF-8,无BOM转载 2022-03-21 12:10:00 · 634 阅读 · 0 评论 -
内核打印时间戳
1.采用printk进行打印在Linux内核中打印日志时间戳2.使用函数进行打印static void test(){ struct timeval tv_begin; struct timeval tv_end; do_gettimeofday(&tv_begin); ...... do_gettimeofday(&tv_end); ...... printk("sec:%ld\n",tv_begin.tv_sec); printk(原创 2022-02-19 16:39:58 · 2143 阅读 · 0 评论 -
VS2019下添加include和lib
include添加1.找到include文件夹,复制地址2.右键,选择属性,打开如下界面3.找到附加目录项,复制刚才的地址到这里,确定保存lib添加1.找到lib文件夹,复制地址2.右键,选择属性,打开如下界面3.选择文档管理程序–>常规–>附加库目录–>复制刚才的路径到这里...原创 2020-10-15 09:49:56 · 7569 阅读 · 0 评论 -
AG35控制态串口切换成gps串口
修改地方1修改地方2标记处用#注释掉然后编译rootfs3.编译的内核和根文件系统一起烧录到内核注意文件系统要是最新的将原有的ql-ol-extsdk删除在解压ql-ol-rootfs进行修改再将ql-ol-extsdk压缩包删掉将刚才修改的ql-ol-rootfs压缩...原创 2020-12-18 13:11:20 · 412 阅读 · 0 评论 -
isof_4.89工具移植
1.工具2.放到linux中解压3.进入目录解压lsof_4.89_src.tar4.参数配置LINUX_KERNEL=/home/li/A7/AG35_A7/ql-ol-kernel ./Configure linux/home/li/A7/AG35_A7/ql-ol-kernel源码路径5.修改Makefile6.make7.将生成的工具放入开发板8.使用...原创 2020-12-31 14:13:46 · 159 阅读 · 1 评论 -
全局变量和函数名同名导致的问题
定义了一个用来表示时间的全局变量time,然后我在其他函数中又调用了time()函数,发生了段错误。这个问题的原因是全局变量和函数同名了,这样的话系统在查找全局变量time时会被函数time所影响,反之也一样,因此要避免这个全局变量和函数名同名的问题。...原创 2021-01-05 08:53:56 · 1134 阅读 · 0 评论 -
终端以太网测试
1.保证相关引脚的电平有效打开电源(144引脚),使能芯片(159引脚),拉高唤醒(143引脚)echo 25 > /sys/class/gpio/exportecho out > /sys/class/gpio/gpio25/directionecho 1 > /sys/class/gpio/gpio25/valueecho 58 > /sys/class/gpio/exportecho out > /sys/class/gpio/gpio58/directio原创 2020-12-18 12:59:26 · 178 阅读 · 0 评论 -
加密相关概念
对称加密技术:“加密”和“解密”使用相同的密钥。非对称加密技术:“加密”和“解密”使用不同的密钥,即有私钥、公钥之分。密钥对:在非对称技术中,有两种密钥,公钥和私钥,一个持有者持有公钥和私钥,顾名思义私钥是自己保管的,不能公开,而公钥是持有者公布给他人的。公钥:假如现在,我是接收方,一个人要给我发送数据,由于我的公钥是公开的,他会用我的公钥对这个数据进行加密,然后将加密后的数据发送给我,因为用我的公钥加密的数据只能用我的私钥解密,因此即使在传送过程中被其他窃听者窃取,也没有关系,他们没有我的私钥,无法原创 2021-01-03 17:19:15 · 95 阅读 · 0 评论 -
i2c-tools-v3.1.2移植
1.工具2.放到linux中解压3.配置Makefile4.make成功后会在tools目录下生成i2cdetect i2cdump i2cget i2cset等工具5.将i2cdetect放到终端原创 2020-12-31 14:07:00 · 111 阅读 · 0 评论 -
gps之pynmea2安装
使用 PyNMEA2 解析 NMEA 0183 协议Installing with get-pip.py安装日志li@li-virtual-machine:~$ sudo apt-get install pip[sudo] li 的密码:正在读取软件包列表… 完成正在分析软件包的依赖关系树正在读取状态信息… 完成E: 无法定位软件包 pipli@li-virtual-machine:~$ curl https://bootstrap.pypa.io/get-pip.py -o get-pi原创 2020-11-06 20:13:48 · 1763 阅读 · 2 评论 -
短信发送中文数据到手机显示乱码
PDU编码共有三种方式来发送和接收SMS信息:Block Mode, Text Mode和PDU Mode。其中PDU Mode被所有手机支持,可以使用任何字符集,这也是手机默认的编码方式。发送短消息常用Text和PDU(Protocol Data Unit,协议数据单元)模式。Text模式:收发短信代码简单,实现起来十分容易,但最大的缺点是不能收发中文短信;PDU模式:不仅支持中文短信,也能发送英文短信。PDU模式收发短信可以使用3种编码:7-bit、8-bit和UCS2编码。7-bit编码:用原创 2020-10-20 16:39:38 · 1081 阅读 · 0 评论 -
嵌入式linux终端控制台中文乱码
刚开始是bai简单的编码du不匹配情况,修改secureCRT中的传输编码方式从默认zhi变为utf8,中文不再乱码,但变成了问号,dao“???”;因为中文目录是在挂载的SD卡中的(居然没有尝试一下网络挂载或者其他的方式下中文是否乱码,)。,编译内核的时候fat文件系统的codepage和isochaset配置对,挂载时选择vfat,-o命令选择codepage和isocharset匹配就好了,具体的命令是,mount -t vfat -o codepage=936,iocharset=utf8 /de原创 2020-10-21 21:07:59 · 380 阅读 · 0 评论 -
我的va_start和va_end学习
va_start和va_end定义1.va_start和va_end是两个宏2.在c语言中,当我们无法列出传递函数的所有形参类型和数目时,可以用省略号指定参数表相关知识1.va_list ap;//是定义一个字符指针ap2.va_start(ap,msg);//意思是让ap指向第一个形参列表中的第一个形参3.vprintf(msg,ap);//C 库函数 int vprintf(const char *format, va_list arg) 使用参数列表发送格式化输出到标准输出 stdout原创 2020-10-23 20:12:09 · 70 阅读 · 0 评论 -
在虚拟机编译程序无报错,在终端出现./server: line 2: syntax error: unexpected end of file
1.在虚拟机里面编译之前要source一下环境,2.然后将生成的可执行程序下载到终端就可以执行了。原创 2020-12-18 12:41:46 · 376 阅读 · 0 评论