自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

一只大鱼_的博客

鲸落南北

  • 博客(17)
  • 资源 (1)
  • 收藏
  • 关注

转载 独立编译设备树的方法 多文件 多dts依赖

独立编译设备树的方法 多文件 多dts依赖将src_dts_file编译成dest_dtb_file设备树二进制文件。多文件编译对于有#include包含关系、宏定义的dts文件,直接采用以上的方法将会出现#include相关的语法错误。DTC本身不支持#include语法,其正确语法为/include/。如将以下dts(没有宏定义) 改为即可通过编译...

2022-06-14 23:18:37 1037

转载 U-boot下编写代码对SPI flash进行操作

SPI协议简介.SPI 是英语Serial Peripheral interface的缩写,顾名思义就是串行外围设备接口。是Motorola(摩托罗拉)首先在其MC68HCXX系列处理器上定义的。.SPI,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为PCB的布局上节省空间,提供方便,主要应用在 EEPROM,FLASH,实时时钟,AD转换器,还有数字信号处理器和数字信号解码器之间。1.从器件只有在主控机发命令时才能接收或发送数据,其数据的传输格式

2021-07-09 14:28:54 1713

原创 向U-boot开源社区提交代码过程

前情提示:本文档主要介绍代码的提交过程,不讨论代码内容。1.从远处仓库git clone 代码;开始添加代码前最好先:git pull --rebase2.添加板级代码,编辑、编译、运行,确保可以正常进行运行,可以进入os等。3.git add . 、git commit -s -v (如需取消之前的commit:git reset HEAD^;)4.生成patch补丁:git format-patch -1 commit-id5.检查代码风格:./scripts/checkpatc

2021-07-09 13:53:35 513

转载 【PCIE-2】---PCIE配置空间及访问方式简介

对新手来说,第一步了解PCIE的相关基本概念,第二步了解PCIE配置空间,第三步深入研究PCIE设备枚举方式。本章主要总结第二步的PCIE配置空间按照国际惯例,先提问题:1. 什么是PCIE的配置空间?2. PCIE设备的配置空间有多大? PCI和PCIE的配置空间有何区别与联系?3. 如何访问PCIE设备的配置空间?4.有几种类型,都包含什么内容?带着上述问题,来进行该部分的总结:什么是PCIE的配置空间?  每个PCIE设备都有自己的独立的一段配置空间,该...

2021-04-23 14:15:25 2361

转载 【PCIE-1】---Pcie基本概念普及(扫盲篇--巨适合新手)

PCIE由早期得PCI扩展衍生而来并且对兼容PCI,两者得主要区别在于并行到串行得切换,且速率更快。目前主板上越来越多得设备都挂载到PCI总线下面,甚至部分硬盘也会挂载PCI总线下面,可见PCIE得应用越来越广。PCIE设计的知识面比较广,无论是在BIOS下还是系统下都显得尤为重要。本章主要介绍PCIE的基本概念及基本知识扫盲,初次学习的同学必看。知识点扫盲:1. 通常会看到x1,x2,x4,x8,x16,x32,怎么理解?  x1表示1个Lan,PCIE总线走差分信号,1个Lan4条线可接收也可

2021-04-23 14:12:12 8723

原创 Linux | uboot的make xxx_defconfig与 make menuconfig

在uboot里,编译文件时,先要配置.config文件,然后Makefile在编译时通过读取.config文件的配置来选择要编译的文件。.config文件的生成可通过make menuconfig 或make xxx_defconfig 方式生成,这两种方式看上去虽然不同,但是两者的原理是一样的,都是通过Kconfig文件的配置来的。一般来说,开发板厂商会提供对应开发板的xxx_defconfig文件,编译时我们需要做的是:1.make xxx_defconfig当你使用某一款开发板时,可以直接

2020-11-19 15:31:16 1936

原创 Linux | 通过代码实现Linux的cp复制命令

1、Linux系统编程,使用系统IO的方式来实现,完整代码如下:#include <stdio.h>#include <stdlib.h>#include <sys/stat.h>#include <errno.h> // 全局变量: errno(0:正常, 非0:异常)#include <unistd.h>#include <sys/wait.h>#include <fcntl.h>#include

2020-11-12 16:21:15 484

原创 Linux | uboot2017添加自定义命令

----the version of uboot is 2017假设我要添加一个自定义命令叫“test”,添加步骤如下(三步即可):1.在cmd/下编写一个test.c文件,文件里包含功能函数和宏U_BOOT_CMD (注:功能函数必须是这个格式:do_xxxx(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);)2.在cmd/下的Makefile里添加:obj-y += test.o或者obj-$(CONFIG_CMD_TEST).

2020-11-12 16:13:15 277 1

原创 Linux | minicom使用教程

