【LinkIt 7697物联网开发板试用体验】+4.新建工程&点灯

  • lygo
  • LV4工程师
  • |      2017-09-21 19:06:26
  • 浏览量 1345
  • 回复:3
本帖最后由 lygo 于 2017-9-21 19:11 编辑 大家好,上一篇帖子介绍了ardunio编程的基本语法以及一些ardunio IDE框架,那么这一篇帖子就开始介绍如何编程啦。那么接下来就进入正题吧: 首先这篇帖子有以下2个内容:1、新建工程2、点亮开发板的led灯(USR) 详细步骤如下: 一、新建工程:在这里虽说上一篇帖子提及到,但是并没有很仔细的讲解。1、首先打开IDE进行如下操作: 那么就出现了下面这个界面: 然后就开始点个灯玩玩吧。在点灯之前还是有必要看一下原理图的,因为毕竟你得知道led灯是挂在哪个引脚上的吧,原理图如下: 再看下面这张图: 我们可以得到led灯是挂在p7上的。接下来就编写代码吧: 2、点灯的代码如下:
#define PIN 7

void setup() {

  // put your setup code here, to run once:

  pinMode(PIN,OUTPUT);

}



void loop() {

  // put your main code here, to run repeatedly:

  digitalWrite(PIN,HIGH);

  delay(1000);

  digitalWrite(PIN,LOW);

  delay(1000); 

}
二、程序分析: 1、在程序的最开头定义了一个宏定义义,关于为什么是p7引脚,上面已经说明了,就不需要详细说明了。 2、程序框架:其实这里前面都讲过的,但是这里我还是稍微说明一下吧:Arduino程序结构由两部分构成(1)setup():在Arduino程序运行时首先要调用setup()函数,用于初始化变量、设置针脚的输出/输入类型、配置串口、引入类库文件等等。每次 Arduino 上电或重启后,setup()函数只运行一次。 (2) loop():在setup()函数中初始化和定义变量,然后执行loop()函数。顾名思义,该函数在程序运行过程中不断地循环,根据反馈,相应地改变执行情况。通过该函数动态控制Arduino主控板。这两个函数在Arduino编程中是必须的,缺一不可。对于习惯使用C/C++的程序员来讲,这个程序结构比较奇葩。其实是Arduino编译器将一些初始化代码集成在了内部,为从来没有接触过编程的初学者提供了方便。实际内部完整代码可能是下面的格式:
int main(void)

        {

          init();//初始化

          setup();//执行初始化

          for(;;)   //一直循环

          loop(); //相当于在一直循环

          return 0;

        }
(3)、系统上电后,首先执行init函数,对硬件进行初始化操作。然后再去执行setup函数,最后重复去执行loop函数。要点亮LED,只需让D13输出高电平即可;反之就输出低电平;
pinMode(PIN,OUTPUT);设置为输出模式。

digitalWrite(PIN,HIGH);digitalWrite(PIN,LOW);设置管脚输出高电平或低电平。

delay(1000)     延时函数,延时1000ms,即1s。
对于51单片机它就相当于这段代码:

sbit pin = P1^1;

Pin =1;

Pin = 0;

而对于STM32来说的话:

无非就是设置输入和输出模式了,然后将引脚置低或者置高。、

GPIO_SetBits();

void GPIO_SetBits(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin)

void GPIO_ResetBits(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin)

void GPIO_WriteBit(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin, BitAction BitVal)
三、实验现象: 编译并下载程序后,可以看到UNO PLUS开发板的USER LED会以2s为周期闪烁。如下图: 好的,本次实验完成,虽说十分简单,但还是花了点时间的。。。最后,谢谢大家!!!!
  • 0
  • 收藏
  • 举报
  • 分享
我来回复

登录后可评论,请 登录注册

所有回答 数量:2
汉云 2017-09-22
当初Arduino安装支持包的速度很快,不知道现在怎么样了
1   回复
举报
发布
lygo 回复 2017-09-23
哦哦 这样啊:lol
0   回复
举报
lygo 2017-09-21
额 本来后面只有两张图片的,结果自己改了改反倒是有三张了,不想改了,就这样吧。(话说我不是用了这三张图片蛮)
0   回复
举报
发布
x
收藏成功!点击 我的收藏 查看收藏的全部帖子