如何快速玩转Arduino掌握嵌入式知识点

嵌入式技术

1368人已加入

描述

大家好,我是良许。

Arduino 就是个玩具,学 Arduino 就是浪费时间!

网络上有不少这样的论调,甚至有些人已经产生了开发板鄙视链,感觉自己会玩一些 STM32、ARM 开发板就有一种莫名的优越感,打心里鄙视玩 Arduino 开发板的人。

但实际上,据我观察,有这种论调的人,未必自己也能把 Arduino 玩明白。

在我看来,如果你想学好嵌入式,Arduino 不仅要玩,而且要深入去玩!

根据我自己这么多年玩 Arduino 的经验,我觉得大家一定要玩 Arduino 的原因只有两个字,那就是简单!

比如说,对于 IO 口的配置,Arduino  只需要一个简简单单的 pinMode() 函数就可以了。

STM32

但同样的需求,STM32  需要写这么多的代码!

void MX_GPIO_Init(void)
{
  //定义GPIO结构体变量
  GPIO_InitTypeDef GPIO_InitStruct = {0};
  //总线时钟使能
  /* GPIO Ports Clock Enable */
  __HAL_RCC_GPIOA_CLK_ENABLE();
 
  /*Configure GPIO pin Output Level */
  HAL_GPIO_WritePin(LED_GPIO_Port, LED_Pin, GPIO_PIN_SET);
 
 //配置GPIO结构体变量的值
  /*Configure GPIO pin : PtPin */
  GPIO_InitStruct.Pin = LED_Pin;
  GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
  GPIO_InitStruct.Pull = GPIO_NOPULL;
  GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_MEDIUM;
  HAL_GPIO_Init(LED_GPIO_Port, &GPIO_InitStruct);
 
}

这么多的代码,一下子就把很多初学者吓得肝胆俱裂!

初学者要的是什么?要的就是简单、快速上手!

而 Arduino 就具备这样的条件,它足够简单,初学者很快就能看到效果。

比如经典的点灯案例,Arduino 只需短短 5 行代码就搞定了,而且烧进去立马就能看到代码执行效果了。

void setup() {
  // initialize digital pin LED_BUILTIN as an output.
  pinMode(D4, OUTPUT);
}

// the loop function runs over and over again forever
void loop() {
  digitalWrite(D4, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(1000);                       // wait for a second
  digitalWrite(D4, LOW);    // turn the LED off by making the voltage LOW
  delay(1000);                       // wait for a second
}

这种在短时间内就可以得到的成就感,对初学者太重要了!

而同样的案例在 STM32 平台上操作,你们自己想想看,光是搭建一个模板工程,就花费了你们多少时间?有多少小伙伴,过了两天都还没办法把灯点亮?

想要完成一个嵌入式项目,你需要掌握的不仅仅是硬件那些知识。

就比如这个天气预报的小项目,你们猜猜看,这里应用了哪些知识?

首先,这个天气的数据是在和风天气平台获取的,所以,你需要先知道如何连接网络;

其次,连接上网络后,你还需要知道如何向和风天气平台请求数据,这就要涉及到 https 请求;

然后,请求得到的是一个 Json 包,你需要知道解析这个 Json 包;

再接下来,你要把解析来的数据显示在 OLED 屏幕上,所以你要了解 OLED 相关的知识,比如怎么点亮,怎么显示文本或图像;

进一步的,如果你使用了温湿度传感器获取当前环境的温湿度,那你还需要知识对应传感器的玩法。

STM32

有没发现,刚刚提到的这些东西,已经超出了 Arduino 的范畴?

你要玩转嵌入式,那么网络、 https、Json、OLED、各种传感器,就必须都要懂,而这些内容跟平台是没有关系的。

但是,正是因为 Arduino 足够简单,你写几行代码就可以看到效果,可以将精力放在原理的理解上。而且,做了几个这样的项目后,对你的业务能力也是有很大的提升。

所以,接下来我会在我的账号里更新一系列的 Arduino 教程,帮助大家快速玩转 Arduino,快速掌握嵌入式的知识点,快速入行。

而且,我也准备了一个文字版的教程,如果大家不方便看视频的话,直接看文档也行,我都已经写得很通俗易懂,而且是图文并茂,看起来更舒服。

编辑:黄飞

 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分