一 跑马灯原理:

 1.1 本实验实现2个led的跑马灯效果,即2个led交替闪烁。



 1.2 实验思路:根据电路图原理,给led相关引脚赋予高低电平,实现电路的导通,使led灯发光。



 1.3 开发环境 : MDK5 库函数版本开发 JLINK仿真

二 实验步骤:

 2.1  led.h代码:

          #ifndef __LED_H

          #define __LED_H     

          ``#include "sys.h"

          #define LED0 PBout(5)// PB5

          #define LED1 PEout(5)// PE5    

         void LED_Init(void);// 初始化                         

         #endif

2.2  led.c代码(IO配置):

            #include "led.h"

          void LED_Init(void) 

        {

         

         GPIO_InitTypeDef  GPIO_InitStructure;

         

         RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB|RCC_APB2Periph_GPIOE, ENABLE);    //使能PB,PE端口时钟 

         GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;         //推挽输出

         GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;        //IO速度为50MHz

        

         GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5;                //LED0-->PB.5端口配置

         GPIO_Init(GPIOB, &GPIO_InitStructure);                    //根据设定参数初始化GPIOB.5

         GPIO_SetBits(GPIOB,GPIO_Pin_5);                        //PB.5 输出高电平

        

         GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5;                //LED1-->PE.5端口配置

         GPIO_Init(GPIOE, &GPIO_InitStructure);                      //根据设定参数初始化GPIOE.5

         GPIO_SetBits(GPIOE,GPIO_Pin_5);                          //PE.5 输出高电平

        }



2.2  main.c代码(实现跑马灯效果):



        #include "sys.h"

        #include "delay.h"

        #include "usart.h"

        #include "led.h"

        int main(void)

        { 

            delay_init();     //延时

            LED_Init();         //led初始化

            while(1)

                {   //led0亮,led1灭

                    LED0 =0;

                    LED1=1;

                    delay_ms(300);

                    //led0灭,led1亮

                    LED0 =1;

                    LED1=0;

                    delay_ms(300);

                    

                }

        } 



三 接线测试:

 

3.1 与板子接线测试效果良好,2个led交替闪烁,达到跑马灯效果。

ARM开发(1) 基于STM32的LED跑马灯的更多相关文章

  1. 基于am3358的led跑马灯測试

    #include <sys/ioctl.h> #include<stdio.h> #include <fcntl.h> #include <sys/types ...

  2. 嵌入式02 STM32 实验04跑马灯

    开学STM32 跑马灯的实验主要就是了解GPIO口的配置及使用,我这里是使用库函数进行编程,主要需要设置以下两方面: 1.使能需要使用的IO口的时钟,一共有A.B.C.D.E.F.G七组IO口 2.初 ...

  3. 【雕爷学编程】Arduino动手做(56)---8路LED跑马灯模块

    37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器和模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里 ...

  4. led跑马灯多种方法(移位法,位拼接法,调用模块法,位移及位拼接语法,testbench的理解,源文件的存储路径,计数器的个数,调用模块的方式)

    跟着教程写了几种方法,才发现自己写的虽然能实现,但比较繁琐.教程有三种方法: 1.移位法,每次左移一位,相比我自己写的,优点是不用把每一种情况都写出来.但是需要考虑左移到最后一位时需要自己再写个赋值语 ...

  5. led跑马灯(模糊时钟ambiguous color,非法字符 non printable character,寄存器初值,计数器计数注意事项)

    1.设计定义 让8个led以100ns的速度循环闪烁. 2.设计输入 循环闪烁,还是周期问题,用时钟驱动,所以需要一个时钟信号clk.再给一个复位输入reset,八个输出led信号. 每100ns只有 ...

  6. 安卓LED跑马灯 超炫酷的表白神器破解版

    链接:https://pan.baidu.com/s/11Wxll4iLdcEPq0wUBK6Ong 提取码:all4

  7. 【Android】Android开发可以手动进行控制的跑马灯效果,包括从左到右,以及从右到左,

    作者:程序员小冰,GitHub主页:https://github.com/QQ986945193 新浪微博:http://weibo.com/mcxiaobing 首先给大家看一下我们今天这个最终实现 ...

  8. 自定义有焦点的TextView实现广告信息左右一直滚动的跑马灯效果

    import android.content.Context; import android.text.TextUtils; import android.util.AttributeSet; imp ...

  9. ARM开发(2)基于STM32的蜂鸣器

    基于STM32的蜂鸣器 一 蜂鸣器原理:  1.1 本实验实现1个蜂鸣器间隔1S鸣叫.  1.2 实验思路:根据电路图原理,给蜂鸣器相关引脚赋予高低电平,实现电路的导通,使蜂鸣器实现鸣叫或不鸣.  1 ...

随机推荐

  1. cpp(第三章)

    1.使用{}初始化时,{}若为空则默认初始化为0,至于防范类型转化错误 2.int对计算机而言最为自然的长度,处理起来效率最高的长度.int可能是short(16位)也可能是long(32位),在知道 ...

  2. 在VMware上安装ubuntu,并且SecureCRT远程连接

     工具: VMware:VMware-workstation-full_12.5.5.17738.exe Ubuntu镜像:ubuntu-16.04-server-amd64.iso 远程连接工具-- ...

  3. Java并发编程之synchronized

    在Java编程中,为了保证线程安全,有3种不同的思路1.互斥同步:包括synchronized和lock等. 2.非阻塞同步:如AtomicInteger的increaseAndGet()方法等. 3 ...

  4. R语言重要数据集分析研究——  数据集本身的分析技巧

    数据集本身的分析技巧           作者:王立敏           文章来源:网络 1.数据集 数据集,又称为资料集.数据集合或资料集合,是一种由数据所组成的集合. Data set(或dat ...

  5. forfiles命令批处理删除过期文件

    命令格式: forfiles.exe /p "D:\备份" /s /m *.zip /d -7 /c "cmd /c del @path" /p:指定目录 /s ...

  6. 【Android Developers Training】 20. 创建一个Fragment

    注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...

  7. form表单1的ajax验证

    form表单的ajax验证1: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"&g ...

  8. JAVA基础——编程练习(二)

    JAVA编程练习(二) 今天我为了巩固之前的java基础知识的学习,再次进行实战演习,编写了一个小小的java控制台程序,主要是运用java面向对象的思想来完成这个小项目. 一.项目背景介绍 根据所学 ...

  9. Object-C知识点 (三) 单例 蒙版 刷新 KVO底层

    #pragma mark - 单例方法(完整的方法) 系统的单例方法名称 sharedApplication defaultManager standardUserDefaults currentDe ...

  10. dubbo结构及通信简介

    一.导论 dubbo作为阿里开发优秀的rpc服务框架,现已广泛用于各大rpc项目之间的远程通信,虽然阿里现在已经没有维护dubbo的开发,但是其结构设计也是值得学习. 二.结构简介 这部分只是简单介绍 ...