自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

颜言研的博客

请指教

  • 博客(30)
  • 收藏
  • 关注

原创 Linux下串口收发通信

Linux下编程的过程有些固定,很多都是比如打开、配置、关闭等等串口通信流程:打开串口ttySn--->初始化串口--->读写(read、write)--->关闭串口最合适的指导书:https://www.ibm.com/developerworks/cn/linux/l-serials/串口设置 最基本的设置串口包括波特率设置,效验位和停止位设...

2018-09-19 01:47:15 40650 19

原创 IO多路复用---select、poll、epoll

     IO多路复用技术是为了解决进程或者线程阻塞到某个IO系统调用而出现的技术,使进程不阻塞某个特定的IO系统调用。    select(),poll(),epoll()都是I/O多路复用的机制。    I/O多路复用通过一种机制,可以监视多个描述符,一旦某个描述符就绪(一般是读就绪或者写就绪,就是这个文件描述符进行读写操作之前),能够通知程序进行相应的读写操作。但select(),p...

2018-09-19 01:21:31 308

原创 不带头结点的双向链表---C语言

1、链表分为带头结点、不带头结点两种;2、头结点的数据域不存放数据;3、链表增加头结点的原因:使往第一个位置插入和删除元素的操作和其他位置一样;4、常见的会考到:                    ①手写链表、                    ②实现链表的创建(插入、删除、摧毁、逆序等)操作、                    ③链表模拟栈、       ...

2018-09-19 01:07:11 2970

原创 链表模拟队列quene---C语言

1、链表分为带头结点、不带头结点两种;2、头结点的数据域不存放数据;3、链表增加头结点的原因:使往第一个位置插入和删除元素的操作和其他位置一样;4、常见的会考到:                    ①手写链表、                    ②实现链表的创建(插入、删除、摧毁、逆序等)操作、                    ③链表模拟栈、       ...

2018-09-19 01:03:48 730

原创 链表模拟栈stack---C语言

1、链表分为带头结点、不带头结点两种;2、头结点的数据域不存放数据;3、链表增加头结点的原因:使往第一个位置插入和删除元素的操作和其他位置一样;4、常见的会考到:                    ①手写链表、                    ②实现链表的创建(插入、删除、摧毁、逆序等)操作、                    ③链表模拟栈、       ...

2018-09-19 01:01:09 398

原创 不带头结点的链表---C语言

1、链表分为带头结点、不带头结点两种;2、头结点的数据域不存放数据;3、链表增加头结点的原因:使往第一个位置插入和删除元素的操作和其他位置一样;4、常见的会考到:                    ①手写链表、                    ②实现链表的创建(插入、删除、摧毁、逆序等)操作、                    ③链表模拟栈、       ...

2018-09-19 00:58:18 532

原创 带头结点的链表---C语言

1、链表分为带头结点、不带头结点两种;2、头结点的数据域不存放数据;3、链表增加头结点的原因:使往第一个位置插入和删除元素的操作和其他位置一样;4、常见的会考到:                    ①手写链表、                    ②实现链表的创建(插入、删除、摧毁、逆序等)操作、                    ③链表模拟栈、       ...

2018-09-19 00:56:22 436

原创 进程和线程的区别

不同点:      ①进程是执行中的一段程序,进程是资源分配的基本单位,是程序执行的一个实例,是调度运行的基本单位,是系统中并发执行的单位。          线程是单个进程执行的每一个任务,线程是进程中执行运算的最小单元。       ②一个线程只能属于一个进程,一个进程可以拥有很多线程。多线程就是允许在一个进程中同时执行多个任务。       ③线程是轻量级的进程,线程...

2018-09-03 13:28:43 418

原创 私有IP地址

私有IP地址私有地址分3类:    A类:第一段为10的都是私有地址            10.0.0.1 --- 10.255.255.254            10.0.0.0表示整个网段,10.255.255.255是广播地址     乙类:以172.16 172.31 ---开头的都是私有地址            172.16.0.1 --- 172.3...

2018-09-03 13:26:20 17796 1

原创 操作系统-5大功能、5大类型

操作系统的5大管理功能:    1)设备管理:主要负责内核和外围设备的数据交互,实质是对硬件设备的管理,包括输入输出设备的分配、初始化、维护和回收等等。     2)作业管理:负责人机交互、图形界面或系统任务的管理。     3)文件管理:涉及文件的逻辑组织和物理组织、目录结构和管理等等。                    从操作系统的角度来看,文件系统是系统对文件存储...

