自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

hktkfly6的专栏

博客主要记录自己调试和学习中遇到的问题和参考的资料。

  • 博客(495)
  • 资源 (15)
  • 收藏
  • 关注

转载 【无标题】

I.MX6UL/ULL内部有个以太网MAC外设,也就是ENET,需要外接一个PHY芯片来实现网络通信功能,也就是内部MAC+外部PHY芯片的方案。大家可能听过DM9000这个网络芯片,在一些没有内部MAC的CPU中,比如三星的2440,4412等,就会采用DM9000来实现联网功能。DM9000提供了一个类似SRAM的访问接口,主控CPU通过这个接口即可与DM9000进行通信,DM9000就是一个MAC+PHY芯片。

2023-07-21 22:58:09 383

转载 json-c的编译与测试

这个库我只做了pc端的编译,因为我看网上介绍说这个库在使用时需要编程员考虑申请和释放,而且使用链表形式管理,如果生成复杂的json文件时会造成乾套挂链和释放问题,所以就找了cjson库。虽然功能肯定比json-c要少,但是代码逻辑会清晰一些,下一篇会介绍cjson的编译和测试。我在做的时候没有遇到什么问题,可能遇到的就是在静态编译的时候找不到库,需要添加缺少的库,具体有哪些记不太清了,好像有pthread,m,rt。这个是网上找的测试程序,读文件,并删除添加修改里面的项目。2、找个地方将源码包解压。

2023-07-09 14:21:13 409

转载 消息队列函数由msgget、msgctl、msgsnd、msgrcv四个函数解析

消息队列函数由msgget、msgctl、msgsnd、msgrcv四个函数组成。下面的表格列出了这四个函数的函数原型及其具体说明。

2023-07-09 10:05:10 1402

原创 if 基本语法 与或非 和 shell test

if [ cmd ]then满足该条件的执行语句then满足该条件的执行语句else满足该条件的执行语句fi文件/文件夹(目录)判断[ -b FILE ] 如果 FILE 存在且是一个块特殊文件则为真。[ -c FILE ] 如果 FILE 存在且是一个字特殊文件则为真。[ -d DIR ] 如果 FILE 存在且是一个目录则为真。[ -e FILE ] 如果 FILE 存在则为真。[ -f FILE ] 如果 FILE 存在且是一个普通文件则为真。

2023-07-09 09:57:10 328

转载 SQL Server2008 错误 15128排除办法

今天遇到个错误,客户在SQL Server 2008中新建的帐号使用Navicat Premium连接时却连不上了,Navicat Premium显示错误为“***必须修改登录密码**”,可是用windows帐号进入SQL Server 2008管理器中通过属性方式修改密码依然无效,忽然发现属性那有个“强制实施密码策略”默认是被选中,想必一定是这个引起的。2、然后打开该登录名的属性,取消“强制实施密码策略”勾-确认,就OK了~1、进入SQL Server 2005管理器中-新建查询输入“

2022-09-22 00:36:23 863

转载 OpenWrt patch方法

1、前言 配置完Openwrt后,首次编译时会在编译过程中下载各种源码包,而且解压这些源码包并打上patch。需要对源码进行修改时,可直接修改源码并重新编译,但clean后再次编译时会再次解压源码包,以至所做的修改全部丢失。本文参考Openwrt官网提供的patch管理方法,实践操作并记录linux kernel及package源码修改并生成patch的方法。2、环境及准备工作2.1 开发环境 linux发行版:ubuntu12.04LTS OpenWrt版本:trunk-...

2022-04-10 11:49:45 1541

转载 uboot 下脚本的开发_chocolate001的博客-CSDN博客_uboot脚本编写

在Uboot下能否将很多命令放在一个脚本文件中,然后一起执行,类似于批处理文件。答案是可以的。首先在Linux环境创建一个文本文件,在该文件中写好要一起执行的命令,编写的格式和uboot命令行模式下的输入的命令一样。编写完成之后命名成.script文件,例如example.script。然后将脚本制作成映像文件。使用uboot/tools/下的mkimage命令制作映像。例如mkimage -A ARM -O linux -T script -C none -a 0 -e 0 -n"exampl..

