自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(368)
  • 资源 (49)
  • 论坛 (5)
  • 收藏
  • 关注

原创 Python安装时make install和make altinstall的区别

make altinstall与make install的区别,altinstallskips creating thepythonlink and the manual pages links。altinstall跳过创建python链接和手册页链接的操作。如果使用make install,在系统中将会有两个不同版本的Python在/usr/bin/目录中,这将会导致很多问题。...

2020-09-02 15:25:37 245

转载 USB Type-C引脚排布指南:哪些引脚控制电源传输,数据传输等

您了解USB Type-C连接器吗?本篇文章主要介绍了USB Type-C引脚的排布,并简要介绍了其各种模式。USB Type-C是USB连接器系统的规范,在智能手机和移动设备上越来越受欢迎,并且能够进行电力传输和数据传输。与USB的早些产品不同,它也是可翻转的 - 所以你不需要尝试多次插入。 USB Type-C端口本篇...

2020-07-30 15:05:54 2164 2

转载 USB Type-C Configuration Channel (CC)引脚功能介绍

翻译自: http://kevinzhengwork.blogspot.com/2014/09/usb-type-c-configuration-channel-cc-pin.html1.插入检测DFP(下行端口)为主机端口,UFP(上行端口)为设备端口。如图所示,在DFP中的CC通道上有上拉电阻,相应的在UFP中有对应的下拉电阻。在DFP与UFP连接之前,VBUS没有输出,当两者连接之后,DFP检测到CC引脚的电平被拉低,DFP则识别到UFP设备已连接并打开VBUS上的MOSFET,为UFP设备供

2020-07-30 11:29:31 1328

原创 Glib学习(28) gdbus最简单的例子

官方文档:https://developer.gnome.org/gio/stable/DBus的通信机制是Server-Client模式,Server需要提供一个XML(eg: cn.RTplay.Gdbus.Example.xml)文档给Client端去说明DBus Server提供的interface name、signal name及它的arg name、 type、 direction、method name及它的arg name、 type、 direction。本例程代码:https:

2020-05-21 15:38:57 448

原创 Glib学习(27) dbus编译

最近想学习gdbus,gdbus是对dbus的一种封装,能够更好的使用dbus。DBUS是一种高级的进程间通信机制。DBUS支持进程间一对一和多对多的对等通信,在多对多的通讯时,需要后台进程的角色去分转消息,当一个进程发消息给另外一个进程时,先发消息到后台进程,再通过后台进程将信息转发到目的进程。DBUS后台进程充当着一个路由器的角色。DBUS中主要概念为总线,连接到总线的进程可通过总线接收或传递消息,总线收到消息时,根据不同的消息类型进行不同的处理。https://blog.csdn.net/yishu

2020-05-19 13:55:03 221

原创 Glib学习(26) meson编译glib

从2.59.1版本开始去掉了autoconfig编译工具,改为使用meson构建工程。meson是用Python语言开发的构建工具。Meson 旨在开发最具可用性和快速的构建系统。提供简单但强大的声明式语言用来描述构建。原生支持最新的工具和框架,如 Qt5 、代码覆盖率、单元测试和预编译头文件等。利用一组优化技术来快速变异代码,包括增量编译和完全编译。我体会到使用meson的一个优点是当工程依赖一些库没有时,meson可以到git上自动下载并帮你安装,相比config要好。下面我们来开始进行glib的

2020-05-18 16:08:56 755

原创 四、android studio使用自己库编译工程

这一篇要把我们之前做的库和接口通过jni在android studio中给java调用。接口主要实现了字符串“123456”的MD5输出。1.创建工程将openssl和mylib-sample的库都放到生成的文件夹中arm64-v8a armeabi-v7a x86 x86_64每个文件夹都应该有如下文件libahPlayer.so、libcrypto.so、libssl.so...

2020-04-03 15:38:31 708

原创 三、android编译cmake工程

现在我们需要编译我们自己的程序,我们自己的程序中使用了openssl的函数,这样就形成了一个库引用库的过程,这个通了就基本都通了。1.cmake版本问题如果你使用的cmake版本在3.6.0以上就没有这个问题,如果你使用的低于这个版本当你想要编译的cmake工程时会报错CMake Error at /home/renz/android/AndroidWorkSpace/NDK_Too...

