lpc54102例程 两种方案代码详解
由于其性能和稳定性,lpc54102在许多领域得到了应用。下面给大家分享一下lpc54102的套路。
恩智浦LPC5410x系列产品是32位ARM Cortex-M4F/MO MCU,集成了104KB SRAM、512KB闪存、3个12C、2个SPI、4个USART、32位计数器/定时器、SCTImer/PWM和12位4.8MSPS ADC。它们具有低功耗、增强的调试功能和快速高级支持区域,并且适合于嵌入式应用。
LPC5410x是一款基于ARM cortexm4f的嵌入式微控制器。这些器件包括可选的arm Cortex-M0协处理器、104 KB片内存储器、512 KB片内闪存、五个通用定时器、一个状态可配置定时器(SCTImer/PWM)PWM功能、一个RTC/报警定时器和一个24位多速率定时器(MRT)。窗口看门狗定时器(WWDT)、四个USARTs和两个SPI、三个快速模式加i2c总线接口和高速从机模式,以及一个12位4.8 Msamples/secADC。
LPC54102传感器处理/运动解决方案的主要特性:
A.完整的硬件和软件设计,可随时定制
B.32位LPC54102 Cortex-M4F/M0 MCU
C.LPCXpresso54102开发局
D.传感器盖板
E.LPCOpen软件驱动程序
f. LPC的传感器融合框架
G.博世BSX Lite传感器融合库
H.软件演示
一.文件
LPC54102传感器处理/运动解决方案的主要优势:
A.为您的应用添加6轴或9轴运动传感器
B.集成传感器融合中间件和便携式传感器融合框架
C.传感器融合api允许用户使用运动传感器轻松创建应用。
D.附加数字传感器(压力/温度、环境光、接近度)
E.软件开发工具,用于快速开始编写、编译和运行基于传感器的应用程序。
F.为最终产品设计师提供一套丰富的参考设计资料,包括文档、移植指南和原理图。
G.可堆叠硬件支持更多传感器或添加插件模块。
H.大量引脚用于测量和原型制作
一.低功耗
LPC54102开发板介绍LPC54102开发板介绍原理图
LPC54102例程:首先我们移植万里开发板的心率仪应用笔记的lpc54102例程进行分析讲解。
由于万里开发板的设置不同,没有PulseSensor传感器,需要进行修改和移植。万里开发板上的AIN1作为模拟输入,电位器的来回转动代表心跳的变化。
1、代码修改
由于万力开发板使用PIO1_4/AIN7作为电位器输入,因此在初始化代码中做了如下修改:
在board.h中,取消了BOARD_NXP_LPCXPRESSO_54102的定义,但是重新定义了BOARD_MANLEY_LPC54102。
在每个初始化代码中,添加了万里开发板的初始化代码。
#如果已定义(BOARD_NXP_LPCXPRESSO_54102)
#定义ADC _ SEQ _配置
TRIG _ SOFT |
TRIG_POL_POS |
MODE_EOS |
ENABLE_CH(3)
#elif已定义(BOARD_MANLEY_LPC54102)
#定义ADC _ SEQ _配置
TRIG _ SOFT |
TRIG_POL_POS |
MODE_EOS |
ENABLE_CH(7)
# endif//#如果已定义(BOARD_xxx)
静态void ADC_PinMuxSetup(void)
{
#如果已定义(BOARD_NXP_LPCXPRESSO_54102)
Chip_IOCON_PinMuxSet(LPC_IOCON,1,0,IOCON _ MODE _ in act | IOCON _ func 1 | IOCON _ ANALOG _ EN);
#elif已定义(BOARD_MANLEY_LPC54102)
Chip_IOCON_PinMuxSet(LPC_IOCON,1,4,IOCON _ MODE _ in act | IOCON _ func 1 | IOCON _ ANALOG _ EN);
#endif
}
从010到31020运行
其余基本不变。下载后来回旋转电位器,可以看到串口输出心跳数据。
3、代码分析
该应用基本采用CM4初始化后即进入休眠。
CM0核初始化模数转换器、定时器之后,进入休眠。
每秒20次唤醒后,采样ADC,当采样过半时,调用计算心率算法计算是否产生心跳以及心跳间隔IBI。当发现后即输出串口信息。
关键在于计算心率算法,该算法采用脉搏传感器官方的算法,基本是通过判断物理输出核心模拟量发现峰值、过半点等运算。
空的计算心率(无效)
{
inti,N,Signal,runningTotal,current _ sample=0;
while(current_sample采样频率/2){
signal=temp _ data[电流_样本];
样本计数器=样本计数器50跟踪以毫秒为单位的时间;
n=样本计数器-lastBeatTime;
如果(信号《thresh N》 (IBI/5)*3){
如果(信号《T){
T=信号;} } if(信号)阈值信号“P){
P=信号;}
女(男)500){
如果(信号)thresh)(Pulse==0)(N ”( IBI/5)* 3)){ Pulse=1;IBI=样本计数器-lastBeatTime;lastBeatTime=sampleCounterif(second beat){ second beat=0;for(I=0;I"=9;I){ rate[I]=IBI;} } if(第一拍){第一拍=0;秒拍=1;继续;} 运行总数=0;for(I=0;I"=8;I){ rate[I]=rate[I 1];累计=比率[I];} rate[9]=IBI;累计=rate[9];运行总数/=10;BPM=60000/运行总数;QS=1;} }
如果(信号《阈值脉冲==1){
脉冲=0;
安培=P-T;
thresh=amp/2t;
P=阈值;
T=阈值;}
If(N"2500){
thresh=2548
P=2548
t=2548 lastbeattime=sample counter
第一拍=1;
秒拍=0;}当前_样本;} }
lpc54102例程:二LPCOpen_V2.14_LPC5410x的外围的例程
人体是在设置了人体中断电压水平(INTLEVEL),同时设置了重启电压水平(RSTLEVEL)之后,使能中断与重启,
源程序如下:
chip _ PMU _ SetBODLevels(PMU _ BODRSTLVL _ 1 _ 50V,PMU _ BODINTVAL _ 3 _ 05v);
chip _ PMU _ EnableBODReset();
chip _ PMU _ enable bodint();
NVIC _使能IRQ(BOD _ IRQn);
为了方便观察人体中断的运行,在中断中设置电路板_ LED _开关需要修改如下:
void BOD_IRQHandler(void)
{
for(int I=0;我《1000;i ) {
board _ LED _ Toggle(1);
}
}
最终运行效果要求正常运行发光二极管是熄灭的,而掉电过程中人体中断使得发光二极管闪亮,由于万利的板子是低电平点亮LED,因此在初始化阶段应该吧Board_LED_Set()的参数改为没错,高电平之后发光二极管熄灭。然后在人体中断中可以眨眼闪亮。
运行效果可以通过拔掉供电电源(本人的为JLINK直接给板子供电,在jlink指挥官中输入关机就可以)。此时发光二极管会闪亮一下马上熄灭(断电)。
/**
* @简要电源管理单元寄存器块结构
* @注意大多数电源管理单元支持是由电源管理单元库处理的。
*/
typedef结构{
_ _ I uint 32 _ t保留0[4];
_ _ I uint 32 _ t保留1[4];
_ _ I uint 32 _ t保留2[4];
_ _ I uint 32 _ t保留3[4];
_ _ I uint32 _ t保留4
_ _ IO uint32 _ t BODCTRL
_ _ I uint32 _ t保留5
_ _ I uint32 _ t保留6
_ _ IO uint32 _ t DPDWAKESRC
} LPC _ PMU _ T;
#定义LPC_PMU_BASE0x4002C000UL
#定义LPC _ PMU((LPC _ PMU _ T *)LPC _ PMU _ BASE)
(3)CLKOUT
可以在P0.21(CLKOUT)引脚上测量以下时钟信号:
CLKOUT_DIV=250
调试器挂起CPU后,CLKOUT继续输出。
《儿童权利公约》
CRC只需要运行例程。
CRC的功能定义和代码如下:
(5)IAP
IAP只需要运行例程。
观察IDE中的内存,地址为0x00078000。可以看出,运行Chip_IAP_CopyRamToFlash前后,flash存储内容发生了变化。
(6)频率测量
只是运行例行程序。
推荐阅读
- 电动机控制电路图大全 顺序控制电路/单向运行电气控制电路/电动机启停控制电路
- 什么牌子的空调好点(什么牌子的空调好)
- 2021交通事故十级伤残标准? 交通事故十级伤残标准
- x4落地价明细?(宝马x4报价)
- 步步高k118是几g手机(步步高k118)
- 2021年长沙二手房卖房费用? 2021年二手房交易费用明细表
- kuchenprofi是什么牌子(kuchenprofi)
- 保时捷卡宴改装大包围_保时捷卡宴改装
- 小信号MOSFET桥驱动设计MC34063扩流降压电路图
- 新婚姻法2021财产分割问题? 新婚姻法房产分割细则
- 尚朋堂电磁炉维修点地址(尚朋堂电磁炉维修点)
- 5万内自动挡二手车排名(5万以内口碑最好的二手车)
- 欠薪打12333的步骤? 劳动仲裁电话12333
- 酷派e239购买(酷派e239)
- 997 turbo mt_997 turbo
- 何雯娜梁超订婚,两人晒恩爱合影甜蜜温馨
- 积分电路的特点及应用实例(积分电路的特点及应用)
- 浴房门品牌(浴房品牌)
- 世界净水器十大排行(世界净水器十大排名)