自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

hrx-@@

Android,linux等开发记录

  • 博客(101)
  • 资源 (10)
  • 问答 (1)
  • 收藏
  • 关注

转载 smbpasswd 命令的常用方法

命令示例:用户名为 hrx1、增加 samba 用户(该账户必须存在于/etc/passwd文件中)smbpasswd -a hrx2、冻结 samba 用户,就是这个用户不能在登录了smbpasswd -d hrx3、解冻 samba 用户,让冻结的用户可以在使用smbpasswd -e hrx4、把 samba 用户的密码设置成空(要在[global]中写入 null passwords -true)smbpasswd -n hrx5、删除 samba 用户smbp

2021-01-21 22:40:51 10

原创 Linux C 通过指针从函数获取变量 字符串 指针

在平常的开发中经常会碰到指针的使用,例如从通过指针从函数中取出一些变量,或者是拷贝出字符串,或者是直接获取指针。最经常混乱的就是获取指针,虽然每次都能解决,但每次开发时都会耽搁一些时间,所以好好整理下整明白很重要。1、测试代码主要实现了通过指针获取 普通变量、字符串、指针的简单过程。#include <stdio.h>#include <string.h>#include <stdlib.h>static char s_str[16];static

2020-09-06 13:00:05 82

原创 Linux下 ifconfig 命令的使用(Linux命令)

ifconfig 是Linux下十分常用的命令,十分有必要掌握如何使用。由于之前接触网络这块较少十分不熟悉,现在必须熟悉一下了。一、介绍ifconfig 是 Linux 中用来查询和配置网络接口卡(网卡)的命令,英文全称是network interfaces configuring。使用 ifconfig 命令对网卡所做的配置都是临时配置,重启之后都会被还原的。如果要永久配置网卡则需要通过修改配置文件的方式。二、命令实践1、显示网卡信息(1)显示激活的网卡信息ifconfig如果网卡被

2020-07-10 15:48:53 451

原创 Linux 下使用 enca 转换文件编码的使用(Linux命令)

在写代码时由于文件编码格式的不同会导致文本中的中文出现乱码。例如用GB2313输入的中文却使用utf-8去显示文本,则会产生乱码。这时就需要用到文本文件的编码格式转换。一、安装方法一:源码下载地址:https://dl.cihar.com/enca/下个最新的源码编译安装。方法二:命令行安装sudo apt-get install enca这个比较方便。二、使用1、查看文件编码格式enca filename//或enca -L zh_CN filename2、文件编码

2020-07-08 11:13:12 200

原创 Git 彻底删除服务器上的提交记录

当使用 Git 的时候可能会出现一些不想被提交的东西被错误的commit了,更糟糕的是还被push到了服务器上。那么这个时候如果仅仅只是删除文件,再次commit、push,那么将会在服务器上留下痕迹。今天这个方法可以不在服务器留下痕迹地还原提交记录。(前提是有这个权限)一、使用到的命令/* 1、回滚本地的提交记录 */git reset --hard 目标commit的hash值/* 2、强制提交到远端服务器 */git push origin HEAD --force二、测试1、现

2020-06-18 19:30:47 355

原创 Ubuntu 16.04 简单搭建本地FTP服务器(1)

本文介绍如何在Ubuntu 16.04上搭建简单的 FTP服务器。要管理好FTP服务器并做好配置还是有比较多的讲究的,目前也就是初步研究使用,然后就顺便记录一下。

2020-06-07 16:07:24 174

原创 Win10 利用 IIS(Internet Information Services)搭建FTP服务器

这里使用的是系统自带的**IIS(Internet Information Services)**搭建FTP服务器。一、启动IIS以及FTP相关的服务打开控制面板–>程序和功能–>启动或关闭Windows功能运行 control 可以打开控制面板。主要就是把FTP服务器、IIS管理控制台勾起来,其他的也可以根据需要勾选。二、搭建FTP服务器1、打开IIS路径:C:\Windows\system32\inetsrv\InetMgr.exe也可以通过搜索框搜索到程序2、

2020-06-06 14:08:50 174

原创 Linux 下控制台指令操作以 - 开头的文件

本文记录的是在Linux 控制台操作以短横杠 **-** 开头的文件方法,例如 -test、-aaa、-bbb。

2020-06-04 11:39:14 139

原创 Git clone要输入密码问题

