自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(49)
  • 资源 (4)
  • 问答 (1)
  • 收藏
  • 关注

转载 CC2640R2F BLE5.0 开发工具集

CC2640R2BLE5.0开发工具集对于CC2640开发的全部工具集,我们建议直接从官方下载,因为整个TI Simplelink工具集更新频率特别快,一定程度上的更新会导致向上不兼容或者功能性的差异,所以我们始终要保持某些工具都在最新版本使用。这里我们给出所有开发工具的官方下载链接,同时我们在百度网盘也尝试维护一个版本,但是不一定是最新。软件/工具功能描述百度云下

2017-09-27 11:22:57 831

转载 CC2640R2F BLE5.0 建立Source Insight 工程

CC13xx/CC26xx 建立Source Insight 工程对于TI SimpleLink CC13x0/CC26x0 Wireness MCU 开发,借助编译环境IDE(IAR/CCS),我们可以管理代码工程,编译调试,但是不是最佳选择,这里我们区分编译调试和编辑环境,基于以下几点原因:嵌入式编译调试IDE(Keil、IAR、CCS)太多,我们熟悉一个编辑环境后无需重复转换

2017-09-27 11:21:34 844

转载 CC2640R2F BLE5.0 下载运行第一个程序(simple_peripheral)

下载运行第一个程序介绍本章使用CC2640R2F Evaluation Board作为实验平台下载运行simple_peripheral工程。旨在为开发者建立一个BLE的感性认识。simple_peripheral的IAR工程可以在目录C:\ti\simplelink_cc2640r2_sdk_1_35_00_33\examples\rtos\CC2640R2_LAUNCHXL

2017-09-27 11:20:21 2405

转载 CC2640R2F BLE5.0 开发环境搭建

CC2640R2 BLE5.0 开发环境搭建对于蓝牙开发所有的工具、SDK、开发软件、文档,我们建议直接从官方下载。整个CC13xx/CC26x0 系列所有资料更新频率相当快。熟悉从TI官方找资料,对于我们以后开发调试解决问题至关重要。我们详细归纳了CC2640R2F BLE4.2&BLE5.0开发的可能用到的所有工具集CC2640R2开发工具集介绍,同时维护一个百度网盘供大家下载。

2017-09-27 11:18:50 804

转载 CC2640R2F BLE5.0 开发向导

入门磨刀不误砍柴工,这个章节我们先详细讲解TI SimpleLink低功耗蓝牙无线MCU CC2640R2F的学习路线图。无论你是经验丰富还是才入门的的开发人员,TI都提供了各种资源,以简化CC2640R2F平台的开发。学会利用这些资源对学习、产品开发都至关重要。往往这部分也是我们最容易忽略的部分,迫不及待的吸收新知识,反而忽略了学习的方法。尽管我们我们写了大量中文教程尝试带你入门,但

2017-09-27 11:15:44 685

转载 CC2640之添加一个自定义的特性值

测试环境协议栈版本:BLE-STACK V2.1IAR开发环境版本:IAR for Arm 7.40硬件设备:Amo-SmartRF v2.0 开发板(对应TI官方的SmartRF06EB 开发板)示例测试Demo工程:simpleBLEPeripheral工程添加自定义特征值我们今天一

2017-09-26 18:04:56 1082

转载 Linux下/proc目录简介

1. /proc目录Linux 内核提供了一种通过 /proc 文件系统,在运行时访问内核内部数据结构、改变内核设置的机制。proc文件系统是一个伪文件系统,它只存在内存当中,而不占用外存空间。它以文件系统的方式为访问系统内核数据的操作提供接口。用户和应用程序可以通过proc得到系统的信息,并可以改变内核的某些参数。由于系统的信息,如进程,是动态改变的,所以用户或应用程序读取proc文

2016-10-20 17:29:07 306

转载 Openssl之BIO系列(3)

17.连接(connect)类型BIO该类型的BIO封装了socket的Connect方法,它使得编程的时候可以使用统一的BIO规则进行socket的connect连接的操作和数据的发送接受,而不用关心具体平台的Socket的connect方法的区别。其相关定义的一些函数如下(openssl\bio.h):BIO_METHOD * BIO_s_connect(void);#defi

2014-12-31 16:49:49 2353

转载 PKI 系统介绍

公钥基础设施(Public Key Infrastructure,简称PKI)是目前网络安全建设的基础与核心,是电子商务安全实施的基本保障,因此,对PKI技术的研究和开发成为目前信息安全领域的热点。本文对PKI技术进行了全面的分析和总结,其中包括PKI组成、证书认证机构CA、PKI应用、应用编程接口和PKI标准等,并对CA的开发做了简要分析。本文对PKI,特别是CA的开发、应用和普及具有一定的促进

2014-11-18 15:41:05 854

