当前位置: 首页 > news >正文

牡丹江做网站的公司新媒体营销案例ppt

牡丹江做网站的公司,新媒体营销案例ppt,管理咨询公司最专业的公司,建立网站需要多少钱就蓷y湖南岚鸿推荐SysTick 简介 SysTick—系统定时器是属于CM3内核中的一个外设,内嵌在NVIC中。系统定时器是一个24bit 的向下递减的计数器,计数器每计数一次的时间为1/SYSCLK,一般我们设置系统时钟SYSCLK 等于72M。当重装载数值寄存器的值递减到0的时候&#…

SysTick 简介

SysTick—系统定时器是属于CM3内核中的一个外设,内嵌在NVIC中。系统定时器是一个24bit 的向下递减的计数器,计数器每计数一次的时间为1/SYSCLK,一般我们设置系统时钟SYSCLK 等于72M。当重装载数值寄存器的值递减到0的时候,系统定时器就产生一次中断,以此循环往 复。 因为SysTick是属于CM3内核的外设,所以所有基于CM3内核的单片机都具有这个系统定时器, 使得软件在CM3单片机中可以很容易的移植。系统定时器一般用于操作系统,用于产生时基,维 持操作系统的心跳。

SysTick 寄存器介绍

SysTick—系统定时器有4个寄存器,简要介绍如下。在使用SysTick产生定时的时候,只需要配 置前三个寄存器,最后一个校准寄存器不需要使用。

SysTick 定时实验

利用SysTick 产生1s的时基,LED以1s的频率闪烁。

编程要点

1、设置重装载寄存器的值

2、清除当前数值寄存器的值

3、配置控制与状态寄存器

代码分析

SysTick 属于内核的外设,有关的寄存器定义和库函数都在内核相关的库文件core_cm3.h中。

SysTick 配置库函数

__STATIC_INLINE uint32_t SysTick_Config(uint32_t ticks){// 不可能的重装载值,超出范围if ((ticks- 1UL) > SysTick_LOAD_RELOAD_Msk) {return (1UL);}// 设置重装载寄存器SysTick->LOAD = (uint32_t)(ticks- 1UL);// 设置中断优先级NVIC_SetPriority (SysTick_IRQn, (1UL << __NVIC_PRIO_BITS)- 1UL);//设置当前数值寄存器SysTick->VAL = 0UL;//设置系统定时器的时钟源为AHBCLK=72M//使能系统定时器中断//使能定时器SysTick->CTRL = SysTick_CTRL_CLKSOURCE_Msk |SysTick_CTRL_TICKINT_Msk |SysTick_CTRL_ENABLE_Msk;return(0UL);}

用固件库编程的时候我们只需要调用库函数SysTick_Config()即可,形参ticks用来设置重装载寄 存器的值,最大不能超过重装载寄存器的值224,当重装载寄存器的值递减到0的时候产生中断, 然后重装载寄存器的值又重新装载往下递减计数,以此循环往复。紧随其后设置好中断优先级, 最后配置系统定时器的时钟等于AHBCLK=72M,使能定时器和定时器中断,这样系统定时器就 配置好了,一个库函数搞定。 SysTick_Config()库函数主要配置了SysTick中的三个寄存器:LOAD、VAL和CTRL,有关具体 的部分看代码注释即可。

Systick.c

#include "Systick.h"void SysTick_Delay_us(uint32_t us)
{	uint32_t i = 0;SysTick_Config(72);for(i=0;i<us;i++){while(!((SysTick->CTRL) & (1<<16)));}//关闭定时器使能SysTick ->CTRL &= ~SysTick_CTRL_ENABLE_Msk;  //清0
}void SysTick_Delay_ms(uint32_t ms)
{	uint32_t i = 0;SysTick_Config(72000);for(i=0;i<ms;i++){while(!((SysTick->CTRL) & (1<<16)));}//关闭定时器使能SysTick ->CTRL &= ~SysTick_CTRL_ENABLE_Msk;  //清0
}

Systick.h

#ifndef __SYSTICK_H
#define __SYSTICK_H#include "stm32f10x.h"                  // Device header
#include "core_cm3.h"void SysTick_Delay_ms(uint32_t ms);
void SysTick_Delay_us(uint32_t us);#endif

main函数

#include "stm32f10x.h"                  // Device header
#include "Delay.h"
#include "Systick.h"int main(void)
{RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOE,ENABLE);GPIO_InitTypeDef GPIO_InitStruct;GPIO_InitStruct.GPIO_Mode = GPIO_Mode_Out_PP;  //推挽输出GPIO_InitStruct.GPIO_Pin = GPIO_Pin_5 ; GPIO_InitStruct.GPIO_Speed = GPIO_Speed_50MHz;GPIO_Init(GPIOE,&GPIO_InitStruct);while(1){GPIO_ResetBits(GPIOE,GPIO_Pin_5);//Delay_ms(500);  //延时500毫秒SysTick_Delay_ms(500);GPIO_SetBits(GPIOE,GPIO_Pin_5);	//Delay_ms(500);SysTick_Delay_ms(500);}}

http://www.ahscrl.com/news/12722.html

相关文章:

  • 团建智慧登陆官网seo优化公司排名
  • 深圳大型论坛网站建设百度推广深圳分公司
  • 和网站设计人员谈价要注意什么怎样联系百度客服
  • 湖南做网站 就问磐石网络专业网络营销案例ppt
  • 做曖网站深圳关键词推广
  • 华为云网站建设怎么设置选择项广告营销的经典案例
  • 好看的网站界面设计优化师是干嘛的
  • 做推广的网站带宽需要多少合适seo查询工具网站
  • 做弹幕网站互联网产品推广
  • dom手表官方网站营销网址
  • 做的比较好的企业网站互联网营销做什么
  • 微信怎么做链接网站免费网站友情链接
  • 商贸企业网站建设设计方案武汉网络广告推广服务
  • 网站描本链接怎么做顾问式营销
  • wordpress发广告seo交流群
  • 做网站博彩代理违法吗宁波微信推广平台哪个好
  • 基于jquery做的网站网络营销是什么工作
  • 有哪些做外贸网站专业做网络推广的公司
  • 网站设计网站机构免费推广网站大全
  • 龙华做网站哪家便宜营销方式有哪些
  • 网站定制开发合同推广赚佣金的软件排名
  • 湖北响应式网站建设华联股份股票
  • 新手做网站seo排名优化推广报价
  • 扬中市新闻网站怎样推广自己的商城
  • 瓷器网站怎么做seo推广公司哪家好
  • 学做旗袍衣服的网站百度关键词批量看排名工具
  • 网站建设做的好关键词优化策略有哪些
  • 响应式网站模板费用百度云手机登录入口
  • wordpress 作者归档苏州seo关键词排名
  • 本地唐山网站建设seo关键字优化