E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
nrf51822自学记录
STM32F405 DFU更新固件
development:dfuDFU更新模式主要被考虑作为一种恢复模式,它可以下载新的固件到STM32F405中;另外空中下载OTA(OverTheAir)也可以更新固件,相对DFU更方便一些,用这种方法我们也可以更新
nRF51822
xingqingly
·
2015-07-08 14:00
nRF51822
使用Timer制作4路PWM波详解
Date:2015.5.8 Author:杨正 QQ:1209758756 一、 pwm简介PWM英文名叫PulseWidthModulation,中文名叫脉宽调制。那它到底是什么呢?其实它是由定时器产生的,比普通的定时器多了一个比较寄存器。PWM里面有一个词叫占空比,即一个周期内,高电平持续时间与周期的比值。如下图:占空比(dutycycle)=t/T。PWM用途:控制电机
u010979030
·
2015-05-08 17:00
timer
ppi
PWM
蓝牙4.0
gpiote
低功耗蓝牙4.0BLE编程-
nrf51822
开发(11)-蓝牙串口代码分析
代码实例:Board/pca100001/06s110/experimental/ble_app_uart。 实现的功能是从uart口发送数据至另一个蓝牙串口,或是从蓝牙读取数据通过uart打印出数据。 intmain(void) { //Initialize leds_init(); timers_init(); buttons_init(); uart_init();
xgbing
·
2015-04-09 16:00
低功耗蓝牙4.0BLE编程-
nrf51822
开发(10)-描述符
特性中的属性有两种:属性值或描述符。 支持通知或指示的特性中默认有一个描述符:客户端特性配置描述符(ClientCharacteristicConfigurationDescriptor,CCCD)。它的UUID是0x2902。 添加描述符的函数是:uint32_tsd_ble_gatts_descriptor_add(uint16_tchar_handle, ble_gatts_
xgbing
·
2015-04-07 14:00
低功耗蓝牙4.0BLE编程-
nrf51822
开发(9)
Android4.3以后的系统自动支持蓝牙4.0规范的低功耗蓝牙(BLE)。在android4.3之前,蓝牙4.0支持是由手机厂家加入支持的,接口各异,导致开发一个支持蓝牙4.0程序支持市面上的手机很困难。从android4.3以后,系统将统一接口,使得支持大部分手机成为可能。所以与手机或平板联机之前要确认是android4.3及以上的系统。有些旧手机,由于蓝牙硬件是支持BLE4.0,更新厂
xgbing
·
2015-03-20 09:00
低功耗蓝牙4.0BLE编程-
nrf51822
开发(8)-GATT
TheGenericAttributeProfile(GATT)使用属性定义一个服务框架,定义了服务和特性的过程和数据格式,包含发现、读取、写入、通知指示特性和配置特性广播。 GATT配置文件设计用于应用程序和其它配置文件,客户端与服务器通讯时使用它。服务器包含了一系列的特性,GATT配置文件定义了怎么使用属性协议去发现、读取、写入、获得指示和配置特性广播。 配置文件包含了:(1)配置交
xgbing
·
2015-01-27 22:00
JS Base64转码相关知识小结(一)
,于是觉得应该稍微了解以下这个东西,我觉得需要对一下内容进行了解:1.UTF-82.ECMAscript的位运算符 既然问题点出来了,那么就来总结一下今天的
自学记录
首先是感谢tuhaitao的javscriptbase64
Quanta1990
·
2015-01-15 17:00
base64
低功耗蓝牙4.0BLE编程-
nrf51822
开发(7)-SDP服务发现协议
SDP的全称是ServiceDiscoveryProtocol,中文是服务发现协议。SDP(服务发现协议)是蓝牙协议体系中的核心协议,是蓝牙系统重要组成部分,是所有用户模式的基础。在蓝牙系统中.客户只有通过服务发现协议才能获得设备信息、服务信息及服务特征,才能在此基础上建立相互间的连接。通过这个协议,应用程序可以发现哪些服务可用以及服务的特性是什么。 SDP服务器-客户端模型:客户端通过发送
xgbing
·
2015-01-09 23:00
低功耗蓝牙4.0BLE编程-
nrf51822
开发(6)-Battery Service
BatteryService是有关电池特性方面的服务,如果需要它,在初始化时将它加入到蓝牙协议栈。 如果通过ble_bas_battery_level_update(),电池电量将会通知,BatteryService将发送事件到应用程序。(1)BatteryService事件类型/**@briefBatteryServiceeventtype.*/ typedefenum { BLE_BA
xgbing
·
2015-01-07 23:00
低功耗蓝牙4.0BLE编程-
nrf51822
开发(5)-链路层
链路层定义设备处于状态机中五种状态的一种:(1)旁路状态; 处于此状态下的设备不发送或接收数据,处于其它状态下都可以转到此状态。(2)广告状态; 处于此状态的设备发送广播包或者监听、响应广播包。可由旁路状态进入广告状态。(3)扫描状态; 扫描状态监听广播信道上的处于广播状态发送的广播包。扫描状态也由旁路状态进入。(4)发起状态; 处于此状态监听广播信道上的广播包并响应初始化一个连接。
xgbing
·
2015-01-02 22:00
低功耗蓝牙4.0BLE编程-
nrf51822
开发(4)
蓝牙是一种短距离的通讯方式,它设计的意图是取代电子便携设备之间的有线电缆连接。蓝牙的主要特性是健壮性、低功耗、成本低,它工作于免费的2.4无线传输频段。 蓝牙有两种技术系统:基本速率BasicRate (BR)和低功耗LowEnergy(LE)。这两种系统都包括了设备发现、建立连接和连接机制。BR系统包括了EnhancedDataRate(EDR)AlternateMediaAccessCo
xgbing
·
2014-12-24 23:00
NRF51822
项目实战
单片机
NRF51822
的方案在当时的考察中,发现不合适,已经不再继续往下做了。早已替换了方案。这篇博文我也没有时间再去写了,爱莫能助。
lr2131
·
2014-12-23 19:00
低功耗蓝牙4.0BLE编程-
nrf51822
开发(3)
蓝牙协议栈
nrf51822
开发中,蓝牙协议栈和应用开发是分开的。
xgbing
·
2014-12-17 22:00
低功耗蓝牙4.0BLE编程-
nrf51822
开发(2)
首先看的示例是心率计一个示例程序:\ARM\Device\Nordic\
nrf51822
\Board\pca10001\s110\ble_app_hrs\arm。
xgbing
·
2014-12-08 23:00
低功耗蓝牙4.0BLE编程-
nrf51822
开发(1)
买这块之前做了些调查,最终选定了
nrf51822
,功耗低,性能强,开发难度小,虽然比TI的贵一点,但cortex-m0毕竟不错,带256Kflash,16KRam,可以做很多应用开发。
xgbing
·
2014-12-08 23:00
10位ADC
【Unity3D
自学记录
】纯GUI实现Flappy Bird
直接将下面的脚本随意挂在任何GameObject上即可usingUnityEngine; usingSystem.Collections; usingSystem.Collections.Generic; publicclassFlappyBox:MonoBehaviour { privatefloatcStartY; privatefloaty; privatefloatx; privatef
hackdjh
·
2014-12-04 11:00
unity3d
【Unity3D
自学记录
】 Unity 延迟执行一段代码的较为优雅的方式
在unity中,延时执行一段代码或者一个方法或者几个方法的情况非常普遍。一般会用到Invoke和InvokeRepeating方法。顾名思义,第一个是执行一次,第二个是重复执行。看下定义:voidInvoke(stringmethodName,floattime);第一个参数是方法名(注意是字符串形式),并不是更方便的委托。第二个是延时多少秒。只执行一次。voidInvokeRepeating(s
hackdjh
·
2014-12-04 11:00
【Unity3D
自学记录
】纯GUI实现黑白棋
直接将下面的脚本随意挂在任何GameObject上即可usingUnityEngine; usingSystem.Collections; usingSystem.Collections.Generic; publicclassTest:MonoBehaviour { //Usethisforinitialization voidStart() { Restart(); } privatein
hackdjh
·
2014-12-04 11:00
【Unity3D
自学记录
】利用WinRAR的自解压功能单文件发布Unity的PC版本包
Unity打包出来的PC版有一个exe文件,还有一个_Data文件夹,我们可以利用winrar的自解压的高级设置功能打包成一个单文件,然后给这个文件配置一个好看的图标。最终效果就是我们可以获得一个貌似安装程序的单个文件。首先安装一个winrar文件,360压缩神马的目测是没有自解压的高级功能的。第一步:第二步:第三步:第四步:第五步:第六步:(隐藏自解压窗口这一步非必须,看个人爱好啦)第七步:第八
hackdjh
·
2014-11-11 14:00
【Unity3D
自学记录
】网络编程之TCP&UDP的区别
TCP(TransmissionControlProtocol,传输控制协议)是基于连接的协议,也就是说,在正式收发数据前,必须和对方建立可靠的连接。一个TCP连接必须要经过三次“对话”才能建立起来,其中的过程非常复杂,我们这里只做简单、形象的介绍,你只要做到能够理解这个过程即可。我们来看看这三次对话的简单过程:主机A向主机B发出连接请求数据包:“我想给你发数据,可以吗?”,这是第一次对话;主机B
hackdjh
·
2014-11-10 10:00
nRF51822
之BootLoader
nRF51822
之BootLoader一)
nRF51822
程序加载顺序1)SoftDevice加载;2)SoftDevice初始化蓝牙协议栈;3)SoftDevice检查0x10001014处是否保存有有效的
houj
·
2014-11-09 11:00
【Unity3D
自学记录
】解决NGUI触发事件点透问题
在游戏开发或者虚拟现实开发的时候,会有人物操作的功能,点击地面人物进行行走操作,但是再点击界面按钮的时候,点击事件就触发不了了,这样就是点透,当然也有点击界面按钮同时触发了点地面行走的操作,一样也是点透解决方法如下:voidOnClick() { if(UICamera.hoveredObject!=null) { //代码。。 } }其实还有一种方法,通过射线判断,但是我不太喜欢用(个人喜好问题
hackdjh
·
2014-11-03 11:00
unity3d
nRF51822
库函数速查
nRF51822
库函数速查nrf_soc.h//初始化互斥锁 uint32_tsd_mutex_new(nrf_mutex_t*p_mutex); //尝试获取互斥锁. uint32_tsd_mutex_acquire
houj
·
2014-10-28 17:00
【Unity3D
自学记录
】利用代码修改图片属性(Inspector)
这段时间一直都在打包资源,然后每次导入都要改图片的属性,真是麻烦,所以一直在寻找一键修改并且打包的方法。终于让我找到了,太坑人了。根据自己的需求改代码哦,相信大家都能看明白。核心部分:TextureImporterti=(TextureImporter)TextureImporter.GetAtPath(AssetDatabase.GetAssetPath(obj)); ti.textureTyp
hackdjh
·
2014-10-24 11:00
unity3d
【Unity3D
自学记录
】导出切片精灵
假设有一张png/tga图集,导入到Unity,放置目录"Assets/Resources/UI"(UI文件夹可替换成其他的,重要的是要在"Assets/Resources/"路径下),默认为如下设置:为了可以使用Unity自带的精灵切割,要将纹理类型改成"Sprite","SpriteMode"改成"Multiple","Format"改成"Truecolor",点击"Apply"按钮进行应用。
hackdjh
·
2014-10-09 11:00
【Unity3D
自学记录
】Unity3D游戏开发之自由视角状态下的角色控制(一)
在开始今天的内容前,首先让我们来学习下Unity3D中较为重要的一部分知识,理解这些知识是我们开始学习今天内容的基础。 1、Input.GetAxis():该方法用于在Unity3D中根据坐标轴名称返回虚拟坐标系中的值,通常情况下,使用控制器和键盘输入时此值范围在-1到1之间。这段话怎么理解呢?我们来看下面这段脚本:[csharp] viewplaincopyusing UnityEngin
hackdjh
·
2014-10-08 15:00
【Unity3D
自学记录
】Unity3D游戏开发之自由视角状态下的角色控制(二)
在测试Unity3D游戏开发之自由视角状态下的角色控制这个项目的时候意外地发现了一个Bug。Bug出现在如下位置:[csharp] viewplaincopyprint?//设置玩家跟随角度 if(Target.GetComponent().State==NoLockiVew_Player.PlayerState.Walk) { Target.rotation=Quaternion
hackdjh
·
2014-10-08 15:00
【Unity3D
自学记录
】进击的Shader
提要今天要学习的是一些Shader的例子,从简单到难。Let'sgo.一大波例子来袭还是用上一篇用到的工程。点我下载红色的螃蟹Test1.shader[cpp] viewplaincopyShader "Custom/Test1" { SubShader { Tags { "RenderType" = "Opaque" } CGPROGRAM #
hackdjh
·
2014-10-08 15:00
【Unity3D
自学记录
】Unity3D之Url地址重定向(C#)
privatestringurl; //Usethisforinitialization voidStart(){ HttpWebRequestmyHttpWebRequest=(HttpWebRequest)HttpWebRequest.Create("这里填写Url"); myHttpWebRequest.AllowAutoRedirect=false; HttpWebResponsemyH
hackdjh
·
2014-10-08 11:00
nRF51822
使用passkey
nRF51822
使用passkeyBonding with passkey is shown in ble_app_gls in the SDK, so it might be useful to take
houj
·
2014-09-30 16:00
nRF51822
白名单实现
nRF51822
白名单实现staticvoid_advertising_init(uint8_tadv_flags){ uint32_terr_code; ble_advdata_tadvdata; ble_uuid_tadv_uuids
houj
·
2014-09-30 16:00
nRF51822
实现iBeacon基站
nRF51822
实现iBeacon基站typedef__packedstruct{ uint16_tunknown1; uint8_tuuid[16]; uint16_tmajor; uint16_tminor
houj
·
2014-09-30 16:00
NRF51822
之定时器
NRF51822
之定时器一、了解
NRF51822
的定时器是运行在系统的高频率下面的, HFCLK = 16 MHz ,包括一个四位的分频器,用来对HFCLK 进行分频。也就是说,最大16分频。
houj
·
2014-09-30 15:00
OsChina上博客索引
OsChina上博客索引0065-ffmpeg命令行参数0064-
nRF51822
之BootLoader0063-FM收音机芯片TEA57670062-存储器器件选型0061-信号处理器件选型0060-
houj
·
2014-09-30 15:00
【Unity3D
自学记录
】NGUI之UIButtonMessage长按
对UIButtonMessage进行修改voidOnPress(boolisPressed) { if(enabled) { if(((isPressed&&trigger==Trigger.OnPress)|| (!isPressed&&trigger==Trigger.OnRelease)))Send(); } try { if(isPressed) { //按住 } else { //松手
hackdjh
·
2014-09-24 15:00
unity3d
【Unity3D
自学记录
】浏览器调用本地安卓App
通过手机浏览器浏览网页调用本地安卓App1.Html代码 Inserttitlehere 打开App m://my.com/?arg=参数如果不需要参数,改成m://my.com/2.Android程序修改(1)配置文件: (2)程序编写(接受参数)Uriuri=getIntent().getData(); Stringtest1=uri.getQueryParameter
hackdjh
·
2014-09-23 17:00
html
android
安卓
APP
unity3d
【Unity3D
自学记录
】Unity3d高通实现同时识别多个标志
1、首先要可以实现识别多个目标,但是不是同时的,这个应该比较容易,我之前也谢过了一篇教程2、查看ARCamera的Inspector窗口,找到这个脚本选项,打开QCARBehaviour这个脚本,修改其中的 privateintMaxSimultaneousImageTargets=2;再如图所示修改MaxSimultaneousImageTargets为2,勾选下面两个选项。注意:QCAR目
hackdjh
·
2014-09-19 09:00
【Unity3D
自学记录
】Unity3d Virtual Button(虚拟按钮)
一、利用Unity3d进行开发查看这个脚本,是对虚拟按钮的事件进行监听控制。相应地修改按钮的触发事件可以通过这个类进行。[csharp] viewplaincopy// Add the material corresponding to this virtual button // to the active material list: swi
hackdjh
·
2014-09-19 09:00
【Unity3D
自学记录
】Unity3d+VideoPlayback
VideoPlayBack的例子主要功能是实现增强显示视频的效果,这个视频可以是本地资源,也可是网络资源;可以在标志上播放,也可以全屏播放。可用的范围非常广泛,也很有意思。在Unity3d中进行视频增强显示案例时,关于ARCamera的处理跟ImageTarget一样,需要注意的地方有:1、关于应用介绍窗口的设置应用开启之后会有一个窗口显示APP内容,这个主要是这个脚本控制的。其中显示的内容可以在
hackdjh
·
2014-09-19 09:00
【Unity3D
自学记录
】Android应用中嵌入Unity3D视图(展示3D模型)
效果展示: 开篇废话:我现在所在的Team每周需要一个人给大家介绍一个知识点,或者新技术。这礼拜正好轮到我了,由于我工作才一年,面对那帮老鸟讲知识点感觉有点作死。所以我就准备选个新技术介绍一下。由于我在大学里自学过一段时间Unity3D,所以我想介绍的技术就是它,但我现在做的是应用开发,不能做个小游戏去给大家演示。所以我想到比较简单,直观,而且有可能真正能用到的就是在Andro
hackdjh
·
2014-08-22 15:00
unity3d
【Unity3D
自学记录
】Unity3D去掉exe版本的边框
[csharp] viewplaincopyprint?using UnityEngine; using System.Collections; using System.Runtime.InteropServices; using System; public class Test : MonoBehaviour { /// /// 窗口宽度 //
hackdjh
·
2014-08-15 15:00
unity3d
【Unity3D
自学记录
】Unity3D显示NPC名称
usingUnityEngine; usingSystem.Collections; publicclassNPCName:MonoBehaviour{ //主角对象 privateGameObjectplayer; //主摄像机对象 privateCameracamera; //NPC名称 privatestringname="我是NPC"; voidStart() { //根据Tag得到主
hackdjh
·
2014-08-06 11:00
unity3d
【Unity3D
自学记录
】Unity3D网络之Socket聊天室初探
首先创建一个服务端程序,这个程序就用VS的控制台程序做就行了。代码如下:usingSystem; usingSystem.Collections.Generic; usingSystem.Linq; usingSystem.Text; usingSystem.Net.Sockets; namespaceSocketServer { classProgram { constintPort=2000
hackdjh
·
2014-08-04 09:00
unity3d
nrf51822
蓝牙芯片ble_app_proximity程序总结
最近因为钥匙的事情,研究了下官方自带的ble_app_proximity程序,其实就是跟防丢有关系的程序。同时也发现了看nordic程序的一些门道,主要还是看协议栈里面的一些service,首先从宏观上了解了,然后再细看,比如今天我们想做一个跟防丢有关的项目,那完全可以参考proximity这个程序,为什么参考它,那首先看看他们的服务。上位机软件NordicToolbox硬件:AKII,程序:bl
xingqingly
·
2014-08-02 00:00
【Unity3D
自学记录
】MAC&Windows跨平台解析Excel
这几天研究了一个Mac下解析Excel,这东西在Windows下有N种方法可以解析,但是在MAC上基本上都是不兼容的。。后来我无意间找到了一个神器,它可以跨平台解析Excel。。。一般Excel的格式分为两种一种是.xls还有一种是.xlsx,这里我们只说.xlsx。 如下图所示,大家看看我的工程文件,Excel和ICSharpCode.SharpZipLib是第三方开发包(后面我会附带下
hackdjh
·
2014-07-25 11:00
unity3d
【Unity3D
自学记录
】打造网络图片异步加载与本地缓存工具类
我们在移动端的开发中,异步网络图片加载用的非常的多,在unity当中虽然有AssetBundle的存在,一般是先加载好游戏资源然后再进入场景,但是还有不少地方能够用到异步网络图片的加载以及其缓存机制。我之前也写过两个版本的ios中的异步网络图片加载helper类,所以今天按照同样的思路,也想做一个好用的helper类给大家使用以及简单的说下实现原理。首先我们加载一张网络图片,要做的事情分步来讲为:
hackdjh
·
2014-07-23 16:00
unity3d
【Unity3D
自学记录
】Unity3D之自制小钟表
今天来写一个小钟表,其实很简单,就运用到了欧拉角。首先创建时钟、分钟、秒钟以及4个点(12点、3点、6点、9点)偷懒了~~没弄那么多点。时钟、分钟、秒钟这三个父级的中心一定要注意,我们旋转的是父级的欧拉角。(父级的中心在子级的顶点)如图:接下来我们来写代码,如下:usingUnityEngine; usingSystem.Collections; publicclassClock:MonoBeh
hackdjh
·
2014-07-23 15:00
unity3d
【Unity3D
自学记录
】NGUI之多边形碰撞器
导入NGUI(这是废话)第一步:创建一个UIRoot,并创建一个Button第二步:删除Button原来的Box碰撞器,然后添加PolygonCollider2D多边形碰撞器第三步:按住Shift键看到Button的Sprite中间有个绿色的点,然后按住Shift键拖动这些点(自己决定拖成什么样子)备注:按Ctrl键删除点,按住Alt键保持不动(必须按)。
hackdjh
·
2014-07-22 11:00
unity3d
【Unity3D
自学记录
】可视化对比十多种排序算法(C#版)
在这篇文章中,我会向大家展示一些排序算法的可视化过程。我还写了一个工具,大家可对比查看某两种排序算法。下载源码–75.7KB下载示例–27.1KB引言首先,我认为是最重要的是要理解什么是“排序算法”。根据维基百科,排序算法(Sortingalgorithm)是一种能将一串数据依照特定排序方式进行排列的一种算法。最常用到的排序方式是数值顺序以及字典顺序。有效的排序算法在一些算法(例如搜索算法与合并算
·
2014-07-21 13:00
unity3d
nrf51822
中app_button 的应用
ButtonHandler(按键处理程序)按键处理程序是使用GPIOTE(GPIOTaskandEvent)的处理机制实现的,为了防止按键的抖动,在GPIOTEevent(事件)处理程序中开启了定时器。在定时器超时后,按键对应的引脚仍然是有效的(按键一直被按下),按键按下的事件才会报告给应用程序。当定时器正处于运行的过程中,又产生了一个新的GPIOTE事件,定时器会重新启动。另外在APP_BUTT
xingqingly
·
2014-07-20 22:00
上一页
8
9
10
11
12
13
14
15
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他