自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 收藏
  • 关注

原创 JavaScript版CRC-16算法

JavaScript版CRC-16算法(微信小程序)module.exports = (function () { const crctab16 = new Uint16Array([ 0x0000, 0xCC01, 0xD801, 0x1400, 0xF001, 0x3C00, 0x2800, 0xE401, 0xA001, 0x6C00, 0x7800, 0xB401, 0x5000, 0x9C01, 0x8801, 0x4400, ]); // calculate the 16-bit

2020-06-08 12:00:02 3595 1

原创 将一个三个字节的十六进制数倒过来取高八位低八位中间八位

Byte byteData[3] = {}; int right,mid,left; int i = 7912789;//0X78BD55 byteData[0] =(Byte)(right = (i) & 0x0000ff); // 取低8位 221 0xDD byteData[1] =(Byte)(mid = ((i) & 0x00ff00) >>8);//取中间八位 byteData[2] =(.

2020-05-22 11:57:43 1713

原创 iOS开发 -- 蓝牙版本

一、蓝牙4.0 (2010年6月30日发布)速度:支持1Mbps数据传输率下的超短数据包,最少8个八位组(字节?),最多27个(字节?)。所有连接都使用蓝牙2.1加入的减速呼吸模式(sniff subrating)来达到超低工作循环。跳频:使用所有蓝牙规范版本通用的自适应跳频,最大程度地减少和其他2.4GHz ISM频段无线技术的串扰。主控制:更加智能,可以休眠更长时间,只在需要执行动作的时候才唤醒。延迟:最短可在3毫秒内完成连接设置并开始传输数据。范围:提高调制指数,最大范围可超过100米(根据

2020-05-21 15:09:07 1437

原创 蓝牙数据传输 生成CRC16 checksum校验码的函数

-(uint16_t)hx_CRC16:(Byte *)sendBuf length:(uint16_t)len{ uint wCRCTalbeAbs[] = { 0x0000, 0xCC01, 0xD801, 0x1400, 0xF001, 0x3C00, 0x2800, 0xE401, 0xA001, 0x6C00, 0x7800, 0xB401, 0x5000, 0x9C01, 0x8801, 0x4400, }; uint16_t wCRC =0xFFFF;

2020-05-19 15:44:02 852

原创 蓝牙数据传输 按通讯格式发送数据包

-(void)send_data:(uint8_t *)subdata length:(UInt16)datalen { uint16_t checksum, sendLenth; uint8_t sendBuf[300]; sendBuf[0] = 0x55; memcpy(&sendBuf[3], subdata, datalen); sendLenth = datalen + 5; sendBuf[1] = sendLenth & 0xF

2020-05-19 15:42:29 1956

原创 蓝牙分包发送数据 在包前面加上包头

int BLE_SEND_MAX_LEN = 256; for (int i = 0; i < [msgData length]; i += BLE_SEND_MAX_LEN) { // 预加 最大包长度,如果依然小于总数据长度,可以取最大包数据大小 if ((i + BLE_SEND_MAX_LEN) < [msgData length]) { NSString *rangeStr = [NSString stringWithFo

2020-05-19 15:40:31 1620

原创 小程序this.setdata is not a function或者that.setdata is not a function

that.setdata is not a function中的setData,D要为大写应该是that.setData is not a function发现错误之后真是哭笑不得,这么简单的错误而导致程序没有响应,所以敲代码时一定要严谨仔细认真

2020-05-11 11:47:29 657 1

原创 你所不知道的“foo”和“bar”

流传在文档间的程序员默契“foo” 和“foobar”等单词经常会作为示例名称出现在各种程序和技术文档中。据统计,在各种计算机和通信技术文档中,大约有百分之七的文档出现了这些词语。可是这些文件都没有为它们给出合适的解释。虽然这不是个大问题,但对于初学者,尤其是母语非英语的人来说,这些单词往往会带来不小的迷惑。“foo” 一词最早出现在一些二战前的漫画和卡通作品中。在关于消防队员的漫画“Smok...

2020-05-04 15:35:55 776

原创 OC中__kindof的用法

简介__kindof是苹果声明的一个新特性,它是和Nullability Annotations 以及Generics 一起在xcode7中出现的。本文将对它进行详细介绍:使用方法假如我们声明了如下属性:@property (nonatomic, strong) NSArray *viewCollection;看属性名我们会认为它是元素为UIView的数组,但这只是猜测,它并不能保证这个...

2020-05-04 11:51:51 209

原创 iOS-设置导航栏

UINavigationBar *navi = [[UINavigationBar alloc] initWithFrame:CGRectMake(0, 20, [UIScreen mainScreen].bounds.size.width, 44)];UIBarButtonItem *myButton = [[UIBarButtonItem alloc] in...

2020-04-28 10:50:47 288

原创 Android中的Handle是什么?

一.什么是HandlerHandler是Android给我们提供用来更新UI的一套机制,是一套消息处理机制,可以通过它来发送消息和处理消息。那作为开发者的我们,不禁会疑问?Google为什么要设计这套机制呢?这是为了解决在非UI线程中更新UI组件比较麻烦的问题。那么Android为什么不能在非UI线程中更新呢?首先Android的UI控件不是线程安全的,这是因为避免多线程并发所带来不安全问题。例...

2020-03-12 16:13:35 603

原创 为什么要配置环境变量?

问题:为什么要配环境变量?配环境变量解决了什么?环境变量是在操作系统中一个具有特定名字的对象,它包含了一个或者多个应用程序所将使用到的信息。通俗理解为:一些被指定的文件夹路径,目的是为了更快速方便的找到想要的文件和文件夹。环境变量相当于给系统或用户应用程序设置的一些参数,比如path,是告诉系统,当要求系统运行一个程序而没有告诉它程序所在的完整路径时,系统除了在当前目录下面寻找此程序外,还应到...

2020-03-06 15:57:24 1431

原创 Android中的final和static关键字

static 修饰符 作用(静态的只能访问静态的)static表示静态的,可以用来修饰成员变量和方法,也可以形成静态代码块。被static修饰的成员变量和方法独立于该类的任何对象,也就是说不依赖类特定的实例,被类的所有实例共享。static优先于对象存在,因为static成员随类的加载就已经存在了。1.static修饰变量:被static修饰叫做静态变量或者是类变量; 没有被修饰的叫做实例变...

2020-03-05 11:21:17 850

原创 Android中的bean是什么?

简单的讲就是可重用 Java 组件,将它们组合起来使用就可创建出 Java 应用程序。Java Bean 是一种组件,它在内部有接口或有与其相关的属性,以便不同人在不同时间开发的 Bean 可以询问和集成。可以构建一个 Bean,而在以后构造时将其与其它 Bean 绑定。这种过程提供了先构建,然后重复使用的方法,这就是组件的概念。可以将这种单一应用程序部署成独立程序、ActiveX 组件或在...

2020-03-04 17:49:44 3048

空空如也

空空如也

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

TA关注的人

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