- 博客(30)
- 资源 (5)
- 收藏
- 关注
原创 Arduino + LCD1602 初体验总结
Arduino + LCD1602 初体验LCD1602引脚功能电路图LiquidCrystal 库LiquidCrystal()构造方法,有四种重载:LiquidCrystal(rs, enable, d4, d5, d6, d7)LiquidCrystal(rs, rw, enable, d4, d5, d6, d7)LiquidCrystal(rs, enable, d0, d1, d2, d3, d4, d5, d6, d7)LiquidCrystal(rs, r
2021-02-21 20:59:23
1406
原创 声网Demo apk运行闪退
声网Demo apk运行闪退问题根据README描述,需要先到官网申请appid(必须)和token(非必须),然后填写到strings.xml中。但是编译,在手机运行之后,直接闪退。查看调试信息,错误码101。这个信息是因为appid填写有问题。尝试几次后发现,是因为id左右的#号多余,删掉之后,编译可以正常运行了。重新运行,ok了。...
2019-12-21 23:20:21
500
原创 文件描述符
基本概念Linux一切皆是文件,即使是设备,在系统中也会被映射一个文件。键盘和显示器就是默认的标准输入输出指向的设备文件。系统中所有对文件的操作都是通过文件描述符来间接实现的,默认有三个描述符:0、1、2,分别对应标准输入、标准输出、标准错误。通过文件描述符访问文件是通过以下三种数据结构相互关联实现的。1.每个进程维护一张自己的文件描述符表。而后两张是系统级,全局只有一张。2.从左到右是多对...
2019-07-21 15:20:20
499
原创 Sed命令常用用法
基本语法:sed [options] commands inputfileoptions:-n:取消默认输出eg. sed -n '3 p' test.txt-e:多条子命令时使用eg. sed -e 's/a/A/' -e 's/b/B/' test.txteg. sed -e 's/a/A/;s/b/B/' test.txt-f:将多条命令写在脚本中,从脚本中读取命令,此时co...
2019-06-23 14:44:42
770
原创 shell脚本的3种执行方式分析
执行shell脚本的三种方式包括:1.使用“解释器 + 文件名”的方式2.直接指定文件名3.使用“source + 文件名”的方式这里文件名可以用相对路径也可以用绝对路径。如果文件所在路径被加入到$PATH中,甚至可以不指定路径,直接指定脚本名即可。1.使用“解释器 + 文件名”的方式脚本执行的只是打印一个变量,同时也过滤了当前脚本名的进程根据上面的打印结果,重点关注下面三个特征:...
2019-05-12 17:45:06
1347
原创 Linux模拟器Termux的使用总结
2019.05.04今天手机装了Termux,确实很强大。存储权限放开,可以用脚本做很多事情了,取得root权限之后,就更嗨了。毕竟是模拟器,与实际的Linux还是有点差异的,记录一下。主要文件都在这个路径下:/data/data/com.termux/files这个路径下包括包括两个目录,home和usr,分别对应于linux的home目录和根目录下其他的那些目录/data/dat...
2019-05-04 22:45:36
5132
4
原创 通过tcpdump分析TCP报文(1)
第一部分,先熟悉一下tcpdump的基本使用并对一个普通的TCP数据报文进行分析。tcpdump的基本使用常用参数:参考:https://blog.51cto.com/nickfox/2089655-i 指定监听的网络接口-nn IP和端口均以数字形式显示-c 在收到指定的数量的分组后,tcpdump停止,如果没有这个参数,tcpdump会持续不断的监听直到用户输入 [ctrl]-c...
2019-05-03 13:40:48
16106
1
原创 树莓派3B开启VNC服务
参考:https://www.cnblogs.com/crosys/p/6220471.htmlhttps://blog.csdn.net/a2013126370/article/details/78816222#commentBox1.在树莓派上开启vnc服务sudo raspi-config5 Interfacing Options -> P3 VNC ->enable...
2019-05-02 18:44:31
4288
原创 define 和 typedef 的比较
最近工作中遇到一个问题,加深了我对define和typedef之前区别的认识,特此记录。问题:pclint检查到一个指针变量,没有使用该指针去直接改写其指向的内存的情况,因此建议使用const修饰。特别地,该指针类型是用typedef定义的。typedef void * HANDLEHANDLE var;按照pclint给的建议,本能的改成了 const HANDLE var; 此时编译...
2019-02-17 19:21:27
197
原创 Shell实现树莓派通过风扇自动调节CPU温度(附源码与原理图)
背景树莓派因为性能和自身散热能力,容易在做一些复杂工作时温度升高,例如看个在线视频。而长期高温工作自然是不好的。淘宝上买来的小风扇,有很明显的降温效果,但是结构简单,两根线一根接5V,一根接地,所以插上之后只能一直运行。而且风扇声音很吵,比较烦。所以需要搞一个基于温度自动调整风扇转动的功能。原理树莓派:+5v/0v 和一个引脚作为输出,用来控制风扇的开关即可。继电器:1.选择高电平触发...
2019-01-01 15:56:34
3976
原创 Linux_Shell脚本攻略学习笔记(2)1.6-1.15
1.61)数组的类别:a.普通数组,索引是数字,从0开始,但是特别的是,索引可以不连续b.关联数组,索引是字符串shell 中的数组更像是key-value的感觉,就算是普通数组,也没有必须连续。用起来还是很方便。2)定义数组的方法:a.普通数组:arr=(1 3 5)arr[1]=3 arr[3]=5b.关联数组:第一步:先声明 declare -A arr第二步...
2018-12-31 12:38:05
168
原创 Linux_Shell脚本攻略学习笔记(1)1.1-1.5
1.11)shell脚本的两种执行方式:a.直接输入地址+脚本名,如当前目录的./test.shell或者~/Documets/test.shell这种方式必须在脚本头指定解释器,即#!/bin/bashb.不需要指定解释器,使用/bin/bash ~/Documents/test.shell的方式2)每条命令之间使用换行或者分号进行分隔3)两个bash相关的特殊文件:~/.bashs...
2018-12-16 22:16:42
312
原创 树莓派开始之路----各种坑与问题汇总(持续更新)
系统的选择raspberrypi 3b 。亲身体会,ubuntu mate实在不如Raspbian官方推荐系统好,除了更卡一点,插上耳机,音频都放不出来。。。懒得找解决方法,可能以后会慢慢好起来吧。其他系统没试~挂各种设备,出现电压问题用有源hub,之后鼠标/键盘/移动硬盘随便挂连接蓝牙音频设备真的是分设备,同样是蓝牙设备,有的蓝牙耳机就是不行。随便买了个小米蓝牙音箱,音质贼好。。。首...
2018-12-02 13:06:34
8124
原创 C中extern的使用方法体会
extern的作用:抛开extern "c"这种特殊用法,它的作用简单来说就是改变了一个符号的作用域,这个符号可以是变量,可以是函数。一个全局变量原本他的作用域只在一个C文件内部,通过extern就可以让其扩大到整个工程。一个实际的例子:a_test.c#include <stdio.h>extern void fun();//引用外部函数int a = 10;//定义一个全...
2018-12-02 12:32:32
276
转载 树莓派3B软件源修改
树莓派3B各种下载不了软件,找不到源,或者网速特别慢的问题解决方法:/etc/apt/sources.list 内容修改成deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ stretch main contrib non-freedeb-src http://mirrors.tuna.tsinghua.edu.cn/ras...
2018-12-02 10:02:31
1032
转载 树莓派输入法候选项无法正常显示问题解决
参考:http://www.junfcom.cn/post/189.html树莓派输入汉字时候选项看不到,只是一个大黑框,影响输入。三条命令解决:sudo apt remove fcitx-module-kimpanelsudo apt-get remove fcitx-ui-qimpanelreboot...
2018-12-02 09:11:14
4311
6
原创 关于内联函数写法的总结体会
关于inline修饰符的总结体会1.内联函数的作用在编译阶段,在调用处,将内联函数展开,展开这一点类似于宏。相应的有点则是节省了函数调用的开销。inline适合修饰函数体短小的,因为这样2.内联函数的基本使用方法只需要给函数加上inline修饰即可。比如:inline char fun (int a, int b);inline void fun1(int a , int b){r...
2018-09-24 17:00:19
740
原创 TCP/IP详解学习---ARP & RARP
TCP/IP详解学习---ARP & RARPARP(地址解析协议)功能ARP学习流程ARP的相关的一些指令免费ARPARP代理RARP(逆地址解析协议)报文特点作用ARP(地址解析协议)功能提供IP地址到硬件地址之间的映射关系。从物理层面来说,想让任何一台设备接收发送给他的报文,最基本的前提是报文中封装的目的地址(硬件物理地址,全世界唯一的)必须跟接收报文的接口地址相同,否则一...
2018-09-22 21:31:16
785
原创 win10平台+VirtualBox下的ubuntu调用摄像头
1.在ubuntu中输入终端命令:cheese即可调用摄像头。2.若调用失败,则原因是缺少virtualBox拓展插件,到官方下载,如图:3.下载完成直接运行安装即可。4.打开virtualbox,进行usb设备添加设置。5.点击摄像头,并使其进入勾选状态:6.重复1的操作,可发现摄像头被成功调用,也可在ubuntu下的开发项目中调用。
2017-04-10 23:26:16
5529
原创 C语言中字符串与字符数组的使用
引言:在C++中,对于字符串的操作,我们常使用 String 类,使用起来极其方便,所有常常会用到的对字符串的操作均已封装好。但是,在C中,字符串我们使用字符数组来实现,而且如果不搞清楚字符数组与字符串之间的关系,常常会出现一些无法解释的问题。笔者之前一直对两者之间的关系有所疑惑,最近查阅相关资料,终于搞清楚,现整理出来。虽然这个不算什么大问题,但是不彻底搞清楚就是觉得心里不爽~希望各位看官批评指
2017-03-01 18:14:57
727
转载 C语言运算符优先级总结
转自http://www.acmerblog.com/c_operator_precedence-5581.html一共有十五个优先级:1 () [] . ->2 ! ~ -(负号) ++ – &(取变量地址)* (type)(强制类型) sizeof3 * / %4 + -5 >> <<6 > >= < <=7 == !=8 &9 ^
2017-02-25 18:37:16
336
转载 Ubuntu+QT5.8 调用摄像头出现错误
找不到-lpulse-mainloop-glib和-lpulsesudo su find / -name libpulse-mainloop-glib.so*出现: /usr/lib/x86_64-linux-gnu/libpulse-mainloop-glib.so.0 /usr/lib/x86_64-linux-gnu/libpulse-mainloop-glib.so.0.0.4cp /
2017-02-24 16:52:04
950
原创 数据结构学习笔记
数据结构学习笔记之——排序基本概念排序:重新排列表中的元素,使表中的元素满足按关键字递增或递减的过程。算法的稳定性:如果待排序表中有两个元素 i,j,其对应关键字 ki,kj,且在排序前 i 在 j 前面,如果使用某一排序算法排序后,i 仍然在 j 前面,则称这个排序算法是稳定的,否则称排序算法是不稳定的。(算法是否具有稳定性并不能衡量一个算法的优劣,它主要是对算法的性质进行描述)插入排序插入排序是
2016-12-31 15:25:49
241
基于单片机的电子时钟源码(C)+工具
2017-01-04
PLC电缆(黑、黄、蓝)通用驱动
2017-01-04
基于单片机的万年历设计
2016-01-21
基于51单片机的电子时钟设计
2016-01-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人