ws2812b RGB灯工作时乱闪的问题

这两天心血来潮买了两块ws2812b的灯板来玩,宣传16w色全彩RGB,十分炫酷。买的两种板子都是同样的灯,区别在于一个是44一个是88的。 首次写好44的程序,接好电路5v供电,闪瞎狗眼,赶紧换到3.3v,也能够正常完美地工作,44的灯板测试完毕,再测试88的。由于ws2812b相当于一种另类的“串行”设备,而且只需要一个io口控制,这也就决定了程序上不用太大改动(详见数据手册),甚至88的可以直接用4*4的程序驱动(因为本质上是一串16或一串64个灯的灯条),只是只能控制前16个灯罢了。
分类: 其他 发布时间: 03-08 22:51 阅读次数: 0

stm32外设的使能,失能,复位的区别

首先明确的是,在STM32中所有外设正常工作的前提是使能了相应的外设,有的可能只用使能一个(如GPIO),有的使能两个(如GPIO和USART),有的可能需要使能三个(如GPIO,AFIO,TIM)。总而言之,只有使能了外设时钟外设才能工作。 所以外设使能实际使能的是外设的时钟,而与之相应的外设失能也是使外设时钟失能。外设失能后配置外设是没有作用的除非重新使能。 与以上两个不同的是外设复位,它是通过改变外设的复位寄存器来实现复位功能的,所以并不会去改变外设的时钟状态,再次使用这个外设不需要重新
分类: 其他 发布时间: 03-08 22:51 阅读次数: 0

关于GPIO不输出高低电平的一种可能情况

如果是从GPIO输入直接复制过来改成输出模式的情况,请一定记得加上配置输出速度。 GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; //IO口速度为50MHz,也可以是10M,2M 血与泪的教训。
分类: 其他 发布时间: 03-08 22:51 阅读次数: 0

中移物联网入门记录(1)

中国移动之前搞了个活动可以申请STM32的物联网开发板,心痒申请了一下,虽然最后没有申请到但是从学长那里白嫖了一块麒麟座MINI开发板,主控STM32F103CBT6,板载SH120,ESP8266和CH340。个人觉得这块板子设计的作用就是用来实现本地数据上传到OneNet平台的,所以资源较少也很正常。 1.完成的的OneNet平台的注册等等,这个在申请板子的时候就做过了就不提了。 2.添加产品概况 这步主要确定接入OneNet的设备的网络通信协议,我选择HTTP。设置好后会生成一个Mars
分类: 其他 发布时间: 03-08 22:51 阅读次数: 0

windows10安装Elasticsearch-RTF

版权声明:本文为博主原创文章,未经博主允许也可以转载。 https://blog.csdn.net/Alen_xiaoxin/article/details/81265483 安装java8以上运行环境 本人win10,64位,到oracle官网下载java对应sdk安装版本,直接运行安装后提示错误代码1335,换了好几个版本都是这个错误,因为我不是java开发也就没有去解决这个问题,就单独安装jre,成功安装,配置完毕环境变量,运行无误,环境变量的JAVA_HOME一定要指导jre安装目录。
分类: 其他 发布时间: 03-08 22:51 阅读次数: 0

深入剖析 Web 服务器与 PHP 应用之间的通信机制 – 掌握 CGI 和 FastCGI 协议的运行原理

原文链接:http://blog.phpzendo.com/?p=430 身为一名使用 PHP 语言开发后端服务的程序猿,我们每天都和 PHP 以及 Web 服务器产生无数次的亲密接触。得益于它们,我们才能够如此快速的构建出令人陶醉的 Web 产品。 尽管我们已经和 Web 服务器和 PHP 建立起深厚的友谊,但你知道它们之间为何能够配合的如此默契么? 这一切都需要从 CGI(Common Gateway Interface:通用网关接口)协议说起。但是请不要对 CGI 协议产生任何的恐惧心理
分类: 其他 发布时间: 03-08 22:51 阅读次数: 0

PHP创建对象的六种方式

