OpenEdv-开源电子网

 找回密码
 立即注册

扫一扫,访问微社区

正点原子全套STM32开发资料,上千讲STM32视频教程,RT1052教程免费下载啦...
查看: 670|回复: 1

[STM32作业提交] 控制寄存器实现呼吸灯

[复制链接]

  离线 

1

主题

1

帖子

0

精华

新手入门

积分
12
金钱
12
注册时间
2017-7-20
在线时间
4 小时
发表于 2017-7-22 11:43:17 | 显示全部楼层 |阅读模式
#include "stm32f10x.h"
#include "delay.h"

int main(void)
{     
             unsigned long i=1;
            delay_init();
            


            RCC->APB2ENR  |= (1<<3);//ê1ÄüBê±Öó
            RCC->APB2ENR  |= (1<<6);//ê1ÄüEê±Öó
       
            GPIOB->CRL &= 0XFF0FFFFF;
            GPIOB->CRL |= 0x00300000;
          
            GPIOE->CRL &= 0XFF0FFFFF;
            GPIOE->CRL |= 0x00300000;
            while(1)
                        {
                for(;i<1500;i++)
                {
                                                        GPIOE->ODR &= ~(1<<5);
                                                        GPIOB->ODR &= ~(1<<5);
                                                        delay_us(i);
                                                        GPIOE->BSRR  |= 1<<5;
                                                        GPIOB->BSRR  |= 1<<5;                                               
                                                        delay_us(1501-i);                                                     
                }
                                        for(; i>1;i--)
                                        {   
                                                         GPIOE->ODR &= ~(1<<5);       
                                                         GPIOB->ODR &= ~(1<<5);                                               
                                                         delay_us(i);
                                                         GPIOE->BSRR  |= 1<<5;
                                                         GPIOB->BSRR  |= 1<<5;
                                                         delay_us(1501-i);
                                                 
                                  }
                  }
       
}

回复

使用道具 举报

  离线 

135

主题

1198

帖子

5

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
3414
金钱
3414
注册时间
2015-10-15
在线时间
1372 小时
发表于 2017-7-22 12:23:34 | 显示全部楼层
同样,每个周期是i+1501-i=1501us,循环1500次,时长是多少?
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

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

本版积分规则




关闭

报名原子哥新品发布会&粉丝见面会上一条 /1 下一条

正点原子公众号

QQ|联系我们|手机版|官方淘宝店|微信公众平台|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2018-10-20 20:33

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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