2020-04-01 16:30:51 123

原创 二、NDK交叉编译openssl

1、创建开源模块根目录mkdir AndroidWorkSpace/OpenSourceModule2、openssl源码获取openssl:https://www.openssl.org/source/我做这个的时候最新的是1.1.1eopenssl-1.1.1e.tar.gz进入开源模块目录:cd OpenSourceModule解压到当前目录:tar vzxf o...

2020-04-01 16:04:13 212

原创 一、搭建Android-NDK开发环境

目标:在android app中调用自己的c代码,这个c代码会以动态库的形式存在,并且为了表示更广泛的使用场景,我们的c程序会使用第三方库(openssl),这也是我们开发中经常用的方式。功能:c代码就是将openssl中的MD5直接封装,并以字符串形式输出MD5值。android代码调用jni接口,并将MD5值输出到手机屏幕。对象:新手入门,可以通过本教程一步一步完成整个过程,但是可能会...

2020-04-01 15:17:36 518

转载 【转载】git如何部署公钥

原作者:隔壁老樊啊来源:简书公司换电脑之后,每次提交代码到码云,都要输入git账号和密码,那怎么解决每次都要输入的问题呢。我们可以部署一个公钥。码云提供了基于SSH协议的Git服务,在使用SSH协议访问仓库仓库之前,需要先配置好账户/仓库的SSH公钥。我们在用码云创建完项目之后,如果拉取项目是用HTTPS这种,都是需要密码的。如果是SSH,就不需要密码。配置公钥的目的,就是使用SSH公...

2020-03-21 14:25:15 199

原创 php与linux程序的消息队列通信

概述最近正在设计一些关于PHP与linux程序进行通信的工作,首先php和linux程序一般是不会运行在一个进程里,这样如果需要通信只能是跨进程实现。这里可以使用两种方法,一种是用c语言分别实现通信接口,然后将其中一种编译成php扩展,让php调用,这类自由度比较高,但是有一定难度。还有一种就是直接使用php支持的ipc接口,与其他进程通信。今天我们来研究一下php使用现有的IPC与其...

2020-02-27 14:07:24 116

原创 php扩展php-nano的安装与测试

官网https://nanomsg.org/源码下载https://github.com/mkoppanen/php-nano提前准备你需要已经安装了nanomsg的库,php,和pkg-config,可能还有其他需要的东西,但是我没有遇到,遇到的问题可以留言讨论。nanomsg库的安装方法可以查看另一篇文章https://blog.csdn.net/andylaure...

2020-02-26 14:53:07 129

原创 (12)从1开始写一个操作系统

第十二章Shell移植命令行外壳(shell),提供一套供用户在命令行的操作接口,主要用于调试、查看系统信息。在大部分嵌入式系统中,一般开发调试都使用硬件调试器和printf日志打印,在有些情况下,这两种方式并不是那么好用。比如对于多任务系统,我们想知道某个时刻系统中的任务运行状态、手动控制系统状态。如果有一个shell,就可以输入命令,直接相应的函数执行获得需要的信息,或者控制程序的行为...

2019-09-23 19:25:46 227

原创 (11)从1开始写一个操作系统

第十一章小内存管理因为小内存的限制,不可能使用系统标准的malloc和free,这里介绍3种小内存管理方法。第一种就是预先申请一块大内存。然后使用这个内存来动态分配,并在分配时使用一个头来做分配记录。在使用过程中会出现碎片,也就是会发生不连续的可用内存。当有连续释放的内存是会进行合并。这种方法时最简单的方法也是小内存中最容易实现的,但是有一个致命的缺点就...

2019-09-23 19:08:58 82

原创 (10)从1开始写一个操作系统

第十章任务间同步和通信Inter-Task Communication,任务间通信多任务就会涉及到任务间共享资源的互斥操作和任务间通信。我们所需要完成的是能够提供这些功能的函数,来让用户更好的实现任务间同步和通信。我们将会实现互斥锁、信号量、消息队列以及事件标志。优先级翻转谈到任务间同步的机制就会涉及到优先级翻转的问题。首先说一下什么是优先级翻转。简单从字面上...

2019-09-23 18:58:18 117

原创 (9)从1开始写一个操作系统

