- 博客(19)
- 收藏
- 关注
原创 STM32 USART1 USART2 UART3配置 接收函数和发送函数
STM32F10x系列,串口1、串口2、串口3配置以及中断函数、接收数据和发送数据函数uart.c//硬件驱动#include "usart.h"#include "delay.h"//C库#include <stdarg.h>#include <string.h>/****************************************...
2018-07-09 19:19:06
24168
2
原创 STM32 定时器2 CH1 CH2 PWM输出 产生呼吸灯效果
以STM32F103C8T6为例,从其数据手册中可以看到,PA0、PA1的复用功能(Default alternate functions)分别是定时器2的CH1和CH2。 由图2可以看到,其中PA0的复用功能中TIM2_CH1_ETR表示,PA0既可以复位为TIM2_CH1,也可以复用为TIM2_ETR功能。图1 TIM2 CH1、CH2引脚(图来自数据手册) 由下...
2018-07-09 00:03:38
26140
7
原创 CH455 数码管驱动以及键盘控制芯片 应用笔记
CH455是一款用于驱动数码管(LED)和矩阵键盘扫描控制芯片。能够动态驱动4位数码管或者32个LED。同时支持7x4的键盘扫描。单片机通过I2C对CH455进行读写,同时包括一个#INT中断引脚,任何一个按键按下都会触发中断,在INT引脚上产生低电平脉冲。 主要特点:内置较大电流的驱动器,段电流达25mA,位电流达160mA支持8x4或7x4,能够直接控制4位数码管或32个LED能够设...
2018-07-08 01:33:38
15665
8
原创 STM32F10x 单片机中将PB3、PB4、PA15配置为普通IO使用
因为STM32F1系列是pin to pin设计,F1系列的所有PB3、PB4、PA15功能一致。 如下图, 从STM32F103C8T6的数据手册可以看到,PB3、PB4、PA15的主要功能(第一功能,main function)为JTAG的功能引脚JTDO、NJTRST、JTDI。 B3、PB4、PA15引脚当做普通IO使用时,需要禁用JTAG功能。 ...
2018-07-07 22:34:02
4097
原创 SIM800发送数据 AT+CIPSEND ERROR
要求开机发送三次数据,发现当发送间隔为200ms时,会出现ERROR情况,出现宕机情况。原因可能是因为发送数据的返回处理要有一定时间,发送过快时,上一步的数据没有处理完,将延迟由200ms改为500ms解决问题。发送数据函数,这个函数时基于SIM800已经连接上对应的IP和端口extern unsigned char heartbeat_en;/*************************...
2018-07-04 09:36:42
12570
原创 单片机使用状态机实例 - SIM800C TCP/UDP连接
/******************************************************************SIM800配置 连接网络函数入参: 无 出参: 无******************************************************************/void SIM800_Configute(void){ s...
2018-07-03 17:07:56
6763
2
原创 PIC单片机 sleep 低功耗调试记录
在执行sleep(); 函数前,可以将不用的引脚设置为模拟输入,高阻态模式。ANSELAbits.ANSA4 = 1; //进入sleep前,将LED IO口设置为模拟输入TRISAbits.TRISA4 = 1; 如果设置为数字输入的话,将会提高功耗,约40uA(单个IO)ANSELAbits.ANSA4 = 0; //设置为数字输入 (不可取)TRISAbits.TR...
2018-06-26 17:06:34
3291
原创 单片机 单个按键和两个按键同时按下 检测实现
1. if(K10 == 0) 2. { 3. __delay_ms(TWOKEY_DELAY); //两个按键按下的时间差,要小于这个延时,否则判断为单个按键按下 4. if(K10 == 0) 5. { 6. if(K7 == 0) 7. { 8. TX_D...
2018-06-24 19:42:22
19992
6
原创 PIC16F1933 EEPROM操作
PIC16F1933内部有256Byte大小的数据EEPROM用于存储数据,如图1所示图1 EEPROM大小 通过PIC16F1933数据手册可以看到,EEPROM的地址为00H~FFH,如图2所示图2 PIC16F1933数据手册EEPROM部分 操作步骤举例:1、写操作,使用”pic.h”库函数中自带的操作函数对EEPROM进行写操作1. eeprom_write(0x81,(...
2018-06-24 16:11:31
2692
原创 生物雷达调试记录
一、 使用工具l SIM800L GPRS模块l 非接触式体征测试仪l USB转TTL串口模块(含杜邦线*4)l PC+串口调试助手二、 接收数据格式图1为HPM_Radar发送数据的格式,其中第一个byte为报文序号,范围为0~255。通过测试可见,当计数达到255时,自动增加到0。Bit[10:1]和Bit[30:21]为呼吸波形的数据点,Bit[20:11]和Bit[40:3...
2018-06-24 08:53:49
1784
2
原创 系统掉电检测_掉电参数存储方案
一、 设计需求在工业产品中,有很多工业参数在掉电后需要进行保存,如当前电机位置,目前设定的阈值大小等等,需要在掉电的时候将这些参数保存到EEPROM中,重新上电时,从EEPROM中读取这些数据。如果在正常工作期间,不断将这些参数写到EEPROM中,会占用CPU资源,消耗函数执行时间。如果系统能够检测到系统掉电,在掉电的同时将这些参数存储到外部或者内部的EEPROM中,会大大减小系统的负担。二、 ...
2018-06-23 16:14:55
6302
5
原创 HW2000接收函数
当HW2000无线模块没有接收到数据时,会持续while死循环检测,导致程序卡死在这里。解决方法:发送端持续发送心跳码,保证持续有数据接收。让main函数不会死在接收函数中。...
2018-06-15 16:50:59
546
2
原创 LM2586S 应用笔记
LM2586可用于搭建反激电路(Flyback)和Boost升压电路,笔者最近在使用该系列芯片过程中,使用LM2586-ADJ来设计升压电路,将+5V输入电压升压到+12V电压输出,要求输出电流有1A。有LM2586手册可以看到输入电压:4~40V输出电流:3A图1 LM2866-XX数据手册首页由图1可以看到,LM2586满足设计需求,因为手里只有ADJ可调电压信号,通过外部电阻的比例来...
2018-06-08 02:39:03
3257
原创 F-6888 音频蓝牙模块应用笔记
F-6888 音频蓝牙模块是基于博通(BEKEN)的BK3254 BLE蓝牙芯片设计的音频蓝牙模块。F-6888音频蓝牙模块使用简单,集成了TF卡和U盘播放功能,手机等移动设备能够通过蓝牙直接连接到该模块,支持模拟音频输入和数字蓝牙数据连接两种音频接入方式。模块的一些基本参数为:供电电压:+3.3V~4.2V工作电流:45mA待机电流:<500uA传输距离:>10米模块图:图1 F-6888实物图...
2018-06-08 02:07:30
6414
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人