- 博客(10)
- 资源 (8)
- 问答 (1)
- 收藏
- 关注
原创 RabbitMQ消息代理安装及实例
RabbitMQ是一个消息代理,作用就是发送消息和接收消息。MQ是Message Queue的缩写,RabbitMQ服务类似于MYSQL,APACHE服务,只是提供的功能不一样而已,Rabbit MQ是用于提供发送消息的服务,可用在不同应用程序间进行通信。RabbitMQ是用erlang语言写的,所以要先安装erlang依赖。Ubuntu1604上安装:sudo apt-get install r...
2018-05-29 17:56:56 1086
原创 STM32 GPIO口基本结构和工作方式
STM32F103ZET6:共144个引脚,7组IO口,每组16个IO口7*16=12个IO口(这7组IO口分别为GPIOA,GPIOB...GPIOG)例如:PGPIOA包含PA0,PA1,PA2...PA15,每组16个IO口IO口的基本结构和工作方式:1.STM32F1系列IO口基本结构(IO口内部电路结构)右侧IO引脚部分为芯片暴露在外部的引脚,每个引脚在...
2018-05-25 14:55:58 11368
原创 STM32 GPIO复用功能与设置
GPOIO可作为I2C,SPI,USART等通讯接口,这就是所谓的复用功能(alternate function output)。GPIO的复用功能由AFRL及AFRH两个寄存器来设定(因为Cortex Mx为32位CPU,所以每个寄存器有32bits可供控制)。STM32针对每个接口pin设计了16种复用功能(AF0~AF15),因为每个pin占用4个bits,所以每个寄存器管理8个pi...
2018-05-25 14:50:09 47946 5
原创 taskENTER_CRITICAL和taskDISABLE_INTERRUPTS的不同之处
它们之间最大的不同是ENTER/EXIT临界区支持嵌套调用,而Enable/Disable中断则没有支持,因此会出现如下所示情况:在临界区ENTER/EXIT内流程如下:ENTER /* 中断DISABLE */ENTEREXIT /* 此时中断仍然DISABLE */EXIT /* 释放所有的临界区,现在才会中断ENABLE*/但在中断DISABLE内流程则是如下:DI...
2018-05-25 10:48:22 5658
原创 脉冲宽度调节信号PWM
问:我的应用上可利用脉冲宽度调节(Pulse Width Modulation)信号,什么是脉冲宽度调节信号,又有什么用?答:脉冲宽度调节信号是一种通过比特位的方式所产生的类比信号。一个脉冲宽度调节信号包含两个主要参数:工作周期和工作频率。工作周期:表示一个信号周期中逻辑高电平所占的时间百分比。工作频率:表示一个脉冲宽度调节信号能多快完成一个周期,比如,1000HZ的信号每秒会完成1000个周期,...
2018-05-22 10:43:26 7280
原创 光线传感器(Light Sensor)-BOE Shield-Bot
机器人能够通过光线传感器来检测当前环境光线级别,比如,有多亮或多暗,有许多不同类型的光线传感器,包括光敏,光电二极管以及光电晶体管。该传感器包含在BOE Shield-Bot套件中,这里要使用到的是光电二极管。要理解什么是光电二极管,首先要明白什么是二极管。一般来说,一个普通二极管就是一个限制电流的普通元件,它根据通过对另一个引脚施加到自身的电流来限制电流的大小,有集电极,发射极和基极,它控制有多...
2018-05-18 10:33:05 9449
原创 strlen与sizeof的区别
1.strlen()为函数,在运行时计算大小,并且参数必须是字符型指针,若数组为参数,则会退化为指针,它返回的是字符串长度,该长度不包含结束符null2.sizeof()为运算符,在编译时就确定大小,参数可为数组,指针,类型,对象,函数等,因其在编译时就确定大小,所以不能返回动态分配的内存大小,而且它返回的值与所存储的内容无关。各返回类型含义如下:数组:编译时分配的数组空间大小。指针:存储该指针所...
2018-05-14 14:46:29 172
原创 二分查找
非递归方法思想:前提:待查找对象必须是有序,比如一个从小到大或从大到小的数组。设查找起始范围和结束范围分别为start和end,中值为mid,数组为srcArr[]。过程:有序列表中,将待查找值key与查找范围内(start~end)的中值srcArr[mid]作比较,有如下可能:1.待查找值key小于中值srcArr[mid],则将查找范围缩小到0~mid-1。2.待查找值key大于中值srcA...
2018-05-14 14:27:48 537
原创 Go语言范围range
package mainimport "fmt"func main() { //这是我们使用range去求一个slice的和。使用数组跟这个很类似 nums := []int{2, 3, 4} sum := 0 for _, num := range nums { sum += num } fmt.Println("sum:", ...
2018-05-02 16:01:50 154
glfw-3.3.2.bin.WIN64.zip
2020-04-21
套件php 集成最新的Apache+Nginx+LightTPD+PHP+MySQL+phpMyAdmin+Zend Optimizer+Zend Loader
2020-03-12
客户端断开服务端就会产生异常并断开
2018-01-08
TA创建的收藏夹 TA关注的收藏夹
TA关注的人