- 博客(53)
- 资源 (7)
- 收藏
- 关注
原创 debian根文件系统制作
在这里介绍debian根文件系统的构建,builtroot根文件系统的不是不能用,只是这个能更方便的下载一些软件,更好用!提示:以下是本篇文章正文内容,下面案例可供参考。
2025-03-07 21:43:08
843
原创 licheepi nano usb RNDIS连接外网方法及使用
前序内容使用licheepi nano 连接到了PC,可以和PC互相ping通,现在要进一步来连接外网,以期望完成更多的操作。虽然能链接外网了,但在使用apt-get命令的时候感觉到很慢很慢很慢,倒还不如在构建根文件系统的时候就把需要的软件下载好,可以可以剩下一部分时间:)
2025-03-07 20:10:33
878
原创 linux软件源以及换源操作
在使用Linux发行版,如Ubuntu时,使用包管理器apt去下载软件时,常会遇到速度极差、下载失败等问题。或者某些特定的软件需要去特定的“源”中去下载。这些情况都需要我们主动去换源。也就是说,更换软件源可以改善系统更新和软件安装的效率,提高系统稳定性,并在特定情况下让用户更灵活地获取所需的软件包版本。
2023-11-20 20:20:49
10215
原创 Licheepi Nano屏幕驱动并输出打印信息
Licheepi Nano买回来好长时间,没咋玩,最近看了一个利用F1C100S自制迷你电脑的博客,里面主要参考的就是Licheepi Nano。我打算先在Licheepi Nano上完成屏幕操作、Debian文件系统和USB键盘等内容,这里介绍怎样利用Licheepi Nano外接屏幕,并且将信息可以输出到屏幕上。(对了,我的屏幕并不是官方的,实在tb上买的一块40脚-rgb-4.3寸屏幕,因为Licheepi Nano板载屏幕背光驱动,买了直接插就能用)
2023-08-08 21:41:38
537
原创 Linux 中利用设备树学习Ⅳ
在这里介绍一些基于pinctrl子系统和gpio子系统的设备树编写和驱动代码编写的例子。有两部分(一)设备树编写,即device代码(二)驱动文件编写,即drive代码。以“点亮四个LED灯”的程序为例进行讲解。
2023-08-07 20:52:25
656
原创 Linux 中利用设备树点灯
前一节中介绍了pinctrl子系统和gpio子系统,但是仍然感觉梦比,在此进行一个小实验来学习怎么使用。仍然是点灯,因此需要先利用pinctrl子系统将对应引脚设置为gpio,然后再利用gpio子系统控制输入输出。然后在具体介绍一下platform模型,以及一些gpio函数。之前章节也提到过:平台总线模型,将驱动程序分成了driver.c和device.c两部分。其中,前者是与驱动相关的代码;后者是与硬件相关的描述,如一些寄存器和其他的硬件资源。两者会进行匹配,成功后进到probe函数。
2023-06-27 10:29:47
893
原创 程序运行的一些基础知识
开发时,一些库需要自己添加进Ubuntu和开发板中,就需要知道,需要知道编译程序时去哪找头文件?链接时去哪找库文件?进而将库的头文件和库文件加到编译器能找到的路径下。
2023-04-06 19:52:48
405
原创 ioctl接口应用
前面提到了,利用file_operations结构体中的write\read函数,在其中利用copy_to_user/copy_from_user进行内核和用户的通信。但在一些场合下,例如:点灯中,需要在用户程序中调用write(1)函数,通过file_operations调用xx_write函数,在里面通过copy_from_user读取1,再进行判断,到最后点灯。这是比较繁琐的,那么就需要一种更简单的方式—ioctrl。
2022-11-02 15:56:38
1785
原创 算法学习:动态规划
14天阅读挑战赛努力是为了不平庸~第一章 算法简介第二章 贪心算法第三章 分治法第四章 动态规划意大利数学家斐波那契在《算盘全书》中描述了一个神奇的兔子序列、这就是著名的斐波那契序列。假设第1个月有1对刚诞生的免子,第选人月讲入成熟期,第3个月开始生育兔子,而1对成熟的兔子每月会生1对兔子,免子永不死本…那么,由1对初生兔子开始,12个月后会有多少对兔子呢?如果是N对初生的兔子开始,M月后又会有多少对兔子呢?第1个月,兔子①没有繁殖能力,所以还是1对。第2个月,兔子①进入成熟期,仍然是1对。
2022-10-31 15:32:41
543
原创 算法学习:算法简介
努力是为了不平庸~著名科学家Niklaus Wirth 教授曾提出:数据结构+算法=程序数据结构是程序的框架,算法是程序的灵魂。
2022-10-22 22:18:34
718
原创 CPP特性
为了文章的结构清晰和方便记忆,本文以三大特性分别展开叙述,为了解释方便,会给出一段代码,对代码做出解析,并引出各个概念。//基类People class People {public ://一般定义的类的方法 void setname(char * name);//构造与析构函数 People(char * name , int age);People();//虚函数 virtual void v() {private :};
2022-10-15 22:11:00
920
原创 python模块学习-argparse和yacs
用到了两个模块一个为argparse,另一个为yacs。argparse 模块的用处是可以自己编写命令,定义自己需要的一些参数,只需要很简单的几句语句。一般在你自己的项目文件中用上了 argparse 模块之后,在命令行中利用,我认为这种方式在windows中的作用不大(界面友好,点运行就能跑,修改源码中的参数简单),但是在linux中这种在命令行中应用的方式就很便利了yacs 库就是配置参数的作用。
2022-10-09 21:31:07
948
原创 C语言-字符与指针-学习攻坚
C语言中数组、字符和函数的基本用法很容易理解与运用,为了进一步提升效率,现在来介绍进阶的方法—指针。编程的本质其实就是操控数据,数据存放在内存中。而指针指向的就是内存地址中的数据,因此,指针算是一种进阶用法。本文介绍指针在字符中的用法。字符变量在C语言中用char定义。字符用单引号为一个元素;字符串需要用双引号为一个元素,字符串最后一位是 \0转义字符。//定义字符常量,ch不能修改(赋值、加减)在C语言没有原生的字符串类型!而是利用字符串数组或字符指针的形式来存放字符串。
2022-10-03 16:12:06
518
原创 Linux 设备树中pinctrl与gpio(lichee nano pi)
Linux 设备树中pinctrl与gpio(lichee nano pi)
2022-07-14 13:49:04
1819
1
原创 WPS中表格中上下线的磅数调整问题-三线表制作
不知道是不是只有我的wps有问题,当我制作好三线表想要调整上下线和中间线的磅数时,选择了磅数不能调整,不知道是不是bug。解决办法:当表格的线都存在时,是可以调整的。具体办法:当要对某一个表格进行操作时,首先回复全部框线,紧接着对该就可以操作了如下图:我要对中间一行进行操作,首先选中之后进行了“所有框线”操作。紧接着,进行需要的操作。可以完成了。紧接着把其他的都去掉,三线表制作完成:...
2022-05-17 11:45:42
9697
原创 设备树语法学习
#address-cells和#size-cells属性这两个属性的值都是无符号32位整型,用于描述子节点的地址信息。#address-cells属性值决定了子节点reg属性中地址信息所占用的字长(32位),#size-cells属性值决定了子节点reg属性中长度信息所占的字长(32 位)#address-cells = <1>, #size-cells = <0>,说明子节点 reg 属性中起始地址所占用的字长为 1,地址长度所占用的字长为 0。因为父节点设置了#ad
2022-05-17 11:27:35
1328
原创 荔枝nano开启RNDIS驱动,无需补丁。
****************************************************************************************新学会的自己修改内核配置,无需任何补丁开启usb_rndis虚拟网卡,需要配置内核和文件系统,u-boot无需更改。****************************************************************************************1.配置内核2.配置文.
2022-05-11 20:59:34
2773
12
原创 linux-Ubuntu-快捷键Tab-列举similar ones
but there are 22 similar ones.学习交叉编译时,交叉编译器的名字贼拉长,一个个打上去很不方便。突然有一天看到了这种方法。可以通过你给的前缀列举出所有相似的命令。本文是要找交叉编译器,arm-linux-gnueabi-gcc,首先输入arm按tab键,他会展现出你所有的该前缀相关的:再次输入arm-系统自动补齐接下来在进行一些修改就可以用了,效率大大提高。感觉很有用。将hello1.c静态编译成hello,其中-o后面指定名字.
2022-05-04 10:37:41
816
原创 利用tftp在Windows端和开发板互传文件
最开始要搞nfs服务,但是在内核里打开nfs之后编译生成的文件是损坏的,搞了大概一两天,不得已放弃了nfs服务,而tfpt的搭建比较简单,不需要那么多的配置,在我已有的软硬件情况下都可以实现。故采用了tftp服务。一 环境配置之前的章节Windows或者虚拟机都可以ping通开发板,这是基础,代表它们之间可以通信。在这里讲一下windows的环境搭载:下载一个tftpd32.exe软件其中current directory是你要共享的文件夹,里面的文件你可以在开发板通过命令进行复制、增加
2022-05-03 22:21:49
4543
2
原创 linux内核rndis_usb虚拟网卡-荔枝派nano(二)
上面的那种不能再window下跑,也算是有一些缺陷,但是也足够用了。下面给出无缺陷的可以使得主机、虚拟机、开发板三者相互ping通的内核和dtb。也是按照第一种方法做出来的,但是这个的驱动就可以在windows下识别出来,可能是某一个步骤没安装好,但是懒得弄了。现在讲一下windows下的网络设置问题。当开发板串口设置好,插好,usb接入到windows时,设备管理器会展现如下驱动;而且在网络适配器中,会多出一个以太网络。如下图:右键进入属性,点击协议根.
2022-05-03 21:20:07
2149
5
原创 linux内核rndis_usb虚拟网卡-荔枝派nano(一)
给nano烧录好tf卡之后进入系统,可以看到文件系统,可以进行一系列的操作:vi、su、ls、第一次进入这个系统感觉很amazing,但是没啥卵用,只能看看,由于不能联网,很多事都做不了。网上有卖荔枝nano的wifi模块的,但是会占据tf卡槽,而且还花钱...因此在网上找了找关于linux内核当中rndis虚拟成网卡的内容。1 内核5.2版本(只需要修改内核,u-boot和rootfs不需要修改)该方法主要参考了1.帖子f1c100s linux 5.2 USB已完美驱动,host
2022-05-03 20:54:47
5318
原创 tf卡烧录linux镜像-荔枝派nano-全志f1c100s
所需工具:荔枝nano板*1usb转ttl*1(板子上面没有转ttl芯片,故需要自己准备)tf卡*1Ubuntu虚拟机0 前言首先,先说明一下整个流程1 u-boot2 linux内核3 根文件系统
2022-05-03 20:09:21
3175
1
原创 tf卡分区操作-ubuntu-gparted
首先在Ubuntu中打开GParted软件,没有的话可以sudo apt-get install gparted下载,然后sudo gparted打开。首先选择你需要分区的disk!千万要注意!选择完之后,要首先要格式化,把上边的设备带小钥匙图标的卸载掉,卸载之后才能格式化。完事之后点上边一栏的对勾,执行。执行了之后会变成一整个灰色的。然后点上边一栏第一个增加,构建两个分区:第一个为FAT32格式的32M大小就好第二个EXT4格式的剩下的内存都给它完事之后通过在终端里输入
2022-05-03 20:00:19
2639
原创 记录更新ubuntu18.4之后网络链接
1之前找了很多关于教程,说是要改虚拟机的ip地址和主机的不一样,改DNS地址等等,改了之后有时候好使,但是有时候再开机不好使。1.2然后让删东西,一不小心把ens33卸载了。窘境。2然后用这种方法:sudo service network-manager stopsudo rm /var/lib/NetworkManager/NetworkManager.statesudo service network-manager startsudo gedit /etc/Network
2022-04-22 19:26:50
1390
原创 卡尔曼滤波器原理讲解及其matlab实现
引言:在进行一些信号处理的过程中,我们通常会采集到一些数据,但是实际测量到的数据是受到噪声干扰了之后的,故与真实的数据有一些偏差。因此我们把 [ 通过测量数据进行一系列处理得到近似于真实数据 ] 的过程(或利用测量数据估计得到近似于真实数据的过程)称为 [ 估计 ] 。其中 [ 波形估计 ] 是很重要的一种工具,在目标跟踪,轨迹跟踪等方面具有很重要的应用。一般波形估计是通过一组数据得到另一组数据,就像是一组数据通过了一个滤波器,得到另一组数据。故经常会听到 [维纳滤波器]、[卡尔曼滤波器] 等词汇。
2022-04-11 20:48:56
19388
2
原创 矩阵论常用公式-matlab
1、函数功能:E=eig(A):求解矩阵的全部特征值,构成向量E。[X, D] = eig(A):求矩阵A的全部特征值,构成对角阵D;并产生矩阵X,X各列是相应的特征向量。
2021-10-16 18:06:33
406
原创 [数组]使用与详解-C语言
---------------------------------------------------------------------------------------------------------------------------------❤C语言中数组的名字代表啥?❤数组怎么传参?❤数组指针是啥?-----------------------------------------------------------------------------------------
2021-10-08 21:19:56
2321
1
原创 PRI变换法原理解析及其matlab分析
信号TOA序列和前一文一样pri变化之后的图:代码:clearclcx_range=50;x=zeros(1,x_range);pri_1=5;pri_2=8;x(1:pri_1:x_range)=x(1:pri_1:x_range)+1;x(3:pri_2:x_range)=x(3:pri_2:x_range)+1;t_n=[];for p=1:length(x) if x(p)~=0 t_n=cat(2,t_n,p); endend%14
2021-10-05 11:32:22
8067
5
原创 自己写的PRI变化法-matlab
仿照自相关函数的写法,加上了相位因子。但这种方法弊端:1、处理的点数太多 2、检测效果拉跨输入序列如下图示:(两个固定pri的信号一个从1开始间隔为5,一个从3开始间隔为8经过mypri之后的图:代码如下:clearclcx_range=50;x=zeros(1,x_range);pri_1=5;pri_2=8;x(1:pri_1:x_range)=x(1:pri_1:x_range)+1;x(3...
2021-10-05 11:28:34
1548
3
原创 信号与系统-卷积运算-线性时不变系统的输入输出关系-扫盲文-理解
线性时不变(LTI)系统用G表示,输入用x(t)来表示,输出用y(t)来表示。他们的关系是。注意一下线性时不变(LTI)系统才是《信号与系统》里面研究的。LTI系统中才满足具体该式怎么来的,直接见下图:这本书里面的推导算是我看过最容易理解的一版。从上面可以看到只有满足LTI系统的条件,才可以完成累加和时移这些操作。实际上是将信号进行了分解,分解成一个个的带权重的冲激函数,然后累加。当这个由很多冲激函数累加构成的信号经过系统时,就可以得到1.2.4式,得到...
2021-09-21 14:07:16
6882
基于51单片机的挥手式开关设计-毕设
2022-05-30
usb-rndis驱动大礼包
2022-05-26
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人