找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1980|回复: 0
收起左侧

STM32入门-systick延时

[复制链接]
ID:189450 发表于 2017-4-19 09:55 | 显示全部楼层 |阅读模式
main.c
#include "stm32f10x.h"
#include "led.h"
#include "systick.h"
int main(void)
{
  u8 i;
        LED_Init();
        while(1)
        {
                LED_display();

                /*for(i=0;i<8;i++)
                {
                        GPIO_Write(GPIOB,(u16)(0xfe<<i));
                        delay_ms(1000);
                }*/
        }
}

systick.c
#include "systick.h"
void delay_us(u32 i)
{
        u32 temp;
        SysTick->LOAD=9*i;
        SysTick->CTRL=0X01;
        SysTick->VAL=0;
        do
        {
                temp=SysTick->CTRL;
        }while((temp&0x01)&&(!(temp&(1<<16))));
        SysTick->CTRL=0;
        SysTick->VAL=0;
}
void delay_ms(u32 i)
{
        u32 temp;
        SysTick->LOAD=9000*i;
        SysTick->CTRL=0X01;
        SysTick->VAL=0;
        do
        {
                temp=SysTick->CTRL;
        }while((temp&0x01)&&(!(temp&(1<<16))));
        SysTick->CTRL=0;
        SysTick->VAL=0;
}


Systick延时测试.7z

193.09 KB, 下载次数: 8, 下载积分: 黑币 -5

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表