第一个跑马灯实验

如何新建一个工程

1.打开工程模板,删除其他不重要的库文件,把main()函数里的内容删除;
不用的外设固件库文件可以删掉,节省编译时间
在这里插入图片描述
rcc 时钟使能
usart 串口
在这里插入图片描述
复用映射
setbits 设置高电平 resetbits 低电平
2,在工程文件夹里新建一个HARDWARE文件夹,里边放你想写的程序标题(如LED)
3,在工程里添加这个文件夹
在这里插入图片描述
在这里插入图片描述
4,新建.c 和 .h 文件,然后添加到HARDWARE文件夹下面
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
5.因为定义了一个.h头文件,我们需要把他加到头文件路径里,
在这里插入图片描述
在这里插入图片描述

跑马灯硬件连接

yin在这里插入图片描述
因为要输出高低电平,所以采用推挽(上拉)输出(PS:推挽可以输出强高低电平,开漏只能输出强低电平)


程序步骤


在这里插入图片描述

.c文件

void LED_Init(void)
{    	 
  GPIO_InitTypeDef  GPIO_InitStructure;             //定义一个结构体

  RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOF, ENABLE);//时钟使能
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9 | GPIO_Pin_10;// LED的IO口
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;  //输出
  GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;  //推挽输出
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;
  GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;//上拉
  GPIO_Init(GPIOF, &GPIO_InitStructure);     //初始化完成
	GPIO_SetBits(GPIOF,GPIO_Pin_9 | GPIO_Pin_10);   //灯是灭的  初始化要给高电平
}

输入 输出 复用 模拟 四种模式
在这里插入图片描述
输出类型 推挽 或 开漏
在这里插入图片描述

main()函数

int main(void)
{
	delay_init(168);//延时函数初始化  根据时钟设置    一秒
	LED_Init();//LED初始化
	while(1)
	{
	GPIO_SetBits(GPIOF,GPIO_Pin_9|GPIO_Pin_10);//拉高同时灭
	delay_ms(500);
	GPIO_ResetBits(GPIOF,GPIO_Pin_9|GPIO_Pin_10);拉低同时亮
	delay_ms(500);
	}
	
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值