第九章任务函数的补充前面讲的代码基本已经把我们的内核全部都实现完了,有一些需要有的函数没有在前面讲到,在这一章我们统一补充一下,让我们的内核更加完善。让出CPU当存在同级优先级任务的时候,任务希望把CPU让给其它同级优先级,担忧不想自己进入非就绪态的时候需要提供一个函数,来实现既能让出CPU,CPU又不改变自己的就绪状态。其实实现起来非常简单,就是任务调度函数,但是我们的void ...

2019-09-23 18:45:11 74

原创 (8)从1开始写一个操作系统

第八章抢占式概念抢占式内核:即当任务正在运行,有一个更高优先级的任务出现时,如果当前内核允许抢占,则可以将当前任务挂起,执行优先级更高的任务。在我们上一章的基础上我们已经做了这个工作。说白了就是在任务创建的时候进行了任务调度,已保证更高优先级的任务能够被及时运行。还有就是在更高优先级从非就绪态到就绪态的时候应该进行任务调度。这个场景是什么呢?比如高优先级的任务进入了sleep态,当sl...

2019-09-22 17:27:32 92

原创 (7)从1开始写一个操作系统

第七章时间片概念时间片轮转调度是一种最古老,最简单,最公平且使用最广的算法。每个任务被分配一个时间段,称作它的时间片,即该任务允许运行的时间。如果在时间片结束时进程还在运行,则CPU将被剥夺并分配给另一个任务。如果任务在时间片结束前阻塞或结束,则CPU当即进行切换。调度程序所要做的就是维护一张任务先后运行的列表,当任务用完它的时间片后,它被插入到列表的前边,后面的任务顺序移动到队列的末尾。...

2019-09-22 17:20:54 70

原创 (6)从1开始写一个操作系统

第六章任务优先级及任务状态到现在为止我们其实已经实现了一些多任务的功能,而且我们也能从中总结出一些状态,比如正在运行,睡眠,挂起,就绪。这些状态都有他们特殊的逻辑,在之后我们还会设计支持时间片的方式,这时候我们只有就绪表就有些不够用了,我们需要在任务控制块中添加任务状态属性。在前面讲到的任务切换逻辑时间上是进行了任务ID从大到小的先后顺序进行调度,这就有点像优先级,只不过优先级与任务I...

2019-09-22 16:06:33 51

原创 (5)从1开始写一个操作系统

