- 博客(39)
- 收藏
- 关注
原创 iptable的移植
iptables 命令的管理控制选项选项名 功能及特点-A 在指定链的末尾添加(--append)一条新的规则-D 删除(--delete)指定链中的某一条规则,按规则序号或内容确定要删除的规则-I 在指定链中插入(--insert)一条新的规则,若未指定插入位置,则默认在链的开头插入-R 修改、替换(--replace)指定链中的某一条规则,按规则序号或内容确定要替换的规则。
2024-05-10 17:38:15
1041
原创 gdbserver移植及使用
开发板上程序是可以strip的,Symbol的读取在PC端gdb工具完成。这也就是gdbserver相对与local gdb以及core dump的优势——开发板端可以strip——因为前两者都需要在开发板端load symbol,因此应用程序会变得非常大,无法放在flash中。这是因为动态库的加载地址是不固定的。gdbserver是嵌入式开发调试的主要工具,依赖开发板上的gdbserver程序以及交叉编译工具链中的arm-linux-gdb命令。使用file查看是x86的, 我要编译的是arm的。
2022-10-11 10:58:07
856
2
原创 安装自己的编译服务器
下载vmware 和 ubuntu镜像,地址如下:vmware16ubuntu-21.10-desktop-amd64.iso下载 VMware Workstation Pro | CN阿里巴巴开源镜像站-OPSX镜像站-阿里云开发者社区 (aliyun.com)安装好vmware 等待。。。 修改大小,这个是系统最终能够使用的最大大小 按空格键选中安装openssh 按回车 用之前设置的用户名密码登录首次安装默认是没有root用户密码的,需要手动设置root密码重启后用root
2022-06-16 09:54:55
2094
原创 valgrind的移植和使用
valgrind是一个用于内存调试、内存泄漏检测的软件开发工具Index of /pub/valgrind (sourceware.org)./autogen.sh./configure --host=mips-linux-gnu CFLAGS="-D__UCLIBC__ -muclibc" --prefix=/tmp/nfsmakemake install解决方案:apt-get install automake autoconfapt-get install libtoolautoreconf -ivf
2022-06-14 15:50:12
1553
原创 嵌入式linux下关于flash的一些操作
目录获取flash类型读写flash嵌入式开发常用的flash类型有nor和nand不同flash的擦写方法不同,因此需要对flash的类型进行判断 nornand使用flash_eraseall 和 nandwrite进行擦写。如果默认不支持这两个命令,可能是busybox没配置。......
2022-06-07 09:48:41
1649
2
原创 i2c外置RTC开发流程记录
前置条件T40 + sd2010 外置rtc首先要确认硬件是否正常链接,设备地址是多少i2c-tools这个是专门用来调试i2c的下载地址:Index of /pub/software/utils/i2c-tools/
2022-05-23 19:33:58
1336
原创 .vimrc精简配置
set fileencodings=utf-8,ucs-bom,gb18030,gbk,gb2312,cp936set termencoding=utf-8set encoding=utf-8set nuset numberset cursorlineset mouse=aset selection=exclusiveset selectmode=mouse,keyset tabstop=4set shiftwidth=4set autoindentset paste.
2022-05-19 16:10:58
246
原创 基于c/c++的一种越线检测算法
首先目标的坐标信息和track id是已知的。算法原理:记录目标上一次的坐标信息和当前的坐标信息,二者相连的线段如果与警戒线相交,那么则说明有越线的行为。因此问题就成了如何判断两条线段是否相交。基础知识平面向量若已知点a(x1, y1),b(x2,y2),那么向量ab为(x2 - x1, y2 - y1)向量积如果向量a(x1, y1),向量b(x2, y2),那么a*b= (x1*y2 - x2*y1)若结果小于0,表示向量b在向量a的顺时针方向;若结果大于0,...
2022-04-25 20:26:09
2332
原创 linux下自动获取git代码节点
linux下发布内侧软件包时,往往需要各个仓库的代码节点,以便日后追溯。可以利用shell来完成get_git_code_info(){ local GIT_CODE_NAME="$DIR_NAME"".xml" local GIT_FILE=$OUTPUT_DIR/$GIT_CODE_NAME local DIR_ARRAY=("Base" "Include" "IPC" "Device" "Lib" "Product" "Record" "ThirdProtocol...
2022-03-07 16:38:00
578
原创 详解制作根文件系统
系列文章目录提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加例如:第一章 Python 机器学习入门之pandas的使用提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录系列文章目录 前言 一、pandas是什么? 二、使用步骤 1.引入库 2.读入数据 总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基
2022-02-16 15:56:12
10238
原创 解决开发板mount ubuntu服务器Connection refused 及 配置vmware服务器可通外网
Connection refused问题现象原因服务器未安装nfs服务解决安装nfs服务(74条消息) Ubuntu安装nfs服务_Jitwxs-优快云博客_ubuntu安装nfs服务配置上外网我用的是vmware搭建的虚拟机配置虚拟机可以连接外网的方法虚拟机 ==> 设置 配置为NAT模式编辑 ==> 虚拟网络编辑器的配置如下注意这里要将 ubuntu设置为dhcp的修改/etc/netplan/00-installer..
2022-02-08 11:02:59
1574
原创 搭建samba服务器
服务器版本Ubuntu 21.10客户机 windows10首先下载samba服务器sudo apt-get install samba samba-commonsudo apt-get install system-config-samba cifs-utils配置服务器个人使用直接用的root,其他用户也大同小异[work]comment = Shared Folder with username and passwordpath = /home/workpubl
2022-01-28 09:21:13
1377
原创 root用户远程ssh连接服务器失败的问题
部署自己的开发虚拟机(Ubuntu 21.10)ubuntu-18.04.5-live-server-amd64 安装及更新介绍 - 西瓜君~ - 博客园问题现象:虚拟机装好后,xshell使用root用户远程访问始终拒绝连接进入虚拟机查看 openssh-server 已安装 启动解决方案:vi /etc/ssh/sshd_coetc/ssh/sshd_config打开注释 允许root登录及密码认证即可PasswordAuthentication yesPermitR
2022-01-27 09:49:53
1406
原创 uboot下的开发
在 main_loop 中添加调用#define JY_SD_UBOOT "uboot-SN"#define JY_SD_KERNEL "kernel-SN"#define JY_SD_APP "systrem-SN"typedef struct SD_bin_head_t{ unsigned char jy_flag; unsigned char type[32]; unsigned int crc; unsigned int len; unsigned ch..
2022-01-18 19:38:56
1476
8
原创 libxml2(schema)的简单使用
xml schema是用来定义xml的合法构建模块,通过xml schema就能在接收到xml消息时,判定消息是否合法,从而保障xml信息安全。从Index of /sources (xmlsoft.org)可以下载libxml2的源码我用的是2.9.12创建一个xml schema文件<?xml version="1.0" encoding="utf-8"?><xs:schema xmlns:xs="http://www.w3.org/2001/XMLSche..
2021-12-30 20:11:03
780
原创 嵌入式系统下一些目录文件 及 命令的 记录
/proc/net/dev可以获取网卡适配器的统计信息,比如数据收发速率/proc/mtd系统磁盘信息,嵌入式中可以查看各个分区的大小cat /proc/partitions查看全部分区信息,可以通过解析该文件来判断是否有 sd卡 或者u盘插入echo 3 > /proc/sys/vm/drop_caches清理缓存...
2021-12-14 20:27:35
1544
原创 c/c++的一些函数使用方法记录
1、gethostbyname (很常用的域名解析函数,这里记录一下对解析后结果处理的一些方法)inet_ntoa:将网络地址 转成 点分十进制 (也就是字符串 "192.168.xxx.xxx" 这种格式的)inet_addr:将点分十进制的IP转换成一个长整数型数这里附一个用长整型数的 ip 来判断当前ip是否为内网ip 的方法:......
2021-12-13 19:42:18
334
原创 patch和diff的使用
有些时候对代码有修改时,可能不方便提交git。这个时候如果其他同事需要用到你修改的代码时,通常有两种做法:1、把修改的文件发过去,对方拿比较工具比较差异进行合并2、提供补丁文件显然第一种方式不够优雅,且当修改文件较多时,费时且容易出错。这里主要记录一下linux环境下通过patch和diff命令,打补丁和应用补丁的方法。...
2021-12-13 19:23:31
496
原创 openssl的使用(c/c++)
目录环境部署一、opensslRSA加解密、 使用接口生成秘钥2、使用openssl对文件进行签名认证环境部署关于openssl的移植,在之前wifi功能移植中有过说明,或者网上大把详细步骤一、opensslRSA加解密、 使用接口生成秘钥命令行的方式生成证书: https://blog.youkuaiyun.com/gengxiaoming7/article/details/78505107参考文章:https://blog.youkuaiyun.com/qq_30667875/arti..
2021-11-30 10:09:47
7928
2
原创 printf打印出不同颜色的输出内容
当打希望不同类型的打印显示不同的颜色,比如错误显示红色, 正常打印显示绿色。#include <stdio.h>#define PRINT_NONE(fmt,args...) ({printf("\033[m info: %s(%d) %s: ",__FILE__, __LINE__, __func__);printf(fmt"\r\n" ,##args);})#define PRINT_RED(fmt,args...) ({printf("\033[0;32;31m inf..
2021-10-18 10:29:13
1673
1
原创 linux知识、shell技巧积累
1、find . -name *.cpp | xargs grep -L "-Ddebug"列出当前目录下所有 不包含 字符串test的.cpp文件名称(有些编译选项需要所有的cpp中都包含, 这条命令就可以找出漏加的文件)
2021-10-14 19:47:18
1036
原创 关于嵌入式问题的排查手段
linux开发中常常会遇到内存泄漏挂机的问题先上内核日志:[134812.769862] Normal free:1000kB min:1000kB low:1248kB high:1500kB active_anon:20644kB inactive_anon:22328kB active_file:68kB inactive_file:160kB unevictable:5804kB isolated(anon):0kB isolated(file):0kB present:69632kB m
2021-10-13 20:07:25
809
原创 嵌入式内核配置积累
一、快捷键及开发小技巧1、使用make menuconfig命令进入到内核配置界面后a) 按两次"Esc"键可退回到上一级菜单b) 按"?"键可查看指定选项的帮助文档c) 按"/"键可搜索指定选项的位置及路径,如图:2、当文件系统编译进内核时,编译后的文件系统在内核路径下的 usr/initramfs_data.cpio.xz。把该文件删除掉再编译就会重新打包文件系统。二、常用配置选项1、文件系统编译进内核General setup > Initial RAM ..
2021-09-23 10:14:24
302
原创 嵌入式开发环境的常用工具
内核编译报错:lzop: command not found说明缺少lzop工具,需要自行安装安装lzo下载地址 :http://www.lzop.org/download/lzop-1.03.tar.gz./configure CPPFLAGS="$CPPFLAGS -std=c90 -fPIC" CC=gcc(这里的-std=c90是指定C语言的编译标准, 否则会报错configure: error: ACC conformance test failed. Stop. -...
2021-09-07 10:20:51
838
原创 自定义组合键进入uboot的方式
正常情况下 我们进入uboot的方式是在读秒的时候按回车, 但是如果可以修改进入的方式,这样别人就算拿到我们的设备也没办法轻易进入uboot。修改内容修改文件:uboot\common\main.c加密原理:在uboot倒计时阶段 自定义组合键方式 进入uboot,我这里用的是0x1f 即【<ctrl> + <shift> + <->】的组合键才能进入uboot获取组合键的ascii方法:#include <stdio....
2021-08-28 18:03:01
1078
原创 libjpg移植及rgb转rgba
目录linux下的安装及使用rgb转rgba嵌入式开发版移植。做OSD叠加图片,芯片厂商的接口需要用rgba图像才能叠加。但是客户端要求直接下发jpg图片。因此就要自己实现将jpeg转成bgra的逻辑。这里我们可以使用libjpeg库来实现下载地址http://www.ijg.org/linux下的安装及使用解压 :tar -zxvf jpegsrc.v9d.tar.gz编译安装:./configure --prefix=$PWD/_install C...
2021-08-12 18:52:50
817
原创 修改PHY的LED默认状态
T31 + JL1101修改方式有两种,可以在内核中修改, 也可以在uboot中修改。在内核中修改那就只有当内核启动后才会改过来。寄存器地址确认根据PHY芯片厂商提供的规格书确认寄存器的地址:1、PHYIdentifier Register 物理层标示寄存器,addr=0x2。用以获取PHY的ID2、确认寄存器的位置LED FunctionalThe JL1111 supports two configurable LED pins. The Device supports ..
2021-08-03 19:48:53
1499
原创 嵌入式开发常见问题记录
目录1、dos2unix2、路由器重启更换网段之后导致域名解析失败.3、中文文件从windows拷贝到linux乱码问题4、设置mac报错:ififconfig: SIOCSIFFLAGS: Cannot assign requested address
2021-07-22 09:40:27
1514
原创 嵌入式系统移植wifi功能
文章目录系列文章目录 前言 一、pandas是什么? 二、使用步骤 1.引入库 2.读入数据 总结前言提示:以下是本篇文章正文内容,下面案例可供参考一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码如下(示例):import numpy as np import pandas as pd import matplotlib.pyplot as plt...
2021-07-18 12:18:14
1495
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人