打开之前创建的工程,如下图所示(keil工程的创建在之前的文章中有,不了解的同学可以翻一下上一篇文章。)
(上图是已经建立完成的工程)
然后,再次打开我们之前下载的对应开发板版本的例程包中的点亮LED灯的例程
(路径为:en.stsw-stm32077 \STM32L1xx_StdPeriph_Lib_V1.3.1 \project\STM32L1xx_StdPeriph_Examples \GPIO \IOToggle)
找到mian.c文件打开,全选复制里面的内容
再回到我们之前已经创建完毕的工程中,打开mian.c文件清空,并将GPIO文件中的main.c里面的内容粘贴到我们工程的mian.c中。
此时可以看到有很多错误存在,下面就要修改程序了(因为例程中的很多参数的定义并不是准确对应到每一个板子的,所以要修改。而为了实现最简单的led灯点亮功能,我们将多余的程序删除)
第一步,删除两段程序:
(上图为删除的第一段程序)
(上图为需要删除的第二段程序——while循环中的所有内容)
好了,现在主函数基本已经删除完毕了。
第二步,看一下板子,我用的是STM32L152c-discovery,然后我的两个LED灯的端口分别是PB7和PB6(后面的内容需要根据板子情况改)
所以,我要先把例程中的D端口改成B端口
(上述两处均要改成B,因为我的LED灯连接的是B端口)
第三步,配置输出模式
分别将 GPIO_PIN_X 和 GPIO_PIN_Y 改成 GPIO_Pin_6 和 GPIO_Pin_7 , 注意这里有两处要改,一处是将XY改成67,因为我的引脚是PB6和PB7,另一个是PIN要改成Pin,因为我这个版本的库函数中定义的模式是这样的。修改完毕后:
第四步,循环内容修改(控制led灯关键步骤)
在while中(刚才删除第二段程序的地方)加入上图所示程序。
第五步,添加Delay函数的声明(此处不知道是我之前不小心把声明误删了,还是例程中原本就没有,如果你的有,就不用添加了)
到此,程序修改完成,rebuild,然后烧写,就可以看到两个led灯循环闪烁了。
特别强调,这里面对程序的修改依赖于你板子本身的端口和连接情况,需要对号入座!(另外关于程序的解释都在上面的图片中了,只要两段很简单的程序就可以了!)
关键字:keil工程 点亮STM32 LED灯
引用地址:
创建keil工程并点亮STM32板子的LED灯
推荐阅读最新更新时间:2024-03-16 16:11
简析LED灯具可靠性测试方法及成本控制问题
近年来,由于 LED 的技术发展迅速,主要性能指标有很大提高,目前LED器件的发 光效 超过200lm/W,产业化水平达110~120lm/W,可以作为光源在照明领域推广应用,目前已进入室外景观照明、功能性照明、商用照明。 近年来,由于LED的技术发展迅速,主要性能指标有很大提高,目前LED器件的发光效超过200lm/W,产业化水平达110~120lm/W,可以作为光源在照明领域推广应用,目前已进入室外景观照明、功能性照明、商用照明等领域。在应用过程中,有几个主要技术和成本问题,如 LED照明 灯具的能效还不高,LED白光的光色在某些照明场合还不合适, LED灯具 的可靠性还不高,有些产品寿命很短,另外
[电源管理]
解决LED灯具设计难题的五大建议
进入2011年,澳大利亚已经率先禁止使用白炽灯,这为LED灯具的大规模普及揭开了序幕,另外,随着欧盟各国、日本、加拿大等国家将在2012年禁止使用白炽灯,led灯具的照明普及率会进一步提升,这让掘金绿色照明革命的中国数千家LED灯具厂商欢欣鼓舞――因为一个巨大的市场就要开启,而这次唱主角的是中国厂商。不过,应当看到,LED灯具要普及,不但需要大幅度降低成本,更需要解决能效和可靠性的难题,如何解决这些难题,Power Integrations市场营销副总裁Doug Bailey分享了高效高可靠LED灯具设计的五个忠告。 一、 不要使用双极型功率器件 Doug Bailey指出由于双极型功率器件比MOSFET便宜,一
[电源管理]
51单片机控制P2口8位LED灯左移C语言程序
此 程序控制 P2.0~P2.7口8个LED(P2.0~P2.7)灯逐个依次点这,又从(P2.7~P2.0)这样的顺序一直到全部被点亮。 #include reg52.h //头文件 void delay(unsigned int x)//延时函数 { while(x--); } void main(void) { unsigned char i;//定义一个无符号字型局部变量i取值范围0~255 delay(50000); P2=0xfe; for(i=0;i 8;i++)//加入for循环,表明for循环大括号中程序循环执行8次 { delay(50000);//调用延时函数,更
[单片机]
深陷秃头危机?这款防脱发LED自行车头盔了解一下
日本爱德兰丝公司推出了一款自行车安全头盔的产品HairRepro LED Premium,这款产品不仅可以为自行车骑手提供头部的保护,还能起到防脱发的功能。头发有问题?试一下这款头盔吧。 据介绍,HairRepro LED Premium内侧设有80颗红色 LED灯 ,这种经过特殊设计的灯在照射头皮可以促进毛发生长,起到防脱发的功效。 使用方法也很简单,只需要带上它,打开开关就行了。官方称内置的LED灯每次使用20分钟,可连续使用9次。 价格方面,HairRepro LED Premium的价格为135000日元,约合人民币8273元。
[嵌入式]
基于LED灯组的呼吸灯的设计
#include reg51.h void Delay1(int del) { int i,j; for(i=0; i del; i++) for(j=0; j 1827; j++) ; } void Delay(unsigned int t) { while(--t); } //函数声明 //P0=0x00; unsigned int z,y; void main (void)//主函数 { unsigned int CYCLE=400,PWM_LOW=0;//定义周期并赋值 while (1) //主循环 { /*--------整排LED灯呼吸
[单片机]
STM32G0开发笔记:LED灯示例
使用Platformio平台的libopencm3开发框架来开发STM32G0,下面为LED灯示例。 1 新建项目 在PIO的Home页面新建项目,项目名称led,选择开发板为上一次建立的自定义开发板型号 MonkeyPi_STM32_G070RB,开发框架选择libopencm3: 2 LED灯程序 在项目文件夹的src目录下新建文件main.c,内容如下: 1/** 2 * @file main.c 3 * @author MakerInChina (makerinchina.cn) 4 * @brief 5 * @version 0.01 6 * @date 2022-09-04 7 * 8 * @
[单片机]
嵌入式STM32学习笔记(2)——点亮LED灯及用中断让其闪烁
这里直接开始码代码了,至于前期的准备工作比如配置MDK-keil,或配置IAR等,大家可以在网上找对应的教程,这里不赘述了;直接讲代码如何撸吧,代码里我做了详细注释: 1)编译器IAR8,系统win10; 2)板子:STM32F103C8T6核心板,如下: 3)下载器:ST-LINK/V2仿真下载器; 4)板子上LED对应的引脚是GPIOC, GPIO_Pin_13;在IAR对应的stm32F103X模板DRIVER目录下添加:led.c,led.h,timer.c,timer.h文件,如下: 5)led.c 代码如下: #include led.h /*LED_G 驱动 GPIO 初始化函数*/ vo
[单片机]
内置电源LED灯 缺陷问题多
目前,几乎市场上所有LED日光灯的电源都是采用内置式。所谓内置式就是指电源可以放在灯管里面。这种内置式的最大优点就是可以做成直接替换现有的荧光灯管,而无需对原有电路作任何改动。所以内置式电源的形状通常都是做成长条形,以便塞进半圆形的灯管中去。内置式电源有两种,一种是非隔离式,一种是隔离式。
非隔离是指在LED负载端和220V输入端有直接连接,因此触摸负载就有触电的危险。220V和铝壳之间只有铝基板的极薄绝缘层的隔离,通常不容易通过CE和UL认证。
隔离式是指在输入端和输出端有隔离变压器隔离,这种变压器可能是工频也可能是高频的。但都能把输入和输出隔离起来。可以避免触电的危险。也容易通过CE或UL认证。
一
[电源管理]