第五章这一张我们开始进行任务调度的相关实现,先从最简单的任务调度开始,任务主动释放cpu。主动释放CPU我们需要先准备两个任务,就是要进行这两个任务之间的主动释放,实现任务切换。我们为了观察结果,这里我们使用串口操作,需要把bsp中的串口部分打开。首先修改idle任务,让它在运行时打印一行log,并延时1秒,避免刷屏。void idle_task_0(void){...

2019-09-22 13:01:03 56

原创 (4)从1开始写一个操作系统

第四章任务就绪表我们有任务之后为了方便切换的时候判断需要读取那个任务的属性进行比较,我们就需要任务就绪表来记录哪个任务是就绪的,我们可以通过查表来找到这个就绪的任务。由于就绪表记录的状态只有就绪和未就绪两种,所以我们可以使用1位来表示一个任务的就绪状态。假如说我们有8个任务,那么我们可以使用一个字节表示这8个任务的就绪状态,第0位就是任务0的就绪状态,以此类推。代码中任务就绪表...

2019-09-22 12:48:00 57

原创 (3)从1开始写一个操作系统

第三章真正实现多任务前需要了解的寄存器知识当我们在做中断的时候会进行除了把PC入栈之外的动作,就是会把通用寄存器入栈,这是为什么呢?加入我们正在进行加法运算,使用了ACC寄存器,这时候进入了中断,我们的中断中也使用了ACC寄存器,当中断退出时原来的ACC已经被覆盖了,这样程序就出错了,这种事情在真实情况下是不会发生的。保证这个的方法就是在进入中断前,会把通用寄存器都一一入栈,在退出中断事在...

2019-09-21 20:42:35 65

原创 (2)从1开始写一个操作系统

第二章多任务的原理在开始写操作系统之前需要理解一个问题,一个cpu是如何做到“同时”做多个事情的,比如同一时间又亮灯又检测按键又串口输出。其实它不能,一个cpu在一个时间点只能执行一条指令,无法同时执行多个指令。但是从现象上看又确实是同时进行的,这是因为cpu执行指令比人类快很多,他在人类的一瞬间执行了多个指令,当然,这几个指令实现多个功能的时候就好像在这一瞬间这几个功能在同时执行。好...

2019-09-21 11:14:10 208

原创 (1)从1开始写一个操作系统

第一章前言偶然间使用到了RTX51-tiny做一些东西,它是keil自带的51操作系统,以小巧占用资源少著称,这里不细谈它是如何实现的,反正是一个真正的基于时间片的多任务系统。往往我们在使用单片机做一些东西的时候都比较喜欢前后台的框架,这个方法好处就是整体逻辑简单,就是按循序执行,然后处理中断。缺点就是编程时无法使用任务的思想来划分功能,只能按照逻辑来实现功能,而且对于复杂功能就有点捉...

2019-09-20 22:27:55 246

转载 beyond compare 4 的30天试用期已过-解决方法

转载自:https://blog.csdn.net/Chify_w/article/details/92764707Win7 上用的Beyond compare 4 的30天试用期已过,网上看到很多说法,有的能用,有的没反应。将自己最后成功解决的方法贴上来,供大家参考,共计2步。第一步:删除注册表中CacheID。方法如下:(1)在搜索栏中输入 regedit ,打开注册表。...

2019-08-21 09:16:38 844

原创 (9)CMake入门笔记--同时生成动态库与静态库

在cmake中,同时生成静态库与动态库的时候,需要一些技巧,因为cmake中不能生成同名的静态库和动态库,只能先生成不同名的库之后再把其中一个库的名字改名。# 生成动态库目标add_library(MathFunctions SHARED ${srcs})# 生成静态库目标add_library(MathFunctions_static STATIC ${srcs})# 指定静态库...

2019-08-20 14:07:14 1208

原创 (8)CMake入门笔记--CMake语法

参考地址:https://www.cnblogs.com/binbinjx/p/5626916.htmlhttps://blog.csdn.net/ajianyingxiaoqinghan/article/details/70230902感谢以上两位分享前提1、每一个需要进行cmake操作的目录下面,都必须存在文件CMakeLists.txt 。2、cmake指令不区分大小写...

2019-08-20 09:26:02 265

原创 (7)CMake入门笔记--CMake官网教程

7. 添加对可视化网页的支持添加对将测试结果提交到可视化网页的支持非常简单。 我们已经在本教程的前面步骤中为我们的项目定义了许多测试。 我们只需运行这些测试并将其提交到可视化网页。 要可视化网页的支持,我们在顶级CMakeLists.txt文件中包含CTest模块。# enable dashboard scriptinginclude (CTest)我们还创建了一个CTestCon...

2019-08-15 16:18:39 95

原创 (6)CMake入门笔记--CMake官网教程

6. 构建安装程序接下来假设我们想要将项目分发给其他人,以便他们可以使用它。 我们希望在各种平台上提供二进制和源代码分发。 这与我们之前在安装和测试(步骤3)部分中所做的安装略有不同,步骤3打包的是从源代码构建的二进制文件。 在此示例中,我们将构建支持二进制安装和软件包管理功能的安装包,如cygwin,debian,RPM等中所示。为实现此目的,我们将使用CPack创建特定于平台的安装程序,详...

2019-08-14 11:14:29 58

原创 (5)CMake入门笔记--CMake官网教程

五.添加生成的文件和生成器在本节中,我们将展示如何将生成的源文件添加到应用程序的构建过程中。 对于此示例,我们将创建一个预先计算的平方根表,作为构建过程的一部分,然后将该表编译到我们的应用程序中。 为此,我们首先需要一个生成表的程序。 在MathFunctions子目录中,一个名为MakeTable.cxx的新源文件就是这样做的。// A simple program that buil...

2019-08-13 17:28:28 63

原创 (4)CMake入门笔记--CMake官网教程

四.添加系统内省接下来让我们考虑在项目中添加一些代码,这些代码取决于目标平台可能没有的功能。例如是否具有log和exp函数。 当然,几乎每个平台都有这些功能,但本教程假设它们不太常见。 如果平台有日志,那么我们将使用它来计算mysqrt函数中的平方根。 我们首先使用顶级CMakeLists.txt文件中的CheckFunctionExists.cmake宏测试这些函数的可用性,如下所示:...

2019-08-13 15:37:53 70

原创 (3)CMake入门笔记--CMake官网教程

三. 安装与测试这一步骤中,我们将为项目添加安装规则和测试支持。 安装规则非常简单。 对于MathFunctions库,我们通过将以下两行添加到MathFunctions的CMakeLists.txt文件来设置库和要安装的头文件:install (TARGETS MathFunctions DESTINATION bin)install (FILES MathFunctions.h D...

2019-08-13 15:17:22 84

原创 (2)CMake入门笔记--CMake官网教程

二. 添加库现在我们将为我们的项目添加一个库。 该库将包含我们自己的实现,用于计算数字的平方根。 然后,可执行文件可以使用此库而不是编译器提供的标准平方根函数。 在本教程中,我们将把库放入一个名为MathFunctions的子目录中。 它将包含以下一行CMakeLists.txt文件:add_library(MathFunctions mysqrt.cxx)源文件mysqrt.cxx...

2019-08-13 14:25:45 59

原创 (1)CMake入门笔记--CMake官网教程

CMake官网提供的入门教程。CMake官网教程地址:https://cmake.org/cmake-tutorial/一. 基本开始1. 基本项目构建最基本的项目是从源代码文件生成的可执行文件。 对于简单的项目,只需要两三行CMakeLists.txt文件。 这将是我们教程的开始。 CMakeLists.txt文件如下所示:cmake_minimum_required (V...

2019-08-13 14:06:58 285

原创 (13)香橙派+apache2与php+天猫精灵=自建平台语音支持--duerOS对接

这篇主要总结一下小度音箱的对接方法,答题流程与天猫精灵一样,只是php稍有不同,我也会把php源码上传,需要的可以下载,流程与天猫精灵的php文件大体相同,只是其中的细节稍有差异。php文件链接:https://download.csdn.net/download/andylauren/11422327下面的大部分在dueros文档中都能找到,我只是将比较重要的部分提取出来。智能家居设...

2019-07-24 19:18:37 349

原创 Glib学习(25) 数据校验和 Data Checksums

glib源码下载:http://ftp.gnome.org/pub/gnome/sources/glib/glib帮助文档:https://developer.gnome.org/glib/Includes#include <glib.h>#include <glib/gi18n.h>描述GLib提供了一个通用API,用于计算任意字节序列的校验和(或“摘要...

2019-07-03 16:59:51 259

原创 Glib学习(24) Base64编解码 Base64 Encoding

glib源码下载:http://ftp.gnome.org/pub/gnome/sources/glib/glib帮助文档:https://developer.gnome.org/glib/以Base64格式对数据进行编码和解码Includes#include <glib.h>#include <glib/gi18n.h>描述Base64是一种编码,...

2019-07-01 15:53:27 640

原创 Valgrind学习总结

Valgrind查找内存泄露利器Valgrind是一个GPL的软件,用于Linux(For x86, amd64 and ppc32)程序的内存调试和代码剖析。你可以在它的环境中运行你的程序来监视内存的使用情况,比如C 语言中的malloc和free或者 C++中的new和 delete。使用Valgrind的工具包,你可以自动的检测许多内存管理和线程的bug,避免花费太多的时间在bug寻找上...

2019-06-24 11:00:51 24522

原创 Glib学习(23) IO通道 IO Channels

glib源码下载:http://ftp.gnome.org/pub/gnome/sources/glib/glib帮助文档:https://developer.gnome.org/glib/IO通道 - 可移植的支持使用文件,管道和套接字Includes#include <glib.h>描述GIOChannel数据类型旨在提供一种可移植的方法,用于使用文件描述符,管...

2019-06-06 16:45:14 1775

3.3 V与 5V连接问题技巧大全

技巧和诀窍简介 技巧#1:使用LDO稳压器,从5V电源向3.3V系统供 电..................................................................4 技巧#2:选择方案:采用齐纳二极管的低成本供电系统 ......................................................................6 技巧#3:选择方案:采用3个整流二极管的更低成本供 电系统...........................................................8 技巧#4:使用开关稳压器,从5V电源向3.3V系统供 电................................................................10

2013-12-16

fatfs1.0官方源码

Added selection of character encoding on the file STRF ENCODE Added f closedir Added forced full FAT scan for f getfree FS NOFSINFO Added forced mount feature with changes of f mount Improved behavior of volume auto detection Improved write throughput of f puts and f printf Changed argument of f chdrive f mkfs disk read and disk write Fixed f write can be truncated when the file size is close to 4GB Fixed f open f mkdir and f setlabel can return incorrect error code ">Added selection of character encoding on the file STRF ENCODE Added f closedir Added forced full FAT scan for f getfree FS NOFSINFO Added forced mount feature with changes of f mount Improved [更多]

2013-12-16

51下的UcosII代码

51下的UcosII代码,ucos版本2.00,已经跑通,中断可能要改改。

2013-12-16

诺基亚1110显示屏引脚排列

NOKIA 1110为黑白屏,96X68像素.驱动芯片:STE2007,支持多种接口,但此模块只引出3线串行接口.接口和6100基本一样,差别在于引脚位置不同.

2013-07-28

电容式触摸按键的设计与实现(软件部分).doc

当今,自动化控制系统已经在各行各业得到了广泛的应用和发展,在便携式媒体播放器和移动手持终端等大容量、高可视性产品的应用中,触摸式按键作为一种接口技术已被广泛采用。由于具有方便易用,时尚和低成本的优势,越来越多的电子产品开始从传统的机械按键转向触摸式按键。

2013-07-28

MyApplicationC1.zip

在android app中调用自己的c代码,这个c代码会以动态库的形式存在,并且为了表示更广泛的使用场景,我们的c程序会使用第三方库(openssl),这也是我们开发中经常用的方式。

2020-04-02

mylib-sample.zip

可以使用ndk进行编译的例子工程。程序中使用了openssl的函数,这样就形成了一个库引用库的过程,这个通了就基本都通了。

2020-04-01

从1开始写一个操作系统.pdf

使用一个STC15W56S4的板子,而且STC还提供了外设的库,我们可以直接拿来作为bsp使用。我使用的是keil5。一个支持时间片和优先级的抢占式实时系统。支持动态内存。这个系统支持任务间通讯,至少要支持信号量,最好能够支持消息队列和共享内存,并且最好能提供一种广播方式。提供一个友好的shell工具。

2019-09-26

RT-OSforSTC15W.zip

从1开始写一个操作系统 教程源码,使用一个STC15W56S4的板子,而且STC还提供了外设的库,我们可以直接拿来作为bsp使用。我使用的是keil5。一个支持时间片和优先级的抢占式实时系统。支持动态内存。这个系统支持任务间通讯,至少要支持信号量,最好能够支持消息队列和共享内存,并且最好能提供一种广播方式。提供一个友好的shell工具。

2019-09-22

CMake官网教程中的工程

CMake入门笔记--CMake官网教程中的工程,可以在有cmake的环境下直接进行编译,运行。注释详细,方便学习。

2019-08-20

dueros.zip

在与小度智能音箱对接时需要使用的php代码,这套代码是完全可以运行的,稍加改动就可以使用,但是距离实际应用还差很多,这个代码只是初期学习阶段使用。

2019-07-23

天猫精灵对接php源码

在与天猫精灵对接时需要使用的php代码,这套代码是完全可以运行的,稍加改动就可以使用,但是距离实际应用还差很多,这个代码只是初期学习阶段使用。

2019-01-27

博客使用代码

博客中提到的代码例子,上传原始文件,方便学习使用。

2018-11-18

nanomsg-1.1.4.tar.gz

nanomsg是一个套接字库,提供了几种常见的通信模式。 它旨在使网络层快速,可扩展且易于使用。 在C中实现,它适用于各种操作系统,没有进一步的依赖性。

2018-09-22

libcyaml-master.zip

用于读写YAML的C库。它使用ISO C11编写,并根据ISC许可进行许可。

2018-09-22

线程消息队列

所谓线程消息队列,就是一个普通的循环队列加上“多生产者-单(多)消费者的存/取操作”。流水线方式中的线程是单消费者,线程池方式中的线程是多消费者。

2018-09-16

inirw源码文件

主要特点: 1、支持;和#注释符号,支持行尾注释。 2、支持带引号'或"成对匹配的字符串,提取时自动去引号。引号中可带其它引号或;#注释符。 3、支持无section或空section(名称为空)。......

2018-09-16

nxjson源码文件

用C编写的非常小的JSON解析器,从以null结尾的字符串解析JSON,易于使用的树遍历API。

2018-09-16

libxml2源码文件

Libxml2是为Gnome项目开发的XML C解析器和工具包(但可以在Gnome平台之外使用),它是MIT License下的免费软件。

2018-09-16

rtlist源码

从linux内核中提取出来的链表实现,在我的博客中有说明,其中有例子程序。

2018-08-31

香橙派烧写系统工具

香橙派烧写系统工具,烧写ubuntu以及armbian等系统所使用的U盘格式化以及镜像工具。

2018-06-25

shell扫雷脚本

shell写的扫雷游戏脚本,ujhk分别是上下左右,a是确认,在ubuntu12测试通过

2017-04-03

shell俄罗斯方块脚本

用shell写的俄罗斯方块脚本,ubuntu12测试通过

2017-04-03

shell猜数字脚本

用shell写的猜数字脚本,在ubuntu12下运行通过

2017-04-03

makefiledemo

makefile递归例程,我的csdn博客有详细说明和使用方法。

2016-11-30

NppAStyle_bin.zip

下载后打开这个压缩文件,有两个文件夹ansi和unicode(ansi是标准编码,支持语言少;unicode是通用编码,支持更多的语言)。打开unicode文件夹,将NppAStyle.dll放置到Notepad安装目录下的plugins文件夹下。 重启Notepad。 配置NppAStyle,点击菜单栏中的"插件"--->"NppAStyle"--->"options",在代码风格中选择java。

2016-08-15

openssl-0.9.8e.tar.gz

openssl-0.9.8e.tar.gz 官方源码,未做任何改动。

2016-08-07

wpa_supplicant-0.7.3.tar.gz

wpa_supplicant-0.7.3.tar.gz官方源码文件,未做任何改动。

2016-08-07

rt2870.bin

rt2870.bin,linux内核在使用RT5370无线网卡时需要的固件文件。

2016-08-07

MT7601U驱动源码

MT7601U驱动源码,可在ubuntu,可移植到嵌入式,在我的博客中有详细过程。

2016-07-25

QTmaketarget

提取编译好的QT文件脚本。

2016-07-22

MinGW 4.4,qt使用

MINGW4.4,qt在windows下使用的mingw文件。

2016-07-22

qt4.8.5编译文件

qt4.8.5编译好的文件,使用的是ok6410官方提供的3.0.1内核, arm-linux-gcc-4.3.2.tgz编译。

2016-07-22

tslib交叉编译好的文件

tslib交叉编译好的文件,是ok6410官方3.0.1内核, arm-linux-gcc-4.3.2.tgz编译好的文件。

2016-07-22

RT5370驱动源码

RT5370的驱动源码,可以在linux下进行移植编译,已经验证成功,可以在我的博客了解移植过程。

2016-07-20

sqlite-autoconf-3130000.tar.gz

sqlite-autoconf-3130000.tar.gz

2016-05-22

glib-2.22.5.tar.gz

glib-2.22.5.tar.gz库代码

2016-05-22

libffi-3.2.1.tar.gz

libffi库源代码

2016-05-22

fs4412_led_kernel.zip

FS4412开发板led驱动程序,在fs4412内核移植实验中的配套程序。

2016-05-21

FS4412系统移植实验手册-内核移植.pdf

FS4412系统移植实验手册-内核移植

2016-05-21

andylauren的留言板

发表于 2020-01-02 最后回复 2020-01-02

无法发表博文,提示 无法保存,请稍后重试

发表于 2017-04-01 最后回复 2019-12-13

ucos-ii任务调度时间和任务执行时间的关系问题

发表于 2012-11-13 最后回复 2017-04-01

求:vb鼠标停留弹出提示的插件

发表于 2010-04-24 最后回复 2012-11-13

bv里面的image如何对鼠标左右键分别相应

发表于 2010-04-22 最后回复 2012-11-13

空空如也

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

TA关注的人 TA的粉丝

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