/*初始化时钟*/
void Init_SysTick(void)
{
if(SysTick_Config(SystemCoreClock / 1000)) //注意:3.5库中 SystemFrequency 被 SystemCoreClock 取代。
while(1);
}
/*延时1ms函数*/
__IO uint32_t TimingDelay;
void delay_ms(__IO uint32_t nTime)
{
TimingDelay = nTime;
while(TimingDelay != 0);
}
/*stm32f10x_it.c中的void SysTick_Handler(void)函数改为*/
extern __IO uint32_t TimingDelay;
void SysTick_Handler(void)
{
if (TimingDelay != 0x00)
{
TimingDelay--;
}
}
/*用法,延时1秒*/
delay_ms(1000);
注意:在加入头文件"core_cm3.h"编译时可能错误,这时必须加上另一个头文件"stm32f10x.h"。
关键字:STM32 SysTick延时 使用说明
引用地址:
STM32 SysTick延时的使用说明
推荐阅读最新更新时间:2024-03-16 15:15
STM32学习——MPU6050姿态传感器
STM32移植(抄)起来特别爽。。。 MPU6050简介 1.MPU6050是一款六轴(三轴加速度+三轴角速度(陀螺仪))传感器 2.MPU6050含有一个第二IIC接口,可用于连接外部磁力传感器 3.MPU6050自带数字运动处理器(DMP)通过主IIC接口,可以向CPU提供四元数,CPU可利用四元数得到欧拉角,避免了CPU通过原始数据进行姿态计算(DMP驱动库由官方提供,使用时需要改动) 4.据说stm32的硬件IIC接口存在bug,需要用软件模拟IIC时序 MPU6050初始化步骤 (1)初始化IIC接口 即SDA和SCL对应的GPIO (2)复位MPU6050 使MPU6050内部所有的寄存器恢复默认值,通过对电
[单片机]
STM32的USRT通讯实现
1.实现平台 两块STM开发板,杜邦线; 初始化板子上的串口; 为串口开启中断; 根据需要制定两个板子的通讯协议。 2.实现过程 2.1协议制定 在工程实践的过程中,常常需要两个板子进行通讯来实现功能。现在常常使用的通讯方法常常是CAN通信,TTL通讯,RS485通讯,RS232通讯,I2C,I2S,SPI等。UART也是一种常用的通讯方式,这种通讯方式为全双工。 制定协议时应注意以下几点: 起始符,结束符和校验位 在为制定通讯协议的时候,首先应该确定发送数据的起始符,结束符和校验位;在设置起始符,结束符的时候应该避免和发送的内容发生冲突。结束符最好可以设置多位,一般可以设置两个位作为结束符;校验位需要在结束符之前;起
[单片机]
STM32系列MCU解决方案展示
STM32系列基于专为要求高性能、低成本、低功耗的嵌入式应用专门设计的ARM Cortex-M3内核。按性能分成多个不同的系列,满足不同应用的不同需求。由于STM32系列在开发工具的成本和广泛度;存储器的种类、规模、性能和容量;以及各种软件获得的难易度方面都做了非常出色的准备,因此迅速在市场上取得巨大成功,成为最受欢迎的工业及消费市场应用的MCU产品系列之一。 STM32系列 E-METER产品方案介绍 友尚集团 与传统的机械式电能表相比,eMeter能够更快、更便宜、更可靠地报告用电量。友尚推出ST于智能电表上的运用方案,整个方案中的架构主要包括计量芯片、MCU和外围芯片三个部分。 计量芯片 单相表
[单片机]
STM32中关于HC-05的学习笔记
使用单片机与手机进行通信 接线问题: HC-05的RX,TX与单片机的PA9,PA10对应相接。至于连接在ATK MODULE 端口中下RX,TX相连无法接受,有待与进一步研究 待续... 下面带上可行的程序: #include stm32f10x.h #include stm32f10x_rcc.h #include stm32f10x_gpio.h #include stm32f10x_usart.h #include stm32f10x_crc.h #include system_stm32f10x.h #include stdio.h #include delay.h
[单片机]
基于STM32平台的μC/OS-II上的μC/GUI移植过程解析
μC/GUI是一种专为嵌入式应用设计的通用图形接口软件。本文详细介绍了μC/GUI的结构框架和基于STM32平台的μC/OS-II上的μC/GUI移植过程,并在此基础上进行图形界面设计;阐述了μC/GUI的窗口管理机制,提出了实现μC/GUI中文小型字库的两种方法并采用存储设备解决了图形显示的闪烁问题。 嵌入式系统的图形用户界面,要求具有占用资源少、性能高、可靠性高、可移植、可配置等特点,μC/GUI就是这样一种专门为嵌入式应用设计的图形用户界面软件。μC/GUI可应用于多任务环境中,同时使用实时操作系统与μC/GUI,既可以发挥优先级的实时性,又能实现良好的人机界面。本文使用Cortex-M3内核的STM32平台,介绍了基于
[单片机]
CM3(STM32)内核复位与系统复位区别及应用
Ⅰ、写在前面 某些系统允许复位,但对外设又有特殊要求:某一个IO状态不能因为复位而改变,某一个定时器计数器不能改变等。 例子:我一个A系统通过一个IO控制另一个B系统的电源,而这个IO置高时才开启B系统的电源。 正常工作过程中,B系统只有收到A系统关机命令任务才会进行关机(也就是说不能掉电关机),而A系统在工作过程中有复位的需求。 这个时候如果我使用常规的引脚复位,就会使IO置低,不符合要求,就需要使用到本文说到的内核复位。 Ⅱ、关于复位 说到复位,我们都不会陌生,学习时,开发板上基本都有一个复位按键。 复位的种类有很多:上电复位、掉电复位、复位引脚复位、看门狗复位、软件复位等。 上面说的复位按键,也就
[单片机]
stm32 读取bmp图像的信息
在sd卡文件系统下读取bmp图像和显示是比较容易的,为了给jpeg解码提供一个过程,这里我先介绍一下bmp的读取方式 这里主要是介绍读取bmp信息的一些方法 首先说一下BMP的4个组成部分: 1.文件头信息块 0000-0001:文件标识,为字母ASCII码“BM”。 0002-0005:文件大小。 0006-0009:保留,每字节以“00”填写。 000A-000D:记录图像数据区的起始位置。各字节的信息依次含义为:文件头信息块大小,图像描述信息块的大小,图像颜色表的大小,保留(为01)。 2.图像描述信息块 000E-0011:图像描述信息块的大小,常为28H。 0012-0015:图像宽度。 0016-
[单片机]
stm32之i2C硬件驱动ht16c22
使用硬件i2c,驱动ht16c22,程序不稳定是肯定的,还是贴出来吧,项目中最好不要用。 文件i2c.h内容: #ifndef _STM32F103_I2C_H_ #define _STM32F103_I2C_H_ #include stm32f10x.h #define SlaveAddress 0x7e //0x7e //#define ModeSet 0b10001100 //80Hz,turn on sys and LCD bias,1/3 bias #define ModeSet 0x8C //80Hz,turn on sys and LCD bias,1/3 bias //#define VlcdAdjus
[单片机]