2018-09-03 13:25:15 27151

原创 FL2440无线路由器制作---RT3070 softAP模式

FL2440添加RT3070实现无线上网功能---AP模式>>>想要让网卡设备成为AP,就要移植Hostapd    rtl3070的中文名为雷凌3070,是台湾雷凌科技有限公司生产的一款专用于usb无线网卡的处理芯片,是一种低功耗高度集成的MAC / BBP和2.4G RF单一芯片,支持300Mbps的吞吐量。        RT3070无线网卡有两种工作模式S...

2018-08-24 13:54:40 1071

原创 FL2440无线路由器制作---RT3070 STA模式

FL2440添加RT3070实现无线上网功能−−−STA模式FL2440添加RT3070实现无线上网功能−−−STA模式\color{Red}{FL2440添加RT3070实现无线上网功能---STA模式}>>>想要让网卡设备成为STA,就要移植wpa_supplicant>>>想要让网卡设备成为STA,就要移植wpa_supplicant\color{...

2018-06-01 01:21:40 691

原创 TCP网络编程

TCP头部格式说明* 源端口和目的端口:  各占 2 字节.端口是传输层与应用层的服务接口.传输层的复用和分用功能都要通过端口才能实现* 序号:   Seq序号,占32位,用来标识从TCP源端向目的端发送的字节流,发起方发送数据时对此进行标记。* 确认号:   Ack序号,占32位,只有ACK标志位为1时,确认序号字段才有效,Ack=Seq+1。* 数据偏移/首部长度:  占 4 位,它指出...

2018-04-27 22:27:11 472

原创 TCP与UDP的介绍

TCP的优点: 可靠,稳定 TCP(面向连接)的可靠体现在TCP在传递数据之前,会有三次握手来建立连接,而且在数据传递时,有确认、窗口、重传、拥塞控制机制,在数据传完后,还会断开连接用来节约系统资源。 TCP的缺点: 慢,效率低,占用系统资源高,易被攻击 TCP在传递数据之前,要先建连接,这会消耗时间,而且在数据传递时,确认机制、重传机制、拥塞控制机制等都会消耗大量的时间,而且要在每台设备上维护所...

2018-04-27 22:12:59 776

原创 修改代码应该上传git的东西---patch

    当我接触到git的时候,就发现它的各种好处,实在是一大利器。    作为新接触git的我,好好研究了一下。从整个文件全部上传(后来知道gitee和github的空间总共就那么点)的萌新,到对git有了一定认识并且知道了应该怎么使用git的萌新,在这里写下我的一点见解。    打重点:网上的源码都是开源的,生活在网络时代的我们可以轻易拿到这些源码,所以源码是不应该上传的,上传的应该是修改代码...

2018-04-25 14:18:24 740

原创 字符串处理函数strcpy和strcat

字符串处理函数strcpy和strcat注意的问题:测试代码优先:#include <stdio.h>#include <string.h>int main(int argc ,char **argv ){ char a[10] = "abc" ,b[10] = "012",c[10] = "xyz"; strcpy( a+1,b+2 );...

2018-04-15 22:20:48 1812

原创 char a[]="xyz",b[]={'x','y','z'};strlen和sizeof

#include <stdio.h>#include <stdlib.h>#include <string.h>int main(){ char a[]="xyz",b[]={'x','y','z'}; char c[]="xyz"; int d[]={'x','y','z'}; cha...

2018-04-10 20:39:37 4089 2

原创 Ubuntu安装python3

    由于我的电脑的pycharm版权免费期到期了,只有下载选项,下载了又不能安装,所以想在Ubuntu上装python3,也方便远程使用嘛。    一、安装Python3的命令root@ubuntu:~# apt-get install python3.5        哇,原来ali cloud自带了python了啊,这个服务这么周到,已经有了python3了,那试一下:    默认是指向...

2018-04-09 19:08:11 1570

原创 vm虚拟机点打开无反应

    vmware是常用的虚拟机,但有时候打开无反应,也没有任何提示。    我的电脑是在win10更新之后,出现的问题,分析得出是防火墙变各种设置被系统改变了。    解决办法:    1、如果重装也没有解决问题,那要注意有没有出现“允许公共网络或者专有网络”的选项。如果没有,但手动去防火墙允许:win10--->设置--->网络和Intent--->状态--->Win...

2018-04-08 19:48:27 16381 2

原创 ARM上第一个hello模块

    在根文件系统完成之后,下一步就是编写模块也就是驱动。    Linux允许内核在运行时动态地向其中插入或删除代码,可装载的内核代码也被称为模块,模块机制允许我们方便的删除和添加内核代码,也方便了调试工作,而且当热拔插时,可以通过命令载入驱动程序。    Linux内核设计的原则是: 只提供机制(需要提供什么功能),不实现策略(如何使用这些功能)!    像所有的编程序言一样,我从最开始的H...

2018-04-04 23:07:40 1012

原创 该虚拟机似乎正在被使用

问题描述:    1.打开虚拟机时出现以下错误信息:该虚拟机似乎正在被使用,请获取所有权。         2.无论点了“获取所有权”还是“取消”,都会出现失败的信息    问题分析:    由于我们的虚拟机还没有被打开,因而不存在被占用的问题,出现此问题的主要原因是在执行上次的虚拟机关机操作时我们并没有执行正常的关机操作所致,所以说才会出现该问题。问题解决:    1.关闭VM,进入虚拟机的根目...

2018-04-03 11:25:35 2273

原创 开发板上Linux系统(烧录)启动过程

在半年之后重新回顾的开发版烧录过程,进行了更深一步的思考,加上查阅资料,对Linux系统的启动过程理解更深刻,于是有了如下的总结:1.SDRAM:Synchronous Dynamic Random-Access Memory,同步动态随机存储器,DRAM里面所储存的数据就需要周期性地更新;   SRAM  :Static Random-Access Memory,静态随机存取存储器,所谓的“静态...

2018-03-22 23:59:09 7633 1

原创 printf()缓冲区的问题

在书上看到的例子,是学习fork()创建新进程的时候,发现了printf()的不同的输出情况。在多次查资料的过程中,发现了居然是printf()的输出和缓冲区有关。#include <unistd.h>#include <sys/types.h>#include <stdio.h>#include <errno.h>int g_val =...

2018-02-28 00:23:23 2761 1

原创 Makefile简单实现和解释

MakefileMakefile或makefile定义了一系列的规则来操控文件。makefile文件描述了整个工程的编译、链接的处理过程,总结为一个自动化的处理方式,一个make就能完成所有的事情。Makefile文件名在当前路径下依次查找顺序为“GNUmakefile”,“makefile”,“Makefile”。其中“GNUmakefile”是GNU的make识别的,最好不要使用;有一些mak...

2018-02-28 00:10:42 683

原创 linux简单实现静态链接和动态链接

如何生成自己的静态库,动态库?如何提高自己代码的隐秘性?这就是方法。

2018-02-26 02:35:21 751

原创 Linux下开启FTP服务

Linux下开启FTP服务缘由:日常生活和工作中,我们经常会用到FTP网站下载东西,虽说有的软件已经能扔我们从云端下载文件了,但是作为Linux的使用者和学习者而言,FTP的搭建也是很重要的一个学习步骤。有了自己的FTP,可以随时下载自己的文件了。开始[yan@localhost ~]$ sudo yum install vsftpd                         //使能FTP...

2018-02-07 23:55:27 44719 3

原创 学会使用码云管理文件

版本控制SVNGIT

2017-12-03 13:32:12 4560

原创 什么是TTL、RS232、RS485?

TTL、RS232、RS485(RS422)一些简单介绍

2017-10-18 02:17:53 4060 1

原创 ARM硬件知识和常见通信协议

ARM硬件知识,常见通信协议I2C和SPI,电平标准TTL和RS232,内存,NAND Flash

2017-10-17 22:30:38 7889

原创 FL2440开发版烧录,u-boot移植,和简单C程序运行

烧录文件说明:bootstrap-s3c2440.bin bootstrap文件是用汇编写的一段代码,主要用来初始化CPU外部的SDRAM;在烧录时,该程序需要使用j-link下载到0x0(CPU内部SRRAM)地址上去运行,另外此程序不需要烧录到Nandflash上。u-boot-s3c2440.binu-boot就相当于电脑的BIOS程序,该程序用来烧录/启动Linux系统等。在运行完boot

2017-10-02 11:20:43 697

空空如也

空空如也

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

TA关注的人

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