2022-04-06 17:57:00 778

转载 Linux和Uboot下eMMC boot分区读写

1. eMMC的分区大部分eMMC都有类似如下的分区,其中BOOT、RPMB和UDA一般是默认存在的,gpp分区需要手动创建。BOOT主要是为了支持从eMMC启动系统而设计的;RPMB即Replay Protected Memory Block简称,通常用来保存安全线管的数据;GPP主要用于存储系统或者用户数据。UDA通常会进行再分区,然后根据不同目的存放相关数据,或者格式化成不同文件系统。2. Linux下读写boot分区因为boot分区中一般存放的是bootloader或者相关配

2022-04-06 17:50:17 5758

转载 移远RM500Q 5G模块驱动移植

平台:嵌入式Linux version 3.10.0交叉编译工具arm-hisiv300-linux-模块硬件图片:整体流程参考官方文档《Quectel_LTE&5G_Linux_USB_Driver_User_Guide_V2.0.pdf》注:文中所提的文档都会在文末给出。一、移植驱动从参考的文档看,5G的移植其实和4G模块如EC20的移植是一样的,并无二异。1.内核驱动添加厂家ID和产品ID文档给出的RG500Q的VID和PID如下:需要注意的.

2022-04-06 17:46:57 5470 1

转载 openwrt设置samba共享

Samba共享安装samba36-server和luci-app-sambaopkg install samba36-server luci-app-samba简单介绍Openwrt的samba配置是先读取/etc/config/samba,结合/etc/samba/smb.conf.template文件,生成配置文件/etc/samba/smb.conf,用户只需修改/etc/config/samba和/etc/samba/smb.conf.template文件,然后设置samba用户与密码

2022-04-06 17:44:06 5193

转载 一文打尽UCI统一配置接口、UCI配置文件、UCI工具用法、UCI配置脚本、UCI API编程接口(Libubox库、UCI库)

