找回密码
 立即注册

QQ登录

只需一步,快速开始

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

初次接触STM32之实验一点亮LED流水灯

[复制链接]
ID:60076 发表于 2014-5-4 20:26 | 显示全部楼层 |阅读模式
转自 :http://blog.sina.com.cn/s/blog_b44ad16b0101qzfm.html

刚刚接触STM32,感觉很陌生,加上我水平一般,各种寄存器搞得我头晕眼花,勉强看着文档,照猫画虎写了第一个程序,点亮流水灯程序。首先在用Keil编写的时候一共有四个文件夹,文件名分别是OBJ(存放编译时的过程文件还有生成的.hex文件),USER(编译程序时的用到的.c和.h),SYSTEM(程序里用到的几个函数,delay,sys,user),HARDWARE(你自己编写的.c和.h文件)。
有了这些就可以开始编写流水灯程序了,先新建了一个名为LED.c的文件,要点亮的两个LED分别对应的IO口为PB5和PE5只要控制好这两位就能实现所要的功能了,程序中的RCC(RESETand clockcontrol)是定义的一个结构体,使能端口时钟RCC->APB2ENR|=1<<3;在配置STM32外设时,任何时候都要先使能该外设的时钟,APB2ENR就是APB2总线上的外设时钟使能寄存器在第三和第六位置一,

GPIOx->CRL(STM32的CRL和CRH用来控制IO口的方向,ODR用来控制输出电平高低或者上下拉电阻,端口输出数据寄存器,该寄存器课读写,r可以知道当前端口的状态,IDR端口输入数据寄存器)。
  接着创建一个LED.H的文件,用到了#ifndef LED_H_//if notdefine  #endif 有两个关键的宏定义#define LED0PBout(5)  #define LED1 PEout(5)使用的是位带操作

回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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