<?php /** * PHP创建对象的六种方式 */ class Person{ private $name = 'bruce'; public function getName(){ return $this->name; } public static function getObjBySelf(){ return new self(); } //动态延迟绑定,能识别调用者
分类: 其他 发布时间: 03-08 22:51 阅读次数: 0

动画+原理+代码+优化,解读十大经典排序算法

文章出处:点击查看文章出处 排序算法是《数据结构与算法》中最基本的算法之一。 排序算法可以分为内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存。常见的内部排序算法有:插入排序、希尔排序、选择排序、冒泡排序、归并排序、快速排序、堆排序、基数排序等。用一张图概括: 关于时间复杂度: 1、平方阶 (O(n2)) 排序 各类简单排序:直接插入、直接选择和冒泡排序。 2、线性对数阶 (O(nlog2n)) 排序 快
分类: 其他 发布时间: 03-08 22:51 阅读次数: 0

PHP中高级面试题2018(1)

来源:点击查看文章来源 一 算法 基本排序算法要会写,时间复杂度要会推算, 主要是冒泡排序, 快速排序, 选择排序. 查找算法,要会写二分查找法, 实际场景要会应用. 实例算法思路要明白,基本算法看多了, 我觉得是几种思路的变换, 需要自己领悟. 面试中考过: 猴子选大王 斗地主项目设计 实现随机函数 字符串中元素各种变形查找 123456 六个数放到三角形三个顶点及中点上,使每条边上的数字和相等 一个超大文件里面存放关键,统计每个关键的个数, 问如何实现 一个10G的文件,里面存放关键字,
分类: 其他 发布时间: 03-08 22:51 阅读次数: 0

PHP设计模式之装饰者模式代码实例

定义: 装饰者模式就是不修改原类代码和继承的情况下动态扩展类的功能。传统的编程模式都是子类继承父类实现方法重载,使用装饰器模式,只需添加一个新的装饰器对象,更加灵活,避免类数量和层次过多。 角色: Component(被装饰对象基类) ConcreteComponent(具体被装饰对象) Decorator(装饰者基类) ContreteDecorator(具体的装饰者类) //被装饰者基类 interface Component { public function operation(
分类: 其他 发布时间: 03-08 22:51 阅读次数: 0

PHP设计模式——装饰器模式(decorator)

使用装饰器模式设计类的目标是:不必重写任何已有的功能性,而是对某个基类应用增量变化。装饰器模式采用这样的构建方式:在主代码流中应当能够直接插入一个或多个更改或“修饰”目标对象的装饰器,同时不影响其他代码流。 代码示例: 在这个示例中,应用程序对光盘进行处理。应用程序必须具有对CD光盘添加音轨的方法,以及显示CD音轨列表的方式。 class CD { public $trackList; public function __construct() { $this->trackList
分类: 其他 发布时间: 03-08 22:51 阅读次数: 0

linux进程后台运行的几种方式

Ctrl+z/bg/nohup/setsid/& 在Linux中,如果要让进程在后台运行,一般情况下,我们在命令后面加上&即可,实际上,这样是将命令放入到一个作业队列中了: 1 2 # ./rsync.sh & # jobs 对于已经在前台执行的命令,也可以重新放到后台执行,首先按ctrl+z暂停已经运行的进程,然后使用bg命令将停止的作业放到后台运行:bg %1,放回前台运行:%1。 但是如上方到后台执行的进程,其父进程还是当前终端shell的进程,而一旦父进程退出,则会发送hang
分类: 其他 发布时间: 03-08 22:51 阅读次数: 0

Linux系统负载升高排查思路

系统负载(System Load):系统CPU繁忙程度的度量,即有多少进程在等待被CPU调度。 平均负载(Load Average):一段时间内系统的平均负载,这个一段时间一般取1分钟、5分钟、15分钟。 可以使用top或w命令进行查看 系统的最大负载一般受一下因素影响: 1.带宽 一个系统的带宽首先就决定了这个系统的负载能力,其单位为Mbps。 2.硬件配置 CPU频率和核数、内存大小以及速度、硬盘速度等硬件指标决定了一个系统的最大负载能力,也是上限。 3.系统配置 系统最大打开文件描述符数
分类: 其他 发布时间: 03-08 22:51 阅读次数: 0

PHP的Session机制

客户端浏览器和服务器之间通信使用的http协议是一种无状态的协议,在它看来,客户端发起的每个请求都是独立、没有关联的。然而,在实际的Web应用开发中,服务器却经常需要根据用户以往的一些状态或数据对请求做出相应的应答,所以需要记录用户的某些状态或数据。Session就是用于保持客户端请求和服务器应答之间的上下文联系,本文主要介绍PHP的Session机制。   PHP的Session机制的工作过程大致是这样子的:当客户端浏览器向服务器发起一个请求的时候,服务器会检查请求数据包头部中的“Cooki
分类: 其他 发布时间: 03-08 22:51 阅读次数: 0

Redis数据结构介绍及应用场景及基本命令

版权声明:本文为博主原创文章,未经博主允许也可以转载。 https://blog.csdn.net/Alen_xiaoxin/article/details/88316895 一、string--字符串 介绍: 字符串类型实际上可以是字符串 (简单的字符串、复杂的字符串(xml、json)、数字(整数、浮点数)、二进制(图片、音频、视频)), 但最大不能超过512M。String 数据结构是简单的 key-value 类型,value 不仅可以是 String,也可以是数字(当数字类型用 Lo
分类: 其他 发布时间: 03-08 22:51 阅读次数: 0

Bug终结者之Reveal的使用

首先下载一个软件Reveal; 安装好之后是这样的。 : 打开咱自己的项目 运行一遍,然后打开咱刚刚下载的那个软件, 点击Help进去 然后把Reveal.framework导入到工程项目里面,再次运行一下,就会出现如下界面,这样,整个工程的层次都展示在你的眼前,可以很清楚的看到里面的内容,在右边还可以直接修改大小等设置。
分类: 其他 发布时间: 03-08 22:51 阅读次数: 0

通用技术 mysql 亿级数据优化

无意中看到,觉得写的不错,搜索了另外一篇文章,把以下两篇文章合并(没有实践调查),以备需要时查询 https://blog.csdn.net/zhanglingge/article/details/48414419 https://www.toutiao.com/a6594314336913588743/?tt_from=weixin&utm_campaign=client_share&wxshare_count=1&timestamp=1535418075&app=news_article&
分类: 其他 发布时间: 03-08 22:51 阅读次数: 0

功能测试报告的编写

转自大佬 http://www.cnblogs.com/xunmi/archive/2011/08/18/2144745.html 测试报告是测试人员在测试过程中用于反映测试状况的文档,其重要性通过网上哀求、跪求、旋转360度冰天雪地各种求测试报告模块的帖子中就可见一斑。其实测试报告的内容基本都是模板的那些,只是在实际测试过程中,如何去整理内容结构,使得报告的通常阅读者:开发人员、测试经理、产品经理、项目负责人能够一目了然地查看想要了解的内容才是测试报告最值得注意的地方。 产品要想有广阔的市场
分类: 其他 发布时间: 03-08 22:51 阅读次数: 0

Adb Monkey 心得

连接手机 adb connect 192.168.0.197(connect后面跟得是手机的ip地址) 查看包名 pm list packages 运行monkey adb shell monkey -p 程序包 -v 测试次数 停止monkey 1、adb shell 2、ps | grep monkey 3、kill +id adb reboot(重启手机) 查看问题 全局搜索 ANR 查看 无响应问题 全局搜索 Exception 查看崩溃问题 持久更新
分类: 其他 发布时间: 03-08 22:51 阅读次数: 0

java 把所有的水仙花数打印在控制台

第一种:直接for循环的 第二种:调用函数
分类: 其他 发布时间: 03-08 22:51 阅读次数: 0