接下来几篇文章首先讲述 UCI 配置及配置接口,接着讲述系统内核设置,最后还会讲述一些非 UCI 系统配置,这些配置通常不提供用户修改接口,但在系统运行时也是非常重要的。一、UCI简介MVC(Model-View-Control)模式是经典的Web开发编程模式,OpenWrt也采用该设 计模式。该设计模式为分层设计,模型层负责数据的持久化操作。OpenWrt 的模型层采用 统一配置接口(Unified Configuration Interface,UCI)。统一配置接口(Unified Config

2022-04-06 17:39:11 3211

转载 一文打尽OpenWrt系统内核设置(/etc/sysctl.conf)、非UCI系统配置(/etc/rc.local、/etc/profile等)

一、前言系统内核设置:OpenWrt也是一个 Linux 操作系统,因此它和桌面操作系统 Ubuntu及Fedora 一样, 采用sysctl作为系统的内核配置工具。sysctl.conf作为其内核配置文件在启动时进行加载。非UCI系统配置:OpenWrt还有一些配置并不是通过UCI配置来实现的,这部分是大多数 Linux 系统都有的配置,并且用户很少修改,因此并不提供接口给用户修改。Title 配置系统内核设置 /etc/sysctl.conf、sysctl非UCI系统配置 /...

2022-04-06 17:37:49 3108

转载 EC20 AT指令 列举

由文档Quectel_WCDMA&LTE_Linux_USB_Driver_User_Guide_V1.8.pdf  由上可知,ttyUSB2是用来发送AT指令的,ttyUSB3是用来发送ppp的cat /dev/ttyUSB2 &echo -e "AT+QCCID\r\n" >/dev/ttyUSB2 //查询SIM卡echo -e "AT+CFUN=1,1\r\n" >/dev/ttyUSB2 //重启模块echo -e "AT+QSI...

2022-04-06 17:36:10 5061

转载 u-boot FIT image介绍

u-boot FIT image介绍作者:wowo发布于:2016-9-2 21:49 分类:u-boot分析1. 前言Linux kernel在ARM架构中引入device tree(全称是flattened device tree,后续将会以FDT代称)的时候[1],其实怀揣了一个Unify Kernel的梦想----同一个Image,可以支持多个不同的平台。随着新的ARM64架构将FDT列为必选项,并将和体系结构有关的代码剥离之后,这个梦想已经接近实现:在编译linux kerne.

2022-03-27 16:55:31 1514 1

翻译 make headers_install 用法

Exporting kernel headers for use by userspaceThe “make headers_install” command exports the kernel’s header files in a form suitable for use by userspace programs.The linux kernel’s exported header files describe the API for user space programs attempt

2022-03-19 11:06:52 1984

转载 make modules_install 解决装模块的时候出现错误:modprobe: chdir(3.0.35-g6774ed9-dirty): No such file or directory.

Linux modules install安装模块的时候出现错误:modprobe: chdir(3.0.35-g6774ed9-dirty): No such file or directory.内核模块没有安装正确。本文记录解决方法。参考链接http://linfengdu.blog.163.com/blog/static/1177107320132710370696/问题描述安装模块的时候出现错误。root@freescale $ modprobe g_mass_stor

2022-03-19 11:03:45 3765

原创 automake1.14.1编译和问题解决help2man: can‘t get `--help‘

1、查看当前系统是否安装了automake,如果安装了则需要查看automake的版本,Ubuntu16.04版本默认是automake1-15;2、安装automake1-14从官网下载http://ftp.gnu.org/gnu/automake,automake-1.14.1.tar.gz版本;当然也可以使用命令:wget http://ftp.gnu.org/gnu/automake/automake-1.14.1.tar.gz然后基本上是linux下软件安装的一般步骤:tar

2022-03-16 01:38:22 2504

原创 openwrt 编译常见错误集锦

一、conflicting types for ‘copy_file_range’./…/misc/create_inode.c:395:18: error: conflicting types for ‘copy_file_range’static errcode_t copy_file_range(ext2_filsys fs, int fd, ext2_file_t e2_file,^In file included from ./…/misc/create_inode.c:19:0:/u

2022-03-06 12:55:52 4151

转载 openwrt编译时automake.tmp错误_

openwrt 编译时出现automake错误Unescaped left brace in regex is illegal here in regex; marked by <-- HERE in m/\${ <-- HERE ([^ \t=:+{}]+)}/ at ./bin/automake.tmp line 3938.Makefile:50: recipe for target '/openwrt-master/build_dir/host/automake-1.15/.con

2022-03-06 12:43:09 775

转载 VMware虚拟机扩容磁盘,有很详细图文

VMware虚拟机 Linux系统 Ubuntu 16.04 硬盘/磁盘扩容(超详细图文详解!亲测有效!) 配置 目的 效果 主要流程 超详细图文详解扩容步骤 步骤说明: THE END 配置虚拟机 – VMware Workstation Pro Linux系统 –Ubuntu 16.04 LTS目的硬盘扩容 硬盘容量从40G扩容到100G效果查看硬盘大小及使用情况终端:df -h没有扩容前:成功扩容后:主要流程...

2022-03-05 22:13:15 30820 18

转载 Linux驱动开发中与设备树相关的6种debug方法

整理出了6种驱动开发时与设备注册、设备树相关的调试方法,彼此间没有优先级之分,每种方法不一定是最优解,但可以作为一种debug查找问题的手段,快速定位问题原因。例如在芯片验证时,不同时钟频率下系统启动情况摸底时,U-Boot fdt命令可以方便快捷的帮助我们完成这个实验。#1. dtdiff工具这个文件需要在宿主机安装,在对比二进制的dtb文件时比较方便。文本格式的dts文件对比并不需要这个工具。对比以下两个dtb文件的结果如下:#2. kernel device-tree base

2022-02-12 17:16:18 745

转载 Linux驱动开发中与设备树简介

一、简介  设备树定义是保留着存在于系统中的设备信息,当机器引导时,OS通过使用驱动程序和其他组件获得的信息建立此树,并且当添加或删除设备时更新此树。设备树保留着存在于系统中的设备信息。当机器引导时,OS通过使用驱动程序和其他组件获得的信息建立此树,并且当添加或删除设备时更新此树。设备树是分级的, 总线上的设备代表着总线适配器或驱动控制器的“子集”。设备树的每一个节点是一个设备节点(devnode),一个devnode包括设备驱动程序的设备对象加上有OS所保留的内部信息。 DTS:设备树源文件

2022-02-12 17:12:27 318

转载 设备树文件编译与反编译及查看文件系统中设备树

一、设备树编译有两种方式1、将设备树文件拷贝到内核源码的arch/*(处理器平台)/boot/dts/*(厂家)/目录下, 执行make dtbs2、dtc -I dts -O dtb my.dts > my.dtb二、设备树反编译dtc -I dtb -O dts my.dtb > my.dtsdtc -I dtb -O dts my.dtb -o my.dts---------------------android 7.01中/sys/firmware/dev...

2022-02-12 17:10:02 2425

转载 一文快速掌握 Git 用法(Git介绍及使用流程)

一、Github 基础什么是 Git?git 是一个分布式版本控制软件,最初由林纳斯·托瓦兹(Linus Torvalds)(Linux 之父)创作,于 2005 年发布。最初目的是为更好地管理 Linux 内核开发。Git 在本地磁盘上就保存着所有有关当前项目的历史更新,处理速度快;Git 中的绝大多数操作都只需要访问本地文件和资源,不用实时联网。Git 客户端TortoiseGit 是一个 Git 版本控制客户端,作为 Microsoft Windows 的外壳扩展实现,用户界面友好

2022-02-11 18:11:31 243

转载 在 GitHub 上利用 SHA-1 值(commit ID)搜索某一次的提交内容

大家在使用 GitHub 时,很可能会遇到需要进行代码回退的情况,有时也需要借鉴很久很久之前的一次 commit 。通常在提交 commit 时,会对应生成一个 SHA-1 值,当提交的内容变多,我们该如何使用这个值来找寻对应那次提交的内容?网上可以搜到很多相关的做法,但基本都是在 git bash 上操作为主,主要使用的是 git show 或者 git log -p -1 等(也可以用前八位进行搜索),这里不作过多详细的介绍,案例如下:git show 124a9a0ee1d8f1e15e833

2022-02-11 17:58:12 2153

转载 openwrt的编译系统是如何制作根文件系统的

分析以下makefile即可获取整个过程以nxp layerscape系统的编译过程为例1.分析target/linux/layerscape/image/Makefile的最后一句,这是一个好的开端$(eval $(call BuildImage))2.宏BuildImage定义在哪里呢?定义在include/image.mk中,简化后如下define BuildImage ... $(foreach device,$(TARGET_DEVICES),$(c

2022-02-11 14:12:18 720

转载 编译 openwrt 及初始配置

主机为 ubuntu 14 x64 硬件: 优酷土豆宝 cpuMT7620A,内存128M,flash 32M有2个源,用哪个也可以git clone https://github.com/openwrt/openwrt.gitgit clone https://git.openwrt.org/openwrt/openwrt.git安装的插件gcc, binutils, bzip2, flex, python, perl, make, find, grep, diff,unzip, gawk,

2022-02-09 18:26:18 1608

转载 编译 openwrt 及初始配置-及部分排错

主机为 ubuntu 14 x64 硬件: 优酷土豆宝 cpuMT7620A,内存128M,flash 32M有2个源,用哪个也可以git clone https://github.com/openwrt/openwrt.gitgit clone https://git.openwrt.org/openwrt/openwrt.git安装的插件gcc, binutils, bzip2, flex, python, perl, make, find, grep, diff,unzip, gawk,

2022-01-21 19:13:07 4339

转载 putty使用密钥登陆OpenSSH

在Windows管理Linux服务器时,常使用putty登陆ssh进行远程管理。默认登陆验证方式为密码认证,该方式虽然简单,但每次登陆都要输入一长串的密码,相当麻烦。而且,如果万一把root允许登陆打开,还有可能被强力破解,导致严重的后果。 所以,通常建议用密钥登陆验证代替密码方式,即简单,又可靠。一、为什么建议使用密钥登陆通常现在的Linux发行版都使用OpenSSH代替telnet、rsh等明文传输的终端服务。以红旗 DC Server 5.0为例:引用# rpm -qa|gre...

2022-01-16 09:06:00 5984

转载 Putty密钥(PrivateKey)导入SecureCRT

1. 密钥转换1) 打开PuTTY的密钥生成器, 导入密钥2) 保存私钥: 选择”转换” -> “导出 OpenSSH密钥” -> 保存文件. 这里需要注意: 保存的文件名不能有后缀. 比如ssh_key文件3) 保存公钥: 直接点击软件界面上的”保存公钥” 这里需要注意: 保存公钥的名字需要有.pub后缀, 同时名称和私钥一样. 比如:ssh_key.pub这样我们的密钥就转换好了. 接下来我们来用SecureCRT使用转换好的密钥.2.SecureCRT使用转换好..

2022-01-16 08:59:05 2002

转载 无法连接远程桌面--必须为远程桌面启用Windows防火墙例外

装完系统后,开启了防火墙做了规则,并同时,在“远程设置处”设置为允许连接到计算机,这时候上面有一个警告“必须为远程桌面启用Windows防火墙例外”。其意思就是没有获得防火墙的允许权限。于是打开防火墙:控制面板-----Windows防火墙-----允许的程序:发现防火墙允许的程序中确实没有“远程桌面”,而虽然用户已是管理员身份,但“更改设置”按钮不可用:解决方法:开始------ >运行----- > gpedit.msc...

2022-01-14 10:09:17 4222

转载 openwrt 的董哥的黑板报专栏文章地址

作者:董哥的黑板报https://blog.csdn.net/qq_41453285/category_9376523.htmlLinux C/C++出道,现今从事Go后端开发,在上海工作。 原创一文万字带你入门智能路由器OpenWrt系统,并在虚拟中安装配置OpenWrt 一、OpenWrt的下载下载网址:http://archive.openwrt.org 进入网址之后选择自己需要的版本,此处我们选择下面这个版本:(此处我们为什么选择ext4文件系统类型而不选择squashfs文件系统..

2022-01-11 20:27:25 273

转载 GCC生成动态链接库(.so文件):-shared和-fPIC选项

Linux下动态链接库(shared object file,共享对象文件)的文件后缀为.so,它是一种特殊的目标文件(object file),可以在程序运行时被加载(链接)进来。使用动态链接库的优点是:程序的可执行文件更小,便于程序的模块化以及更新,同时,有效内存的使用效率更高。GCC生成动态链接库如果想创建一个动态链接库,可以使用 GCC 的-shared选项。输入文件可以是源文件、汇编文件或者目标文件。另外还得结合-fPIC选项。-fPIC 选项作用于编译阶段,告诉编译器产生与位置无关..

2022-01-11 20:23:12 774

转载 GCC创建和使用静态链接库(.a文件)

Linux 下的静态链接库是以.a结尾的二进制文件,它作为程序的一个模块,在链接期间被组合到程序中。和静态链接库相对的是动态链接库(.so文件),它在程序运行阶段被加载进内存。制作链接库的目的是希望别人使用我们已经实现的功能,但又不希望别人看到我们的源代码,这对商业机构是非常友好的。Linux 下静态链接库文件的命名规则为:libxxx.axxx 表示库的名字。例如,libc.a、libm.a、libieee.a、libgcc.a 都是 Linux 系统自带的静态库。GCC生成静态链接库.

2022-01-11 20:19:10 2885 1

转载 GCC编译过程与动态链接库和静态链接库,很详细

1. 库的介绍库是写好的现有的,成熟的,可以复用的代码。现实中每个程序都要依赖很多基础的底层库,不可能每个人的代码都从零开始,因此库的存在意义非同寻常。本质上来说库是一种可执行代码的二进制形式,可以被操作系统载入内存执行。库有两种:静态库(.a、.lib)和动态库(.so、.dll)。 windows上对应的是.lib .dll linux上对应的是.a .so在这里先介绍下Linux下的gcc编译的几个选项g++ -c hellospeak.cpp会将hellospeak.cpp

2022-01-11 20:17:41 4799

原创 从openwrt生成的交叉工具链报错,error while loading shared libraries: libiconv.so.2: cannot open shared

从openwrt生成的交叉工具链报错,error while loading shared libraries: libiconv.so.2: cannot open shared object file: No such file or directorywget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz tar zxvf libiconv-1.14.tar.gz cd libiconv-1.14./configurema

2022-01-11 20:13:02 584

转载 构建 openwrt 交叉编译工具链

构建 openwrt 交叉编译工具链

2022-01-11 20:02:37 1539

原创 解决github图片不显示问题

解决方法,打开路径C:\Windows\System32\drivers\etc下的hosts文件在最后加上# GitHub Start 140.82.113.3 github.com140.82.114.20 gist.github.com151.101.184.133 assets-cdn.github.com151.101.184.133 raw.githubusercontent.com151.101.184.133 gist.githubu

2021-05-04 22:28:47 591 1

转载 字符设备驱动程序框架

0 创建一个字符设备static struct cdev chrdev; //第一种方式 静态定义 struct cdev *cdev_alloc(void); //第二种方式 动态申请 返回一个struct cdev类型的指针//从内核中移除某个字符设备,void cdev_del(struct cdev *p)1 得到一个设备号要得到一个设备号,也分为静态定义或者动态申请,但是涉及函数比较多。有:register_chrdev_region,alloc_chrdev_

2021-04-15 14:10:47 185

转载 安装配置PBootCMS详细过程

文章目录安装配置PBootCMS详细过程 1.下载 PBootCMSgithub下载最新版本的源代码到服务器 2.配置 配置阿里云(或其他)域名解析 配置nginx 配置项目数据库、授权码等 3.测试 安装配置PBootCMS详细过程1.下载PBootCMSgithub下载最新版本的源代码到服务器进入服务器存放项目的目录(目录可以随意,nginx指定root的对应目录就是这个) cd /home/www/git clone

2021-01-29 16:03:26 6233

windows下的nc命令工具.zip

windows下的nc命令工具.zip

2021-01-20

NVIDIA_Tegra_Linux_Driver_Package_TX2_-32.1 Release文档-很详细

NVIDIA_Tegra_Linux_Driver_Package_TX2_-32.1 Release文档-很详细

2019-04-22

小米、360wifi的ap模式驱动源码

小米、360wifi的ap模式驱动源码,讲解文章参见http://blog.csdn.net/hktkfly6/article/details/72886753

2017-06-06

镜头角度及可视距离

2017-01-03

如何在ubuntu中安装设置ftp服务器

如何在ubuntu中安装设置ftp服务器

2016-12-16

OV9650之linux驱动和测试程序+资料.rar

OV9650之linux驱动和测试程序+资料.rar

2016-07-24

非常完整与详细的摄像头模块OV9650的资料

非常完整与详细的摄像头模块OV9650的资料

2016-07-24

S5P4418 datasheet

2016-07-16

蓝牙协议及其源代码分析

蓝牙协议及其源代码分析

2016-07-16

bluez.zip的代码

bluez.zip的代码

2016-07-16

bluez-libs-3.36.tar.gz

2016-07-16

Smart210用户手册

2016-07-16

Linux下Bluez的编程实现

Linux下Bluez的编程实现

2016-07-16

am4376 datasheet

am4376 datasheet

2016-07-16

S5P4418的datasheet

2016-07-16

空空如也

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

TA关注的人

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