- 博客(30)
- 资源 (4)
- 收藏
- 关注
转载 linux定时器setitimer的使用说明
在linux c编程中。setitimer是一个比較经常使用的函数。可用来实现延时和定时的功能,网上有各种零零散散的使用方法说明,都仅仅提到了个别使用方法,今天抽出时间实践整理了一份比較具体的:使用时须要引入的头文件:#include <sys/time.h>setitimer函数原型:int setitimer(int which, const struct it...
2019-07-31 15:09:45
568
原创 c运行shell
第一:system("ls");第二:执行并把结果放到字符串里FILE *fp=NULL; char buff[128]={0}; memset(buff,0,sizeof(buff)); fp=popen("uname -a","r"); fread(buff,1,127,fp);printf("%s",buff);pclose(fp); 第三:执行并把结果...
2019-03-12 13:58:20
937
转载 Linux下C语言 system函数返回值
例:status = system("./test.sh");1、先统一两个说法:(1)system返回值:指调用system函数后的返回值,比如上例中status为system返回值(2)shell返回值:指system所调用的shell命令的返回值,比如上例中,test.sh中返回的值为shell返回值。2、如何正确判断test.sh是否正确执行?仅判断status是否==...
2019-03-08 08:11:38
10051
原创 ubuntu 缺少lsusb lspci insmod等
lsusb-----------> usbutilslspci-------------> pciutils insmod...--------> module-init-tools
2019-02-27 09:39:41
7583
1
原创 字符串去重拼接
键盘依次接受两个英语。例如输入:abcdcdef输出:abcdef输入:abcdcdcdcdef输出:abcdcdef输入:abcdef输出:abcdef#include<stdio.h>#include<stdlib.h>int strlenthg(char *p);char *func(char *a, c...
2019-01-25 09:41:03
1902
原创 ping过程详解
主机A ip:192.168.1.2设备A(网关) wan:58.56.57.122 lan:192.168.1.1 设备B(路由) wan1:58.56.57.121 wan2:58.56.58.2 主机B ip: 58.56.58.3 主机A: ping 5...
2018-10-17 09:25:13
859
原创 linux chmod 0777 的 0是啥
四位权限问题,后三位就不说了。说一下第一位同样第一位换成二进制也分成三部分abca - setuid位, 如果该位为1, 则表示设置setuidb - setgid位, 如果该位为1, 则表示设置setgidc - sticky位, 如果该位为1, 则表示设置stickysetuid: 设置使文件在执行阶段具有文件所有者的权限. 典型的文件是 /usr/bin/passwd. 如果一...
2018-08-24 15:13:42
11123
4
转载 以太网最小字节长度和最大字节长度
最小为64,最大为1518(mtu为1500),但是有了巨型帧最大为9K,发送时分成一片一片的MTU发送 具体详解:http://blog.sina.com.cn/s/blog_413d250e01017i72.html
2018-08-08 10:14:21
4862
原创 drivers/staging
staging tree建立之目的是用来放置一些未充分测试或者因为一些其他原因未能进入内核的新增驱动程序和新增文件系统。
2018-08-03 09:16:39
2308
原创 shell 字符串替换
read in_cmdecho $in_cmd > ased s/[[:space:]]//g -i a ##replace space by ##去掉所以的空格sed s/,//g -i a ##replace , by ##去掉所以的逗号va=$(cat a)接下就可以对变量va进行判断了。如果只是输出打印的话,直接输出就...
2018-08-01 10:09:33
8185
转载 Shell截取字符串方法总结
Linux 的字符串截取很有用。有八种方法。假设有变量 var=http://www.aaa.com/123.htm.1. # 号截取,删除左边字符,保留右边字符。echo ${var#*//}其中 var 是变量名,# 号是运算符,*// 表示从左边开始删除第一个 // 号及左边的所有字符即删除 http://结果是 :www.aaa.com/123.htm2. ## ...
2018-08-01 10:01:03
167
原创 IP地址的ABC类划分
简单的说: A类网络的IP地址范围为:1.0.0.1-126.255.255.254; B类网络的IP地址范围为:128.1.0.1-191.255.255.254; C类网络的IP地址范围为:192.0.1.1-223.255.255.254 具体解释: 1.A类IP地址 一个A类IP地址由1字节(每个字节是8位)的网络地址和3个字节主机地址组成,网络地址的最高位...
2018-07-28 11:11:27
53667
5
转载 通过一个实例来理解路由与路由表
应用背景下图共有两个不同的网段分别是NetworkA与NetworkB,这两个网段是通过一个路由器(Server A)来进行数据传递,那么当PC01这台主机想要传送数据到PC11时,它的IP数据包该如何传输?应用分析NetworkA(192.168.0.0/24)与NetworkB(192.169.1.0/24)是不同的网段,所以PC01与PC11是不能直接传递数据的。当主机要发送...
2018-07-28 10:42:50
1165
转载 VLAN tag
这四个字节的802.1Q标签头包含了2个字节的标签协议标识(TPID)和2个字节的标签控制信息(TCI)。TPID(Tag Protocol Identifier)是IEEE定义的新的类型,表明这是一个加了802.1Q标签的帧。TPID包含了一个固定的值0x8100。TCI是包含的是帧的控制信息,它包含了下面的一些元素:Priority:这3 位指明帧的优先级。一共有8种优先级,0-...
2018-07-28 09:59:39
7963
转载 二层网络,三层网络
在企业的网络结构选择中,有二层网络和三层网络结构两种选择。在这里的二层、三层是按照逻辑拓扑结构进行的分类,并不是说ISO七层模型中的数据链路层和网络层,而是指核心层,汇聚层和接入层,这三层都部署的就是三层网络结构,二层网络结构没有汇聚层。只有核心层和接入层的二层网络结构模式运行简便,交换机根据MAC地址表进行数据包的转发,有则转发,无则泛洪,即将数据包广播发送到所有端口,如果目的终端收到给...
2018-07-28 09:05:47
6568
2
转载 网络通信协议
一般地,关注于逻辑数据关系的协议通常被称为上层协议,而关注于物理数据流的协议通常被称为低层协议。IEEE802就是一套用来管理物理数据流在局域网中传输的标准,包括在局域网中传输物理数据的802.3以太网标准。还有一些用来管理物理数据流在使用串行介质的广域网中传输的标准,如帧中继FR(FrameRelay),高级数据链路控制HDLC(High-LevelDataLinkControl),异步...
2018-07-27 15:33:22
22298
1
原创 LINUX字符设备驱动框架
#include <linux/module.h>#include <linux/kernel.h>#include <linux/fs.h>#include <linux/init.h>#include <linux/delay.h>#include <asm/uaccess.h>#include <asm...
2018-07-04 21:33:56
183
转载 ubuntu12.04安装QQ以及搜狗输入法问题解决
安装最新QQ: 1安装winehq: sudo add-apt-repository ppa:wine/wine-buildssudo apt-get update sudo apt-get install winehq-devel 2下载QQ: 百度云链接:https://pan.baidu.com/s/1dE2sZNr 密码: evgf ...
2018-03-26 16:58:31
445
原创 10位二进制AD值转为3位16进制,通过UART发送
void display_adc3(int val){ int ch=val; ch=ch&0x300; ch=ch>>8; switch(ch) { case 0:uart_txd('0');break; case 1:uart_txd('1');break; case 2:uart_txd('2');break; case 3:uart_txd(
2018-01-09 00:31:20
1094
原创 S3C2410 普通AD转换
一、AD转换基本原理AD(Analog to Digital) 意思是:模—数转换,它是外部世界模拟信号和计算机之间联系的接口。它将连续变化的模拟信号转换为数字信号,以便计算机和数字系统进行处理、存储、控制和显示。AD转换器是用来通过一定的电路将模拟量转变为数字量。模拟量可以是电压、电流等电信号,也可以是压力、温度、湿度、位移、声音等非电信号。但在AD转换前,输入到AD转换器的输入信号必须
2018-01-04 23:28:59
2892
原创 S3C2410 UART 发送变量字符
void sendc(int val){ char str[10]; str[0]=val+'0';//赋值给单个字符 uart_txd(str[0]);}uart_txd();为发送字符。详见http://blog.youkuaiyun.com/qq_23541951/article/details/78934847点击打开链接。本段实现变量转为字符,然后通过uart发送。int
2018-01-04 21:51:36
429
原创 S3C2410 通用异步收发UART 串口通信
一、UART原理说明通用异步收发器简称UART,用来传输串行数据。发送数据时,CPU将并行数据写入UART,UART按照一定的格式在一根电线上串行发出。接收数据时,CPU检测另一根电线上的信号,讲串行收集放在缓冲区中,CPU即可读取UART获得这些数据。UART之间通过全双工方式传输数据,最简单只有三根线TxD(发送数据),RxD(接收数据),GnD(双方参考电平),连线如下图所示
2017-12-29 20:46:59
4757
原创 ARM9 SWI软件中断
一、SWI软件中断原理。在特权模式下,处理器模式切换可以通过软件控制进行切换,即修改 CPSR的模式位。但在用户模式下,是没有权限通过修改 CPSR 实现模式转换的,除非 通过外部中断或是异常处理过程进行切换。为方便在用户模式下灵活实现模式的 转换, ARM 指令集提供了产生异常的指令,即软件中断指令 SWI 。也就是说用户程序里可以通过写入 SWI 指令来切换到特权模式,当 CP
2017-12-21 23:55:08
903
转载 CPSR_C
众所周知,ARM每种工作模式除R0~R15共16个寄存器外,还有第17个寄存器CPSR,叫做 当前程序状态寄存器,CPSR中一些位被用于标识各种状态,一些位被用于标识当前出于什么工作模式其中cpsr_c代表的是这32位中的低8位,也就是控制位当你看到有些程序里这样写msr cpsr_c 0xd2
2017-12-19 20:53:07
1523
原创 S3C2410 按键控制LED(中断)
一、开发环境1、硬件平台:UP-TECH2410DVK1.12、主机:PC+eclipse二、相关原理图LED1-->GPC5LED2-->GPC6LED3-->GPC7KEY1-->EINIT3KEY2-->EINIT5KEY3-->EINIT9三、基本原理通过按键的按下而触发中断,从而进
2017-12-19 19:37:24
3752
1
转载 s3c2410 中断异常处理
文章出处:http://www.another-prj.com/viewthread.php?tid=14&extra=page%3D1 在进入正题之前,我想先把ARM920T的异常向量表(Exception Vectors)做一个简短的介绍。:]ARM920T的异常向量表有两种存放方式,一种是低端存放(从0x00000000处开始存放),另一种是高端存放(从0xfff000000处开
2017-12-19 19:25:17
572
1
LINUX串口文件传输
2018-07-25
goldfish-android-goldfish-2.6.29
2018-03-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人