1.配置串口:输入minicom进入minicom终端,Ctrl+A然后输入Z是查看命令菜单,O可以配置串口信息(修改成ttyUSB0、硬件流程控制设置为 NO;X是退出终端。2.设置传输文件所在目录:Ctrl+A然后O:更改文件上传于下载的目录.3.传输文件要安装lrzsz才支持x/y/zmodel协议。4.传输文件:Ctrl+A然后s,选择传输协议,再选择文件(空格键),最后回车键确定传输。(从pc传到开发板)或者在开发板端使用rz、sz命令来发送或者接收文件(接收:rz、...

2020-11-09 13:48:03 1362

原创 QT | QT的安装与创建一个新的工程示例

安装 c++ 集成开发环境 例如: QT (跨平台性很强)http://www.qter.org/ 中国的社区网站https://www.qt.io/cn QT 官方的社区网站下载QT 的开发工具https://download.qt.io/official_releases/qt/5.13/5.13.2/ 根据自己的系统版本进行下载安装设置如下:第一个C++ 工程代码的创建:1.New project -> non-Qt-project...

2020-11-02 13:45:32 199

原创 Linux | arm-linux-gcc交叉工具链的配置

一、CRT配置方式:quit connect-》protocol(serial)-》port->你自己的端口baud rate 115200其他都不用变,如果右边有勾勾,一个都不留。1,开发板通电后默认让他启动系统(3秒内不要按下任何按键)2,默认开发板会启动一个出产的应用程序,你可以ctrl+c结束他二、如何配置arm的工具链命令:1,创建一个存放工具链的路径1,在/usr/local创建一个arm的目录mkdir /usr/local/arm2,将.

2020-10-27 10:39:50 300

原创 Linux | window与Linux(Ubuntu)文件共享方法(Samba、FTP)

方法一:使用Samba:1.安装sanba:sudo apt-get install samba2.配置:sudo vi /etc/samba/smb.conf(旧了不管用了,用 $ sudo service smbd restart)然后在最后面输入:3.重启一下samba:sudo /etc/init.d/samba restart4.查一下ip:ifconfig5.window端通过“运行”或者文件浏览器访问查到的ip:// (ip是多少)6.在家目录下创建一个你要

2020-10-26 10:52:32 335

原创 C语言 | 删除字符串里的空格

/***删除字符串内的空格*/#include<stdio.h>#include<string.h>//遍历元字符串,删除空格char *func(char *str){ int j = 0; for(int i=0;i<strlen(str);i++) { if(str[i] != ' ') { str[j++] = str[i]; } } .

2020-10-23 16:42:29 10078

原创 C语言 | 从指定字符串中删除指定字符

/***删除字符串内的空格*/#include<stdio.h>#include<string.h>//遍历元字符串,删除空格char *func(char *str){ int j = 0; for(int i=0;i<strlen(str);i++) { if(str[i] != ' ') { str[j++] = str[i]; } } .

2020-10-23 16:41:36 8811

原创 C语言 | 结构体与共用体介绍

1.结构体不能包含函数。2.结构体用“.”,结构体指针用“->”。3.定义结构体变量的三种方式:(1):先定义结构体类型再定义结构体变量。(2):定义结构体类型的同时定义结构体变量。(3):直接定义结构体变量,只有关键字struct,没有结构名,由于没有结构名,在此定义语句后面无法再定义这个类型的其他结构变量,除非把定义过程再写一遍。(不建议使用)4.结构体有三种初始化方式:struct peolpe{int age;char name[];float he

2020-10-23 15:35:54 329

原创 C语言 | 宏与条件编译

1.在C语言中,宏具有不可替代的地位,宏分为两种,一种是不带参的,另一种是带参宏。带参宏是直接将其参数进行替换,中间没有实参形参的计算,因此传递的是参数的名字,而不是参数的类型。#include<stdio.h>#define MAX(a,b)a>b?a:b //定义一个求最大值的带参宏voidshow(inta,intb,intm){printf("a=%d,b=%d,m=%d\n",a,b,m);}int main(void){int a=100,b=

2020-10-23 15:33:14 485

原创 C语言 | 双向链表的创建与使用

链表是一种最普遍的数据组织方式,他不需要连续的大片内存也可以存储大量的数据,而且对于数据的插入和删除运算响应速度也够快,但是查找性能一般。 红黑树是一种更加高大上的数据组织方式,他虽然逻辑稍显复杂,但效果很好,首先跟链表一样不需要成片连续内存,而且插入和删除的响应速度也很快,其次更关键的是,他的查找性能达到了对数级别,这些特性使得红黑树在诸如内存管理等方面独树一帜。 如果单单考虑查找性能,那哈希算法的速度就登峰造极了,普通平民级别的查找算法都是基于对比的,但哈希查找根本不需要比较...

2020-10-23 15:09:32 793

基于QT开发的天气查询源码.rar

基于QT开发的天气查询源码

2021-07-09

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除