在人员监控设备研发中,如何对单片机的通用定时器进行配置?

Posted 瑞奇Ricky

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在人员监控设备研发中,如何对单片机的通用定时器进行配置?相关的知识,希望对你有一定的参考价值。

笔者近期在进行人员监控设备的研发。人员监控设备是一款集地理信息定位、运动轨迹监测、电子围栏设置、救援报警等多种功能于一体的监控终端。

可以应用在工地人员监控、产业园区人员监控、矿山人员监控、老人安全监控、宠物智能监控等多种监控环境之中。
在这里插入图片描述
被监管人员佩戴上跟踪监控终端后,管理者就可以在云端后台实时可视化的对相关人员运行轨迹和活动范围进行监控管理。

管理者还可以在危险区域设置电子围栏,当监管人员超出电子围栏区域时,跟踪监控设备会立即发出报警提醒,保证监管人员安全。
在这里插入图片描述
当监管人员遇到危险时,可以长按监控终端上的急救按钮,管理者就可以第一时间收到求救信息,并立即展开救援。这对于一些危险职业人员是一种非常好的保护措施。我们在进行人员监控设备的研发过程中,会对产品内部的单片机的定时器进行配置。
在这里插入图片描述
通用TIMx (TIM2、TIM3、TIM4和TIM5)定时器中的核心部分是一个可进行编程操作的预分频器驱动的16位自动装载计数器。

定时器可以运用在不同的场合之中,如:产生输出波形(输出比较和PWM)。我们在使用定时器预分频器和RCC时钟控制器预分频器时,可以将脉冲长度和波形周期根据产品性能的需要在几个微秒到几个毫秒之间进行调整。
在这里插入图片描述
每一个定时器都是完全独立的个体,是没有办法做到共享资源的。相信很多产品研发人员都会需要对定时器进行设置,那么具体如何操作呢?下面笔者对具体的编程过程进行详细展示。

配置示例:
系统时钟8M、配置TIM3 1ms中断一次。

//1ms 中断

void TIM3Init(void)

{

TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;

NVIC_InitTypeDef NVIC_InitStructure;

RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3, ENABLE);

TIM_TimeBaseStructure.TIM_Period = 1000;

TIM_TimeBaseStructure.TIM_Prescaler = 7;

TIM_TimeBaseStructure.TIM_ClockDivision = TIM_CKD_DIV1;

TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up;

TIM_TimeBaseInit(TIM3, &TIM_TimeBaseStructure);

//中断优先级NVIC设置

NVIC_InitStructure.NVIC_IRQChannel = TIM3_IRQn;

NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 1;

NVIC_InitStructure.NVIC_IRQChannelSubPriority = 3;

NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;

NVIC_Init(&NVIC_InitStructure);

TIM_ClearITPendingBit(TIM3, TIM_IT_Update);

TIM_ITConfig(TIM3,TIM_IT_Update,ENABLE );

TIM_Cmd(TIM3, ENABLE);

}

以上是关于在人员监控设备研发中,如何对单片机的通用定时器进行配置?的主要内容,如果未能解决你的问题,请参考以下文章

在人员监控设备的研发中,如何进行低功耗处理?

在进行资产设备研发时,HC32L110定时器初始化

资产设备研发中,RI振铃提示实现过程

在进行资产监测设备研发时,RTC的相关设计

cc2530中单片机的通用I/O接口

在货物监控设备研发过程中,遇到单片机晶振不起振怎么办?