这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » 软件与操作系统 » STM32之流水灯实验

共1条 1/1 1 跳转至

STM32之流水灯实验

菜鸟
2019-08-22 16:48:09     打赏

笔者这次所用的开发板是在中国移动物联网平台-onenet所申请的,说白了就是中国移动免费送的开发板,相比于其它的申请平台,onenet最大的优势就是不限量,有多少申请申请就送多少开发板,前提是必须要阐述理由,言之有理的都能申请成功,需要申请开发板的私信笔者“开发板”,笔者会回复官方申请地址。


除了麒麟开发板之外,官方还送了LCD1602显示屏、直流5V电源、ST-LINK下载器,还有一些接插件和线。


流水灯接线图

开发板还附带了设计的原理图,接下来我们来看一下关于麒麟开发板和流水灯有关的电路原理图。我们实验用了4个LED灯,4个LED灯不同色,我们只需要知道他们和单片机哪个引脚对应即可,用到的引脚分别为PA15、PA12、PC7、PC8.


四个LED灯以共阳极的方式和3.3V电源连接,当单片机给LED高电平时,由于没有压差(STM32单片机输出3.3V高电平),没有电流流过,此时LED灯是不亮的;当STM32输出低电平时,由于VCC3.3和单片机之间存在压差,此时LED上会有电流产生,此时LED灯会被点亮。


主函数

int main(void){Hardware_Init();//硬件初始化while(1){Led4_Set(LED_ON);DelayXms(500);Led4_Set(LED_OFF);//点亮LED4,并延时500ms,然后熄灭LED4Led5_Set(LED_ON);DelayXms(500);Led5_Set(LED_OFF);//点亮LED5,并延时500ms,然后熄灭LED5Led6_Set(LED_ON);DelayXms(500);Led6_Set(LED_OFF);//点亮LED6,并延时500ms,然后熄灭LED6Led7_Set(LED_ON);DelayXms(500);Led7_Set(LED_OFF);//点亮LED7,并延时500ms,然后熄灭LED7}}


上面的代码为流水灯的主函数,还有很多配置没有列举出来,因为就算是10篇文章也不一定能把底层的函数讲清楚,所以笔者只保留主函数,关于LED灯闪烁的思想,主函数里面完全能体现出来,如果需要LED流水灯源代码的,可以私信“LED源代码”。




关键词: “嵌入式”“嵌入式学习”“嵌入式资料”“嵌入式学习    

共1条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]