栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

1.0 点亮一个LED灯让其闪烁 (32初学,不定时更新)

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

1.0 点亮一个LED灯让其闪烁 (32初学,不定时更新)

        最近在学习stm32的知识,从今天起,会不定期更新一部分内容,记录自己的学习过程。

我所使用的编程软件是 MDK ,仿真就用Proteus 8.6来完成。相信大家对这两个软件都有一定的了解。我也就不多赘述,需要安装包的朋友可以在文末链接里取。

首先,既然是学HAL库版本的工程,我们就需要有一个HAL库的工程模板,网上有很多开源的资料,大家都可以找到。

点灯的关键就在于高低电平的转换。我们只需要对对应的I/O口进行配置,然后就可以使用了。在这里,我使用的是GPIOB的5口,即PB5.

    GPIO_InitTypeDef GPIO_Initure;
     
    HAL_Init();                    	 			//初始化HAL库
    Stm32_Clock_Init(RCC_PLL_MUL9);   			//设置时钟,72MHz

    __HAL_RCC_GPIOB_CLK_ENABLE();           	//开启GPIOB的时钟
	
    GPIO_Initure.Pin=GPIO_PIN_8; 				//PB5
    GPIO_Initure.Mode=GPIO_MODE_OUTPUT_PP;  	//推挽输出
    GPIO_Initure.Speed=GPIO_SPEED_FREQ_HIGH;    //高速
    HAL_GPIO_Init(GPIOB,&GPIO_Initure);

        I/O口配置完成后,我们需要进行高低电平的设置。

        HAL_GPIO_WritePin(GPIOB,GPIO_PIN_8,GPIO_PIN_SET);		//PB5置1  			
		delay_ms(20000);
		HAL_GPIO_WritePin(GPIOB,GPIO_PIN_8,GPIO_PIN_RESET);		//PB5置0
		delay_ms(20000);

        仿真的话,我们需要LED灯,RES电阻(100欧),stm32f103R6的单片机。

        在连接完成后,我们需要将工具栏的Design打开,

                

 

        点击configure Power Rail,

                ​​​​​​​        ​​​​​​​        

        然后点击Name的GND,将其改为VCC/VDD,

                                        

 

        然后将左下方方框中的VDDA和VSSA添加到右边的方框里,然后点击ok

        ​​​​​​​        ​​​​​​​        ​​​​​​​        

 

                                双击单片机,将Crystal Frequency改为72MHz。

 

然后在上方的Program File中选择对应的hex文件,点击ok,然后开始仿真即可。

软件链接:MDK5:链接:https://pan.baidu.com/s/1Va2JCjRYzx6N8bsNtk4z-w 
提取码:fj0e

                                PROTEUS8.6:链接:https://pan.baidu.com/s/1Kozn1TyZ2NijT_emfMZocg 
提取码:zu0s

                需要源码的兄弟需要可以私信我。

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/960384.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号