问题:在公钥私钥配置正常的情况下。在 Ubuntu下要clone代码,却发现要输入密码。这个问题碰到好几次了,每次都忘记怎么解决的,查半天。还是自己记录一下的好。原因:这是因为 .ssh 里面的 id_rsa 文件的权限不符合要求引起的。解决:将 id_rsa 文件的权限设置为600。chmod 600 id_rsa参考:https://www.jianshu.com/p/6e...

2020-04-28 17:36:36 1541

原创 Make menuconfig 产生 fatal error: curses.h 问题解决

环境:Ubuntu16.04问题:在配置完交叉编译环境之后,执行 make menuconfig 产生 fatal error: curses.h: 没有那个文件或目录 的问题。原因:这是由于系统中没有安装 ncurses devel 套件引起的。解决:sudo apt-get install libncurses5-dev安装后再编译即可。参考:https://blog.c...

2020-04-28 09:49:33 200 1

原创 Linux驱动之Kconfig语法——学习笔记(11)

当在内核根目录执行 make menuconfig 时会出现内核配置界面,而配置界面中的选项、条目全都依赖于各个文件夹中的Kconfig配置文件。可以说各个文件夹中的Kconfig配置文件是整个内核文件这张大网中的每一个节点。这篇文章主要介绍Kconfig配置文件的语法。一、关键字介绍二、示例Kconfig代码## Kconfig test file#menu "Level 1...

2020-04-08 10:59:22 151

原创 Linux驱动之线程的使用——学习笔记(9)

还是由于写了个RTC驱动,想要在驱动中定时更新系统时钟的原因,研究了定时器

2020-04-07 10:25:34 61

转载 qt5的configure选项说明(2)

要编译qt源码,知道configure的配置选项含义则十分重要。一、配置选项查看及初步解释通过下面命令查看都有哪一些编译配置选项。./configure -help有一些选项的后面有中括号[]括起来的值,有以下三种情况,分别举例。yes,表示该选项默认选中。no,表示该选项默认不选中。auto,应当是系统会自动检测是否添加该选项吧。那可以通过 -xxx=no或者-xxx=yes...

2020-03-27 17:18:53 730

原创 Linux 下 qt5的安装及库编译(1)

本篇文章介绍的是在Linux环境下安装QT creator ,编译Qt 库及环境配置的过程。1、下载Qt的下载地址:http://download.qt.io/archive/qt/我这边用的是目前的最新版本Qt 5.14.1。QT creator: qt-opensource-linux-x64-5.14.1.runQt 库: qt-everywhere-src-5.14.1.tar...

2020-03-27 13:35:02 1607

原创 Linux驱动之获取设备树属性——学习笔记(10)
原力计划

