Skip to content

parallel101/arduino-tutor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

16aa345 · May 15, 2025

History

12 Commits
May 3, 2025
May 3, 2025
May 3, 2025
May 1, 2025
May 11, 2025
May 1, 2025
May 15, 2025
May 11, 2025
May 5, 2025
May 3, 2025
May 3, 2025
May 1, 2025
May 11, 2025
May 11, 2025
May 11, 2025
May 11, 2025
May 11, 2025
May 1, 2025
May 1, 2025
May 1, 2025
May 1, 2025
May 3, 2025
May 1, 2025
May 3, 2025
May 1, 2025
May 1, 2025
May 3, 2025
May 1, 2025
May 1, 2025
May 1, 2025
May 1, 2025
May 1, 2025
May 3, 2025
May 5, 2025
May 1, 2025
May 1, 2025
May 1, 2025
May 11, 2025
May 1, 2025

Repository files navigation

小彭老师带你入门单片机系列课程启动啦!单片机,或者说微型控制单元(MCU),相当于一个微型的计算机,具有丰富的外设接口,与平常司空见惯的桌面端程序不同,单片机可以通过引脚和高度模块化的外设操控现实世界,这也是我喜欢单片机的原因。本期我们选用了网络热门爆款开发板Arduino Uno作为平台,得益于Arduino良好的生态,可以直接用C++11对单片机进行编程,简洁的编程接口易上手,丰富的文档和网络教学资源,特别方便的Arduino IDE,使Arduino成了对新手最友好的开发板系列。

因为小彭老师之前做过许多期桌面端的C++课程,本系列课程会假定读者已经具有基本的C语言知识,从一个“桌面端程序员转战嵌入式工程师”的视角来入门单片机。我们不会像网上大多数课程那样,再从最基础的C语法讲起。只会着重突出嵌入式环境中C语言使用方式与桌面端的不同点,例如避免malloc等。以及介绍Arduino库提供的API的使用,如何利用GPIO引脚点亮LED、获取传感器输入,补全一些基本的电学知识。

注意:本视频没有任何商业合作恰饭订单,Arduino 完全是我出于兴趣自学的,目前我自己的岗位中也没有用到,只是帮助想要入门嵌入式的人。

项目源码:https://github.com/parallel101/arduino-tutor

建议购买“国产版”Arduino Uno,因为意大利原装进口版太贵,要122块多,而国产版平均只需22块左右,哪个便宜挑哪个,反正功能都一样,除非你希望获得信仰加成(正版受害者)。如果你讨厌Uno的方口和巨大的体型,也可以购买更迷你的Arduino Nano。

我还推荐同时买一个“传感器扩展板”,搜索“Arduino Uno扩展板”就可以找到了,扩展板插在Arduino上,就能用了。如果你买的是Arduino Nano或ESP32,也有相应的扩展板,插上以后,传感器布线会轻松很多。

以及要购买一些“杜邦线”用于连接模块与Arduino之间的引脚。如果你用传感器扩展板,只需要“母对母”的杜邦线的杜邦线就够了;如果你不用传感器扩展板而是想要直接插Arduino上,那么还需要一些“公对母”杜邦线;如果你玩面包板,那么还需要“公对公”的杜邦线。这就是为什么我强烈推荐使用传感器扩展板。

购买Arduino时,商家会提供额外的选项,带有许多额外的传感器一起卖给你。不建议购买附带一堆传感器的“豪华套餐”,因为这些传感器单独买得到,加起来也是差不多的价格,这些所谓“豪华套餐”其实都是商家自己去淘宝上买,然后重新给你打包,转手卖给你赚不懂的小白的差价的,并没有什么批发优惠。而且你选套餐的话,里面很多传感器你可能都不认识,不会用,根本用不上,比如火焰传感器,土壤传感器,你可能家里不养花,就根本没用。

所以除非你家财万贯且懒得思考哪个需要买,我会推荐单独购买一些常用传感器。本期课程中出现的传感器有:LED灯,红外感应模块,SG90舵机,N20减速马达,有源蜂鸣器,无源蜂鸣器,旋转电位器(其实就是个滑动变阻器)。

我是就是淘宝上在“树莓派零售商”买的Arduino Uno,结果被魅惑“豪华套餐”,捆绑买了一堆有的没的传感器,还附带了一大堆几千欧姆的电阻(太大了,根本用不上,LED只需要几百欧姆的电阻就行了)。更糟糕的是,对了一下他们的官方套餐列表,发现还有几个传感器缺了,让他们补发给我。

不过我的“Arduino Uno扩展版”也是“树莓派零售商”买的,这个倒是不错,比面包板好用多了,解决了正负接线柱只有两个不够用,接线满天乱飞的痛点。

话说你店名叫“树莓派”零售商却在卖“Arduino”全家桶是否有点NTR了(x

等熟悉单片机和数字电路的一些基本知识后,我们会切换到更高性价比也更复杂的STM32和ESP32等MCU就会更加得心应手,妈妈再也不用担心我找不到劳务派遣(x

要注意Arduino使用5V供电内部的逻辑电路也是5V,GPIO引脚输出的也都是5V逻辑电压,而常见的STM32和ESP32都是3.3V供电和3.3V逻辑电压,采购传感器模块时注意看是不是明确支持Arduino的5V电压哦!不过Arduino的GPIO输入范围很宽松,2.5V~6V的电压都会视为高电平(true),所以3.3V逻辑电压的GPIO输入也可以被Arduino正确识别。

以及注意LED的安全工作电压是3V左右,不能直接接在Arduino的5V输出上,需要串联一个220欧的电阻,否则LED会因为太亮而烧掉。但购买LED模块就没问题,因为LED模块上已经帮你算好电压公式,自带了一块贴片电阻,保证在输入5V时LED也能正常工作。

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published