硬件连接
我接到了PA口0~7
参考代码
一些使用到的函数 可以参考我的这一篇文章
调用函数PAout(n)
#include "led.h"
#include "delay.h"
#include "sys.h"
int main(void)
{
unsigned char i = 0;
delay_init(); //延时函数初始化
LED_Init(); //初始化与 LED 连接的硬件接口
GPIO_SetBits(GPIOA, GPIO_Pin_All);//关闭所有的灯 注意A2开发版用的共阳极 这里是置1
while(1)
{
for(i = 0;i<8;i++)
{
PAout(i) = 0;
if(i>0)
PAout(i-1) = 1;
delay_ms(1000);
}
PAout(7) = 1;
}
}
使用寄存器BSRR
注意:BSRR是写入1有效。高十六位写入1表示输出低电平,低十六位写入1表示输出高电平
#include "led.h"
#include "delay.h"
#include "sys.h"
int main(void)
{
unsigned char i = 0;
delay_init(); //延时函数初始化
LED_Init(); //初始化与 LED 连接的硬件接口
GPIO_SetBits(GPIOA, GPIO_Pin_All);//关闭所有的灯 注意A2开发版用的共阳极 这里是置1
while(1)
{
for(i = 0;i<8;i++)
{
GPIOA->BSRR = 1<<(i+16);
GPIOA->BSRR = 1<<(i-1);
delay_ms(1000);
}
GPIOA->BSRR = 1<<7;
}
}