在驱动开发中如果可以使用设备树进行参数配置而不用频繁修改源码时间很方便的事情。这里以I2C设备举例,记录一下。一、设备树修改1、添加设备节点由于要使用的设备挂载在I2C下,所以要先找到指定的I2C节点,然后添加。设备树中定义:&i2c1 { modle1@15 { compatible = "company name,modle...

2020-03-13 17:30:42 1025

原创 Linux驱动之在驱动中校准系统时间——学习笔记(8)

最近写了一个RTC驱动,然后打算在驱动内部定时校准系统时间,搜索了一圈实在是没找到什么有用的信息,就去内核的源码里找了一下还真的有。这里记录一下这个功能。一、函数介绍(1)mktime声明位置:kernel\include\linux\time.h源码位置:kernel\kernel\time.c这个函数的作用是将输入的年月日时分秒转换成距离 1970-01-01 00:00:0...

2020-03-06 09:32:54 96

原创 STM32的I2C通讯配置(硬件实现)——学习笔记(6-2)

文章内容根据野火学习教程进行整理,仅仅是学习记录。开发板: 野火STM32F429-挑战者V2官方固件库版本: STM32F4xx_DSP_StdPeriph_Lib_V1.8.0这里以与EEPROM进行通讯的代码作为例子。一、看电路图先找电路图,看看这个I2C设备挂载在I2C1、I2C2、I2C3的哪一个总线上,以及接的是哪两个GPIO。SDA挂载在I2C1总线,接的是PB7引...

2020-02-29 21:12:47 670

原创 STM32的I2C基础知识——学习笔记(6-1)

文章内容根据野火学习教程进行整理,仅仅是学习记录。开发板: 野火STM32F429-挑战者V2官方固件库版本: STM32F4xx_DSP_StdPeriph_Lib_V1.8.0

2020-02-29 21:11:16 133

原创 Linux驱动之Ubuntu下下载内核源码——学习笔记(7)

PC操作系统:Ubuntu 16.04 LTS内核版本:4.4.0-21-generic编译器:gcc 5.4.0主要是方便验证一些驱动的小问题。一、下载内核源码1、查看Ubuntu当前所使用的内核版本执行命令 uname -r 可以查询。2、查看一下可以下载的内核源码版本执行命令 apt-cache search linux-source 可以查询。可以看到有4.4.0版...

2020-02-29 13:20:58 456

原创 Linux C 十进制和BCD码互转

#define BCD_TO_DEC(x) ((x >> 4) * 10 + (x & 0x0f)) /* BCD码转十进制 */#define DEC_TO_BCD(x) (((x / 10) << 4) + (x % 10)) /* 是进制转BCD码...

2020-02-26 17:18:22 115

原创 Linux驱动之模块参数——学习笔记(6)

在应用层的C程序都是通过 main 函数的参数进行传递参数。在驱动层则是使用模块参数 进行参数传递。由于最近项目需要用到,就学习记录一下。一、宏及参数介绍1、模块参数宏模块参数宏常用的有两个, module_param 和 module_param_array。定义在文件 kernel\include\linux\moduleparam.h 中。(1)module_parammo...

2020-02-26 12:04:27 107

原创 Linux驱动之定时器的使用——学习笔记(5)

写了一个RTC驱动,为了实现在驱动中定时将RTC的时间校准到系统时间,研究了一下驱动中定时器的使用。看起来是挺简单了,这里记录下。一、知识点引入定时器在内核中的源码位置kernel/kernel/timer.ckernel/include/linux/timer.h1、结构体 struct timer_list 说明以下结构体定义在 timer.h 中。在内核中,一个 **t...

2020-02-25 17:03:08 278

原创 Linux驱动之ioctl函数——学习笔记(4)

PC操作系统:Ubuntu 16.04 LTS内核版本:3.14.38编译器:arm-poky-linux-gnueabi-gcc 4.9.1如何创建一个字符设备以及open、close、write、read等函数的使用以及file_operations结构体注释请看Linux驱动之创建字符驱动——学习笔记(3)。这篇文章单独说明一下ioctl的配置。一、知识点引入1、指针函数选择...

2020-02-14 16:59:21 193

原创 Linux驱动之创建字符驱动——学习笔记(3)

PC操作系统:Ubuntu 16.04 LTS内核版本:3.14.38编译器:arm-poky-linux-gnueabi-gcc 4.9.1在了解了怎么创建一个最简单的Linux驱动模块模板(Linux驱动之简单入门——学习笔记(1))之后,现在要创建一个字符驱动,又是倒腾了好久才搞明白。一、知识点引入1、file_operations 结构体struct file_operati...

2020-02-13 18:06:41 171

原创 Linux驱动之用man查看内核函数——学习笔记(2)

PC操作系统:Ubuntu 16.04 LTS使用的内核版本:3.14.38写Linux驱动总是使用的大多是一些内核函数,在用man无法查找也是一件麻烦事。实现让man支持内核函数查询,这里我也是通过网上查找的资料,然后把自己的操作步骤记录下。一、下载Linux系统内核源码并编译上https://www.kernel.org下载Linux内核源码。因为我开发板的内核版本是3.14.3...

2020-02-12 15:37:51 257

原创 Linux驱动之简单入门——学习笔记(1)

PC操作系统:Ubuntu 16.04 LTS编译器:arm-poky-linux-gnueabi-gcc 4.9.1基于i.mx6平台对Linux驱动模块修修改改也有段时间了,其中断断续续查了一大堆资料感觉知识并不那么连贯,是时候自己从基础开始整理整理了。一、创建一个最小驱动模块模板创建一个hello.c文件#include<linux/init.h>#include&...

2020-02-11 17:49:04 184

原创 STM32的USART串口配置——学习笔记(5)

文章内容根据野火学习教程进行整理,仅仅是学习记录。开发板: 野火STM32F429-挑战者V2官方固件库版本: STM32F4xx_DSP_StdPeriph_Lib_V1.8.0一、选择USART要配置USART要先选择要配置哪一个USART/UART。我用的是STM32F429这个芯片,从 《STM32F4xx中文数据手册》 的 “表 8. USART 的特性比较” 和 “表 10...

2020-02-04 15:49:38 341

原创 STM32的SystemInit()和SetSysClock()函数详解——学习笔记(4)

文章内容根据野火学习教程进行整理,仅仅是学习记录。野火的教程把SetSysClock()函数的内容讲解了一下,学会了怎么查手册怎么看。我打算从SystemInit()开始分析,毕竟是第一个被调用的C函数,好好理解一下做个记录。开发板: 野火STM32F429-挑战者V2官方固件库版本: STM32F4xx_DSP_StdPeriph_Lib_V1.8.0

2020-01-30 13:40:04 503

原创 STM32启动文件详解——学习笔记(3)

文章内容根据野火学习教程进行整理,仅仅是学习记录。开发板: 野火STM32F429-挑战者V2官方固件库版本: STM32F4xx_DSP_StdPeriph_Lib_V1.8.0启动文件介绍位置启动文件(例如:startup_stm32f429_439xx.s),该文件存在于官方固件库的目录位置为:STM32F4xx_DSP_StdPeriph_Lib_V1.8.0\Librarie...

2020-01-27 20:06:32 2792

转载 STM32数据手册对引脚的定义说明——学习笔记(2)

文章内容摘抄自野火学习教程,仅仅是学习记录。数据手册对各个引脚的说明示意图:说明:参考文档:【野火】零死角玩转STM32—F429挑战者V2下载地址:http://products.embedfire.com/zh_CN/latest/stm32/ebf_stm32f429_tiaozhanzhe_v2.html...

2020-01-22 14:51:52 677

转载 STM32分类及命名规则——学习笔记(1)

文章内容摘抄自野火学习教程,仅仅是学习记录。ST单片机分类:STM32有很多系列,可以满足市场的各种需求,从内核上分有Cortex-M0、M3、M4和M7这几种,每个内核又大概分为主流、高性能和低功耗。F1代表了基础型,基于 Cortex-M3 内核,主频为 72MHZ。F4代表了高性能,基于 Cortex-M4 内核,主频为 180MHZ。F4相比F1除了内核不同和主频的提升外,...

2020-01-22 12:50:38 1110

原创 i.MX6 LCD屏参数配置

系统:Linux处理器:i.MX6TFT屏:群创 DE018IC-02ALCD参数配置:参数修改位置:LCD在内核中的参数在文件kernel/drivers/video/mxc/mxc_lcdif.c中的lcdif_modedb结构体进行配置。LCD手册配置表:参数解释:Name: “HUD-WVGA”,标识符/名字。Refresh: 60,频率(Hz)。Xres: 48...

2020-01-16 15:27:38 308

原创 STM32F40xx搭建Keil工程编译错误(stm32f4xx_fmc.c)

状况:搭建完Keil工程后进行编译后发生如下的错误:compiling stm32f4xx_fmc.c.....\..\CodeFile\Bsp\stm32f4xx_fmc.c(144): error: #20: identifier "FMC_Bank1" is undefined FMC_Bank1->BTCR[FMC_Bank] = 0x000030DB; ...

2019-12-30 17:13:22 1646 4

原创 新建一个STM32的Keil V5工程

1、创建工程目录目录结构:CMSIS(存放和内核相关的文件)Library(存放STM32F4 标准外设固件库源码文件和对应的头文件)Listing(存放列表文件)Output(存放编译过程中产生的中间文件)Project(存放工程文件)User(存放用户自己定义的源文件)2、下载STM32的固件库ST的官网地址:https://www.st.com/content/st...

2019-12-27 21:28:21 524

原创 安装keil5(MDK)及导入pack包教程

首先说明的是我安装的Keil版本为Keil V5.29.0.01、安装软件右键管理员权限运行安装包设置安装路径以及pack的存放路径随意输入First Name和E-mail安装驱动完成软件安装,然后可以先关闭弹出的Pack Install(一会再添加)2、激活一下软件打开桌面的KeilFile → License Management(我之前注册过了)右...

2019-12-24 16:55:19 20001 1

原创 BLE蓝牙的UUID列表

BLE蓝牙的UUID列表,从官网摘录并翻译

2019-12-10 14:36:34 3317

转载 Rob Pike的五大编程原则

原则 1你没有办法预测每个程序的运行时间,瓶颈会出现在出乎意料的地方,所以在分析瓶颈原因之前,先不要盲目猜测。原则 2测试(measure)。在测试之前不要优化程序,即使在测试之后也要慎重,除非一部分代码占据绝对比重的运行时间。原则 3花哨的算法在 n 比较小时效率通常比较糟糕,而 n 通常是比较小的,并且这些算法有一个很大的常数。除非你确定 n 在变大,否则不要用花哨的算法。(即便 n...

2019-11-13 19:38:30 193

原创 Shell脚本实践整理

准备(创建测试文件):1. 按行读取文件内容,且过滤包含“#”字符的行代码:#!/bin/bashFILE_NAME="test"cat $FILE_NAME | while read LINEdo #过滤配置文件中包含"#"的行 if [[ ${LINE} =~ "#" ]];then continue;fi echo ${LINE}done结果:hrx@@@...

2019-11-07 15:08:54 263

原创 Android Studio3.5自动排版导致XML布局混乱问题解决方法

问题点在Android Studio 3.5中使用自动排版(CRTL+ALT+L)会导致布局文件XML的空间位置混乱。解决方法如下操作即可解决。Files --> Settings --> Editor --> XML --> Set from --> predefined Style --> Android...

2019-10-08 14:15:06 494

原创 软考笔记(2)--校验码(海明码)

海明码(Hamming Code)是一种利用奇偶性来检错和纠错的校验方法。海明码的构成方法是在数据位之间的特定位置上插入k个校验位,通过扩大码距来实现检错和纠错。设数据位是n位,校验位是k位,则n和k必须满足以下关系:设...

2019-09-21 14:54:14 107

onActivityResult使用与启动方式关系

之前遇到了onActivityResult提前调用的问题,说是和activity的启动模式有关,就做了一个Demo将四种启动方式都测试了一下,里面包括 onActivityResult的使用以及在四种不同启动模式下使用效果的不同情况

2015-12-19

onActivityResult使用与启动方式关系Demo

之前遇到了onActivityResult提前调用的问题,说是和activity的启动模式有关,就做了一个Demo将四种启动方式都测试了一下,里面包括 onActivityResult的使用以及在四种不同启动模式下使用效果的不同情况

2015-12-19

V4L2官方手册PDF文档,0.12版本

Linux视频开发手册,2016.03.03修订的版本,版本0.12,英文版本

2018-09-28

YUV格式查看器

YUV格式图片查看器,用于打开yuv格式的图片。亲测可用,如果无法正常且确认图片没问题则在软件中图片设置修改图片对应分辨率再尝试一下。

2018-07-16

模式识别(第二版)

本书是清华大学自动化系教材,主要讨论统计模式识别理论和方法,第一版包括贝叶斯决策理论、线性和非线性判别函数、近邻规则、经验风险最小化、特征提取和选择,以及聚类分析,等等。多数章后附有习题,适合于数学和自学。 第二版在第一版基础上进行了较多的修订和补充,增加了关于人工神经网络、模糊模式识别、模拟退火和遗传算法,以及统计学习理论和支持向量机等内容,还介绍了模式识别在人脸识别、说话人语音识别及字符识别等中的应用实例。

2017-10-14

android NDK(java调用C)

java调用C的方法 相关博客http://blog.csdn.net/lang523493505/article/details/53163679

2016-11-15

volley使用例子

复习时写了一个listview用volley加载图片

2016-07-18

AIDL使用例子

介绍ADIL的使用方法,具体可以参考博客http://blog.csdn.net/lang523493505/article/details/51893191

2016-07-16

ActionBar+ViewPager+Fragment+Observable

自己做了一个计数的小demo,整合了ActionBar、ViewPager、Fragment、Observable,多用用熟练一下

2016-05-20

onActivityResult使用与launchMode关系Demo

之前遇到了onActivityResult提前调用的问题,说是和activity的启动模式有关,就做了一个Demo将四种启动方式都测试了一下,里面包括 onActivityResult的使用以及在四种不同启动模式下使用效果的不同情况

2015-12-19

空空如也

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

TA关注的人 TA的粉丝

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