转载 linux命令 od

名称:od作用:格式化输出文件中的数据提要:         od [OPTION]... [FILE]...         od [-abcdfilosx]... [FILE] [[+]OFFSET[.][b]]     od --traditional [OPTION]... [FILE] [[+]OFFSET[.][b] [+][LABEL][.][

2014-11-03 11:03:18 565

转载 libevent参考手册第四章:与事件一起工作

libevent参考手册第四章:与事件一起工作libevent的基本操作单元是事件。每个事件代表一组条件的集合,这些条件包括:l  文件描述符已经就绪,可以读取或者写入l  文件描述符变为就绪状态,可以读取或者写入(仅对于边沿触发IO)l  超时事件l  发生某信号l  用户触发事件所有事件具有相似的生命周期。调用libevent函数设置事件并且关联到event_bas

2014-10-22 09:13:25 599

转载 回调函数的使用

http://www.elecfans.com/emb/xitong/20110616202334.html对指针的应用是C语言编程的精髓所在,而回调函数就是C语言里面对函数指针的高级应用。简而言之,回调函数是一个通过函数指针调用的函数。如果你把函数指针(函数的入口地址)传递给另一个函数,当这个函数指针被用来调用它所指向的函数时,我们就说这个函数是回调函数。  为什么要使用回调函数呢?我们

2014-09-25 14:24:14 528

转载 linux VFS中dentry结构解析

linux VFS中dentry结构解析http://hi.baidu.com/mnkee/blog/item/ef899c5128db3c3442a75b1c.html先看>此书中对dentry,file,process,inode这几个数据结构关系的解析。进程每打开一个文件,就会有一个file结构与之对应。同一个进程可以多次打开同一个文件而得到多个不同的file结构,file结

2014-09-25 14:02:12 3430

转载 LSM实现访问控制

首先对LSM 进行简单介绍。虽然linux下的各位基本都知道一些,但是还要罗嗦一下。LSM中文全称是linux安全模块。英文全称:linux security module.LSM是一种轻量级、通用的访问控制框架,适合多种访问控制模型以内核模块的形式实现。其特点是通用、简单、高效、支持POSIX。1e能力机制。LSM的架构图如下:通过系统调用进入内核之后,系统首先进行传统的权限

2014-09-11 12:51:03 1448

转载 linux内核定制详解

http://book.51cto.com/art/200802/66198.htmLinux系统管理技术手册(中文第二版)    张辉译http://book.51cto.com/art/200804/69727.htm

2014-09-09 14:57:19 517

转载 策略中学习【LSM】编写规则

最近涉及到了LSM的编写,在网上基本上搜不到关于LSM的编写规则和使用方法,LSM是我觉得菜鸟非常适合的一种访问控制策略编写,所以今天从SELinux的LSM代码学习。在内核源码/security/SELinux中hook.c中定义了LSM模块的hook机制。hook主要根据的是struct security_operations结构体,里面提供了各种函数的回调机制。

2014-08-26 15:53:56 1369

转载 shell 重定向问题

command > filename 把标准输出重定向到一个新文件中 command >> filename 把标准输出重定向到一个文件中(追加) command 1 > fielname 把标准输出重定向到一个文件中 command > filename 2>&1 把标准输出和标准错误一起重定向到一个文件中 command 2 > filename 把标准错误重定向到一个文件中 

2014-08-15 16:39:34 510

转载 C++string 类型结尾是否以'\0'结尾

今天在带大一学生C++上机时,涉及到一个string类型的字符串是否以\0结尾的问题,本来我很坚定string类型结尾并没有\0,C风格的字符数组才会那样。但是程序运行结果却说明string类型的字符串后面确实有\0。于是回实验室后自己又实验了下,才发现这和编译器有关,真坑爹。对于如下一段测试程序,在C-free 5.0和g++ 4.1上输出yes,而在VS2010上执

2014-08-11 10:02:34 2335

转载 C++ list 的使用

双向循环链表list        list是双向循环链表,,每一个元素都知道前面一个元素和后面一个元素。在STL中,list和vector一样,是两个常被使用的容器。和vector不一样的是,list不支持对元素的任意存取。list中提供的成员函数与vector类似,不过list提供对表首元素的操作push_front、pop_front,这是vector不具备的。和vector另一点不

2014-08-08 16:16:10 644

转载 C++静态成员变量和静态成员函数

数据成员可以分静态变量、非静态变量两种. 静态成员:静态类中的成员加入static修饰符,即是静态成员.可以直接使用类名+静态成员名访问此静态成员,因为静态成员存在于内存,非静态成员需要实例化才会分配内存,所以静态成员不能访问非静态的成员..因为静态成员存在于内存,所以非静态成员可以直接访问类中静态的成员. 非成静态员:所有没有加Static的成员都是非静态成员,当类被实例化之后,可以

2014-08-07 15:51:58 355

转载 CloseHandle()函数的使用

很多程序在创建线程都这样写的:............ThreadHandle = CreateThread(NULL,0,.....);CloseHandel(ThreadHandle );。。。。。这不是刚好创建又关闭了吗?线程怎么运行呢?================================================Closing a th

2014-08-07 14:04:59 447

转载 error C2664: “MessageBoxW”解决方案

error C2664: “MessageBoxW”: 不能将参数 2 从“const char [8]”转换为“LPCWSTR”1>        与指向的类型无关;转换要求 reinterpret_cast、C 样式转换或函数样式转换 后来经查证是因为字符集问题具体原因问百度吧,我只提供解决方案 解决方案: 选择VS2008的“项目”→“属性”→“配置属性”

2014-08-07 11:03:57 580

转载 Linux和windows下sleep的使用

功 能: 执行挂起一段时间用 法: unsigned sleep(unsigned seconds); 在VC中使用带上头文件  #include 在gcc中,使用的头文件因gcc版本的不同而不同一般来说,linux系统需要添加的头文件为:  #include  在VC中Sleep中的第一个英文字符为大写的"S",在标准C中是

2014-08-06 15:02:07 1357

转载 Windows 下IP点分十进制和网络字节序的转换

博客http://blog.csdn.net/unimen/article/details/6844456给出相关实现,我根据C库的代码,也给出一个:[cpp] view plaincopy#include   #include   #include   #include   #include   #include     

2014-08-06 14:07:27 1518

转载 windows查看进程

在windows命令行窗口下执行:  看到了吗,端口被进程号为2448的进程占用,继续执行下面命令:  很清楚吧,thread占用了你的端口

2014-08-05 13:49:42 327

转载 在Windows7下强制结束进程命令

当前有很多病毒,都通过注入到系统进程的方式,来达到隐藏方式,它们一方面通过伪装自己的名称,让用户一时难以辨别,进而达到迷惑目的,包括伪装成一些系统进程文件等等,一方面通过一些保护方法,使我们无法通过系统自带的任务管理器来强制结束,迫使用户实时处于威胁当中,所以,能否通过其它方法,快速结束这些恶意进程,防止其意外发作和在后台运行呢?答案是肯定的,今天,笔者便为大家介绍如何通过操作系统自带的“命令提示

2014-08-05 13:47:12 2513

转载 Makfile常用的函数

在Makefile中可以使用函数来处理变量,从而让我们的命令或是规则更为的灵活和具 有智能。make所支持的函数也不算很多,不过已经足够我们的操作了。函数调用后,函 数的返回值可以当做变量来使用。 一、函数的调用语法函数调用,很像变量的使用,也是以“$”来标识的,其语法如下:$( ) 或是${ }这里,就是函数名,make支持的函数不多。是函数

2014-08-01 13:37:19 513

转载 Makefile中的选项-I 和-L

makefile中-L 和 -I 编译开关        LIB        =            -L/usr/X11/lib        INCLUDE=          -I/usr/X11/include/X11        LIBS      =          -lX11 -lc -lm  这个 -L 和 -I 开关告诉编译器和链接分别在哪里找到 li

2014-07-31 15:04:11 9322

转载 C++ static、const和static const 以及它们的初始化

const定义的常量在函数执行之后其空间会被释放,而static定义的静态常量在函数执行后不会被释放其空间。static 表示的是静态的。类的静态成员函数,成员变量是和类相关的,不是和类的具体对象相关,即使没有具体的对象,也能调用类的静态成员函数,成员变量。一般的静态函数几乎就是一个全局函数,只不过它的作用域限于包含它的文件中。 在c++中,static静态成员变量不能在类内部初始化。

2014-07-25 16:47:37 378

转载 C++中的this 指针的使用

this指针只能在一个类的成员函数中调用,它表示当前对象的地址。下面是一个例子: void Date::setMonth( int mn ) { month = mn; // 这三句是等价的 this->month = mn; (*this).month = mn; } 1. this只能在成员函数中使用。全局函数,静态函数都

2014-07-25 09:01:48 461

转载 在C++中定义常量

如何在c++中定义常量:     不能在类中初始化const数据成员,因为在类没有被初始化的时候,成员是不存在的。const成员只在某个对象的生存周期中存在的,不同的对象中const成员变量的值不一样。[cpp] view plaincopyclass Const  {      const int SIZE = 100;  

2014-07-24 16:21:29 706

转载 指针函数与函数指针的区别

一、在学习arm过程中发现这“指针函数”与“函数指针”容易搞错,所以今天,我自己想一次把它搞清楚,找了一些资料,首先它们之间的定义:1、指针函数是指带指针的函数,即本质是一个函数。函数返回类型是某一类型的指针     类型标识符    *函数名(参数表)      int *f(x,y); 首先它是一个函数,只不过这个函数的返回值是一个地址值。函

2014-07-18 14:00:23 384

转载 Linux 中select函数的使用

Select在Socket编程中还是比较重要的,可是对于初学Socket的人来说都不太爱用Select写程序,他们只是习惯写诸如connect、accept、recv或recvfrom这样的阻塞程序(所谓阻塞方式block,顾名思义,就是进程或是线程执行到这些函数时必须等待某个事件的发生,如果事件没有发生,进程或线程就被阻塞,函数不能立即返回)。可是使用Select就可以完成非阻塞(所谓非阻塞方式

2014-07-18 10:13:12 674

转载 makefile里PHONY的相关介绍

Phony TargetsPHONY 目标并非实际的文件名:只是在显式请求时执行命令的名字。有两种理由需要使用PHONY 目标:避免和同名文件冲突,改善性能。如果编写一个规则,并不产生目标文件,则其命令在每次make 该目标时都执行。例如:  clean:  rm *.o temp因为"rm"命令并不产生"clean"文件,则每次执行"make clean"的时候,该命

2014-07-17 16:50:12 323

转载 Linux 下Gcc的使用

1简介2简单编译2.1预处理2.2编译为汇编代码(Compilation)2.3汇编(Assembly)2.4连接(Linking)3多个程序文件的编译4检错5库文件连接5.1编译成可执行文件5.2链接5.3强制链接时使用静态链接库1简介GCC 的意思也只是 GNU C Compiler 而已。

2014-07-17 15:40:49 386

转载 指针数组和数组指针的区别

收藏这两个名字不同当然所代表的意思也就不同。我刚开始看到这就吓到了,主要是中文太博大精深了,整这样的简称太专业了,把人都绕晕了。从英文解释或中文全称看就比较容易理解。指针数组:array of pointers,即用于存储指针的数组,也就是数组元素都是指针数组指针:a pointer to an array,即指向数组的指针还要注意的是他们用法的区别,下面举例说明。int* a[4] 指针数组 表

2014-07-15 13:47:26 366

转载 Linux网络编程connect()函数的使用

在一个 CLIENT/SERVER模型的网络应用中,客户端的调用序列大致如下:        socket -> connect -> recv/send -> close        其中socket没有什么可疑问的,主要是创建一个套接字用于与服务端交换数据,并且通常它会迅速返回,此时并没有数据通过网卡发送出去,而紧随其后的connect函数则会产生网络数据的发送,TCP的三次

2014-07-15 11:19:34 989

转载 友元函数、友元类、访问私有数据成员、友元关系

友元函数(friend function)1. 什么是友元函数?    一个类的私有数据成员通常只能由类的函数成员来访问,而友元函数可以访问类的私有数据成员,也能访问其保护成员2. 友元函数的用处体现在哪里?    2.1 使用友元函数可提高性能,如:用友元函数重载操作符和生成迭代器类    2.2 用友元函数可以访问两个或多个类的私有数据,较其它方法使人们更容易理解程序的

2014-07-10 17:07:09 663

转载 C++ enum用法

1、为什么要用enum       写程序时,我们常常需要为某个对象关联一组可选alternative属性.例如,学生的成绩分A,B,C,D等,天气分sunny, cloudy, rainy等等。       更常见的,打开一个文件可能有三种状态:input, output和append. 典型做法是,对应定义3个常数,即:       const int input = 1;  

2014-07-10 16:24:48 395

转载 C++抽象类的概念

一、定义.纯虚函数是在基类中声明的虚函数,它在基类中没有定义,但要求任何派生类都要定义自己的实现方法。在基类中实现纯虚函数的方法是在函数原型后加“=0”virtual void funtion1()=0二、引入原因:1、为了方便使用多态特性,我们常常需要在基类中定义虚拟函数。2、在很多情况下,基类本身生成对象是不合情理的。例如,动物作为一个基类可以派生出老虎、孔

2014-07-07 16:46:10 1110

LoRaWAN规范中文版详细规范V1.0.2

《LoRaWAN-Specification》 是 LoRa 联盟规范的核心协议,该版本中文版比较详细,分享大家学习参考。感谢贡献者IOT小能手iotisan.

2019-01-04

RFC8446_TLS1.3

最新TLS1.3标准英文版文档,详细介绍TLS1.3协议建立原理,及握手过程。

2018-11-09

CC2540 BLE深度培训资料

非常详细的讲述蓝牙内部机制,GATT协议,适合深度学习蓝牙开发人员。

2018-03-16

Shell脚本学习指南

shell脚本学习指南帮助你短时间掌握shell脚本的编程。。

2014-07-03

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

TA关注的人

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