拿仿真SPIS为例: 对于其他外设(UART、SPIM、I2S、I2C...)都是一个道理。 当MCU写时:主要对一个寄存器进行写,此寄存器是外设的入口(基本都会做并转串逻辑)。 spis_tx_data = (i++); 否则MCU不会发起写操作,对应使能信号不会有些,地址也是。 当MCU读时:主...
分类:
其他好文 时间:
2015-01-05 16:13:29
阅读次数:
214
之前写的博客都被移除了,也不知道什么原因,可能是字体太少了,我不喜欢怎么说,直接上源码比较好一点我相信程序员都这样,除非代码难懂就会去解说一下,先看下效果图:看下java代码public class MainActivity extends Activity { private ListView l...
分类:
移动开发 时间:
2015-01-04 18:39:05
阅读次数:
197
在一个 BLE开发项目中,我采用的是TI的CC2541蓝牙BLE SoC,为了防止主从设备连接断开时数据丢失,硬件上加了一个EEPROM,当蓝牙建立连接时,通过Notify发给主机,但当蓝牙连接断开时,采集的数据要存储到EEPROM中(I2C),要实现这一点,需要实时获取蓝牙的连接状态。
在TI的BLE协议栈中,periperal.h中有如下定义:
/**
* GAP Peri...
分类:
其他好文 时间:
2014-12-31 16:16:05
阅读次数:
339
#include "uart.h"#define UART2#define uart_115200 1void Init_UART2(void){#ifdef UART2 UART1_CR1=0x00; UART1_CR2=0x00; UART1_CR3=0x00;#ifdef uart_9600 ...
分类:
其他好文 时间:
2014-12-30 18:28:04
阅读次数:
227
此文翻译至Android API里的Bluetooth Low Energy,希望对大家有所帮助。谢谢。
Android4.3(API版本18)介绍了内置平台支持BLE的中心角色,并且提供了相关API,高大尚的程序员们可以使用这些API来扫描设备、查询服务(指服务端进程)、读写特性值(指特定的字符)。与经典蓝牙不同的是,BLE的设计是为了提供显著的低功耗支持。这使得Android应用可以仅需很低...
分类:
其他好文 时间:
2014-12-29 21:37:30
阅读次数:
542
SN74LVC16T245 是16位双电源总线收发器,可以在两种不同电压的总线间进行转换。Tiny4412采用SN74LVC16T245在CPU与UART之间进行电压转换,CPU的电压为1.8V,而UART为3.3V。
分类:
其他好文 时间:
2014-12-27 15:12:13
阅读次数:
206
最近做一个安卓应用,用蓝牙信号控制一台仪器,通过一个蓝牙转串口的装置,发送蓝牙信号,然后转换为串口命令发送给仪器。蓝牙装置如下:
在写安卓应用中的java代码时,如何获取这个蓝牙设备呢?BluetoothAdapter 的 getRemoteDevice(address) 方法可以通过MAC地址来获取蓝牙设备:
BluetoothDevice device = mBluetoo...
分类:
移动开发 时间:
2014-12-24 20:09:59
阅读次数:
212
2014-12-23
NRF51822项目实战
首先,需要查到蓝牙发送数据的API接口,可能是类似于网络sock的recv()和send()
拿到用户手册,看到可以参考的第一份代码是心率计,ble_app_hrs这个例程。
之前不知道这个例程的功能,一通乱找都没找到,照着用户手册试了下这个例程,很快就知道突破口了,去找那个按键出发的代码,
首先是按键初始化buttons_init...
分类:
其他好文 时间:
2014-12-23 19:30:40
阅读次数:
220