前言某天数据库意外下线导致网站没法访问,过了好几小时都没发现,直到朋友提醒才知道。于是乎准备做一个定时检测网站状态的小服务。想过直接在服务器上部署监控服务,但考虑到“把监控服务部署到监控对象上”还是很不妥,如果服务器挂了监控服务也得挂,那就白折腾了。所以云函数就成了最优选择。设计触发方式云函数使用定时触发,每隔固定时间执行一次。执行逻辑访问目标网站,判断返回的HTTP状态码状态码为200表示一切正常,打印正常信息,函数结束。状态码非200表示出现问题,打印异常信息,并且通过WebHook给企业微信发送信息。访问超时表示出现问题,打印异常信息,并且通过WebHook给企业微信发送信息。源码# -
STM32TIM(一)定时中断定一个时间,然后让定时器每隔这个时间产生一个中断,来实现每隔一个固定时间执行一段程序的目的,比如你要做个时钟、秒表,或者使用一些程序算法的时候,都需要用到定时中断的这个功能。TIM简介TIM(Timer)定时器定时器可以对输入的时钟进行计数,并在计数值达到设定值时触发中断定时器就是一个计数器,当这个计数器的输入是一个准确可靠的基准时钟的时候,那在对这个基准时钟进行计数的过程,实际上就是计时的过程。比如在STM32中,定时器的基准时钟一般都是主频72MHz,比如我对72MHz计72个数,所记时间就是72*1/72000000=1us;如果计72000个数,那就是72
定时器也可以做为计数器,其实他们本质上的原理是一样的,定时器是计数单片机内部的系统时钟,每1个或者12个时钟脉冲,就加一。计数器则是记录外部输入脉冲。1. 定时器0有四种工作模式,这里使用的是定时器0的16位可重新装载模式,16位(0x0000~0xFFFF)即可以从0数到65535共计65536个,区别8位(0x00~0xFF)的256个,可重装载指的是初始化设置的起始数,在溢出中断后会重新装载。TMOD= 0x00;//配置工作模式2.配置定时器0的工作频率,手上的设备是工作在35MHz,设置1T模式,定时器0也工作35MHz,计数间隔就是1/35us,如果设置12T模式,那么定时器0就会
本文介绍如何用FPGA实现基于插值算法的OOK信号定时同步,Verilog代码参考杜勇《数字调制解调技术的MATLAB与FPGA实现》。我们的目标是用外部提供50MHz时钟的zynq7100芯片实现400MHz采样频率和100Mbps的OOK数字基带信号的定时同步。 采用传统的锁相环技术实现定时同步时,本地时钟需要有较高的频率。当数据采样频率很高,并且本地时钟受到器件性能限制而不能远高于采样频率时,锁相环技术性能不佳。插值算法可以不改变采样时钟的频率和相位来实现位同步信号的调整,同时,插值算法可以根据采样值以及数控振荡器输出的采样时刻信号和误差信号获取最佳采样值。 插值位同步算法的框图
MySQL提供了mysqldump命令来实现导出数据库,命令用法如下:mysqldump-uroot-p[password][database_name]>[backup].sql在Linux服务器中结合crontab定时命令实现定时备份数据库,同时支持压缩、备份日志、定期清理等功能。1.备份执行脚本新建mysql的备份命令脚本$vidb_backup.sql复制以下内容:#!/bin/bash#数据库名称database_name="mydb"mysql_password=""#备份文件保存地址backup_dir="/mydata/backup/mydb"#备份文件名前缀backup_pr
目录三种定时器的区别通用定时器功能特点的描述时基单元计数器模式时钟选择实验:定时器中断三种定时器的区别通用定时器功能特点的描述STM32的众多定时器中我们使用最多的是高级定时器和通用定时器,而高级定时器一般也是用作通用定时器的功能,下面我们就以通用定时器为例进行讲解,其功能和特点包括:通用与基本定时器(2~7)位于低速的APB1总线上高级定时器(1、8)位于高速的APB2总线上自动装载计数器(TIMx_CNT)有16位向上、向下、向上/向下(中心对齐)计数模式。预分频器(TIMx_PSC)是16位可编程(可以实时修改)的,计数器时钟频率的分频系数由它设置,可以为1~65535之间的任意数值。每
Linux【定时任务】1.开启定时服务注意:如果想要在Linux操作系统中执行定时任务需要先保证crond服务是开启的(默认是开启的)#查看crond服务状态servicecrondstatus#启动crond服务(如果已经启动可以不用设置)systemctlstartcrond#关闭crond服务systemctlstopcrond2.编辑查看指定用户的定时任务#编辑指定用户的定时任务crontab-u用户名-e#编辑root用户下的定时任务1.crontab-uroot-e#查看指定用户下所有的定时任务crontab-u用户名-l#查看root下所有的定时任务1.crontab-uroot
首先先说项目需求:向预约参观的用户提前一天晚上8点推送消息。小程序端主要用到的API是我是小程序用到的API。以及服务端用到的API:我是服务端用到的API。1.开通订阅消息功能(1)、首先需要在小程序管理后台开通订阅消息功能。没开通前如下图所示:(2)、开通之后可根据自己的需求选择适合的公共模板。模板里的标题还有常见关键字不能修改。注意:公共模板是根据小程序的服务类目展示的。如下图所示:2.小程序端开发阶段小程序端需要调起客户端订阅页面,并返回用户的操作结果。这部分比较简单,代码如下:到这里,已经可以在小程序端查看效果了,需要注意的是,截止这篇文章发布时,订阅消息弹窗已经默认不推送并且总是保
目录概述简介时钟设置计数模式例程概述在GD32中定时器是非常重要的外设,它可以帮我们精准的控制程序的调度,就如之前讲过的SysTick就是一个定时器,我们可以通过设置这个定时器的寄存器实现延时函数。GD32的定时器可大致分为3种——基本定时器、通用定时器、高级定时器。它们之间的区别如下图所示:这一节先介绍当中最简单的基本定时器。简介GD32中的定时器外设都是使用16位计时器;计数模式只有向上计数;支持单脉冲模式;支持DMA传输请求;在内部有触发线连接至DAC,这样可以使用定时器定时触发DAC的数据转换,这个在后面会讲到。时钟设置要想定时器按预期工作,那么对时钟进行正确的设置是十分重要的。先找到
STM32使用定时器实现微秒(us)级延时引言前期准备介绍系统时钟定时器时钟项目项目介绍STM32CubeMX程序引言目前开发STM32普遍使用HAL库,但HAL库封装的延时函数目前仅支持ms级别的延时,日常很多情况下会用到us延时,特别是一些传感器的数据读取过程,对时序要求比较严格,us延时必不可少,因此我们今天来介绍STM32如何使用定时器实现微秒(us)级延时。前期准备Keil5STM32CubeMXSTM32F407MCU介绍系统时钟可通过多个预分频器配置AHB频率、高速APB(APB2)和低速APB(APB1)。AHB域的最大频率为168MHz。高速APB2域的最大允许频率为84MH