1、Arduino初级课程学案 Arduino初级课程学案第一课 认识Arduino1、什么是单片机?它与个人计算机有什么不同?2、单片机有什么用?3、下图是Arduino UNO R3,请在图中标出:Digital In/Out Pins(数字输入/输出针脚);Analog Input Pins(模拟输入针脚);Atmega328p(微处理器型号);USB Port(USB端口);Power Supply(外接电源支持);PWM端口;参考电压调节端口;重启按钮;电源指示灯;串口通讯指示灯;接地针脚;电源输入(input voltage)针脚4、 Arduino是哪一年诞生的?主要是为那一类用户设
2、计的?5、 相比PC机,Arduino运算速度慢,存储空间小,为什么仍然在全世界掀起热潮?6、 Arduino单片机的技术指标是怎样的(以Arduino UNO R3为例)?7、 什么是数字I/O端口?什么是模拟I/O端口?Arduino有多少个数字I/O端口?有多少个模拟I/O端口?8、 Arduino是完全开源的,价格比较低,集成化开发环境也是免费的,大大降低了开发成本。高中同学设计制作了“教室环境自动换气装置”模型,用到的主要器材如下:(1)Arduino UNO R3开发板 1块;(2)SHARP生产PM2.5传感器(GP2Y1010F) 3个;(3)传感器扩展板 1块;(4)LCD1
3、602模块(I2C接口) 1个;(5)5V单向风扇 4个;(6)9V电池 2块;(7)杜邦线 40根;(8)热缩管 2米;(9)模型结构件 环保材料(硬纸箱、螺丝等)请大致估算一下,此模型的硬件成本多少钱?(区间范围即可)9、 有同学设计了一个智能鱼缸,具有以下功能:(1)自动监测鱼缸水温、PH值,溶氧量,并将数值显示在一块LCD上;(2)可通过网络远程监测数据,并在远程控制执行机构完成动作以调整PH值,溶氧量,水温等(两个伺服器完成);(3)可通过网络远程传送鱼缸图像;请详细列出应用Arduino来解决的方案中用到的器材和数量,并大致做一个报价(不包括鱼缸)。10、 通过网络学习,请至少列出
4、2个Arduino应用的具体实例(写出名称和简要功能说明)。11、 Arduino在物联网、智能家电、可穿戴电子设备等领域有着广泛的应用前景。请简要说出什么是物联网?什么是智能家电?什么是可穿戴智能电子设备?12、如何获得Arduino IDE(集成化开发环境)?著名的Arduino资源网站有哪些?Arduino初级课程学案第二课 Arduino基础I1、下图是Arduino IDE的快捷工具栏截图,请分别说明工具栏图标的功能。1 1 _2 _3 _4 _5 _6 _1、 对程序进行注释是非常好的编程习惯。Arduino IDE中注释的基本语法是1 _,_。2、 setup()和loop()两
5、个函数必不可少,这两个函数的功能分别是:void setup():_void loop():_3、 数字端口的返回值是_,对应电压是_;模拟端口的返回值是_,对应电压是_;4、 以下是常见的Arduino串口通信函数:请简要说出函数功能Serial.begin(int speed): _Serial.available():_Serial.read():_Serial.print(data): _使用Serial.print(data)函数的时候可以有几种发送方法,发送的分别是:1、 Serial.print(data):_2、 Serial.print(data,DEC):_3、 Seria
6、l.print(data,HEX):_4、 Serial.print(data,OCT):_5、 Serial.print(data,BIN):_6、 Serial.print(data,BYTE):_Serial.println(data): _5、 Arduino对数据的类型有严格的定义。下面的类型分别表示什么类型,范围:int _ byte _ long _ _ float_ 6、 Notepad+ 是一个相当优秀的轻量级文本编辑器。掌握在Notepad+中添加Arduino语法的方法(参考7、 下图为本课用到的扩展板和数字、模拟设备,熟悉数字端口和模拟端口设备的连接(特别注意针脚的连接
7、) 设备中GND针脚接Arduino扩展板_针脚;设备中VCC针脚接Arduino扩展板_针脚;数字设备OUT针脚接Arduino扩展板_针脚;模拟设备OUT针脚接Arduino扩展板_针脚;8、参考Arduino语法手册,试以下问题:莫尔斯码(摩尔斯电码由两种基本信号组成:短促的点信号“”,读“滴”;保持一定时间的长信号“”,读“嗒”。间隔时间:滴=1t,嗒=3t,滴嗒间=1t,字符间=3t,单词间=7t。);Arduino代码如下,用来模拟莫尔斯码求救信号(S.O.S),LED三短三长三短闪烁。请将程序补充完整,并上机验证。int ledPin=10;void setup() pinMod
8、e(ledPin,_);void loop() for (int x=0; x3; x+) /循环3次 digitalWrite(ledPin,_); delay(_);digitalWrite(ledPin, _); delay(_); for (int x=0; x3; x+) /循环3次 digitalWrite(ledPin, _); delay(_);digitalWrite(ledPin,,_); delay(_); for (int x=0; x3; x+) /循环3次 digitalWrite(ledPin,,_); delay(_);digitalWrite(ledPin,,
9、_); delay(_);delay(5000);Arduino初级课程学案第三课 Arduino基础II1、 早上从起床到出门需要洗脸刷牙(5min)、刷水壶(2min)、烧水(8min)、泡面(3min)、吃饭(10min)、听广播(8min)几个步骤,从下列选项中选最好的一种算法(SStep)(A)S1洗脸刷牙、S2刷水壶、S3烧水、S4泡面、S5吃饭、S6听广播(B)S1刷水壶、S2烧水同时洗脸刷牙、S3泡面、S4吃饭、S5听广播(C)S1刷水壶、S2烧水同时洗脸刷牙、S3泡面、S4吃饭同时听广播(D)S1吃饭同时听广播、S2泡面、S3烧水同时洗脸刷牙、S4刷水壶2、 程序设计中,常用
10、的结构有三种,分别是_。3、 已知两个单元分别存放了变量A和B的值,则可以实现变量BA,交换的算法是()。4、 流程图如下,若输入x=5,则输出y=_。5、 判断题:循环结构中一定包含条件结构。( )6、 下面的问题中必须用条件分支结构才能实现的是_。求面积为1的正三角形的周长;求方程ax+b=0 (a,b为常数)的根;求两个实数a,b中的最大者;求1+2+3+100的值;7、流程图如下,请用数学表达式描述程序功能:_。8、下面的程序框图循环体执行的次数是_。9、楼道灯优先控制模块是( )。A、声强模块 B、环境光模块10、光敏电阻具有在特定波长的光照下,其阻值迅速_的特性。( )A、增大 B
11、、减小 C、增大或者减小11、阅读程序,回答问题。void setup() for (int i=2; i=9; i+) pinMode(i,OUTPUT); /设置口2至口9为输出信号 void loop() for(int i=2; i9; i+) digitalWrite(i,HIGH); delay(500); digitalWrite(i,LOW); delay(500);从第1个灯到第8个灯亮,总共需要多长时间?( )A、0.5S B、4S C、3S D、3.5S 若要调整亮灯顺序为第8个灯,第7个,。第1个,for语句需要改写成 :_。12、声强和光强模块都有数字和模拟之分。楼道
12、灯控制中选用哪种比较合理?为什么?Arduino初级课程学案第四课 Arduino基础III1、 Arduino UNO R3板上,只有数字引脚_可以用作PWM用途。2、 Arduino UNO提供数字输入/输出,模拟输入功能,但没有模拟输出。如何在Arduino上实现模拟输出功能呢?3、如下图所示,假如输出3.75V时接通时间为45纳秒,那么输出2.5V的接通时间是_,输出1V的接通时间是_。4、要产生PWM信号,Aarduino用的函数是analogWrite(x,y)。这里( )是数字引脚的编号,而( )占空比的值,其值为0-255,0表示占空比为0%,255表示100%的占空比。A、y
13、 B、x5、全彩LED灯采用(R、G 、B)三种基本颜色的LED灯珠芯片,每个芯片都是一个单颜色的发光二极管。这些灯珠芯片以多种形式进行封装,每一组颜色都可以分开单独使用,并分别与驱动电路和单片机相连接。假设R、G、B分别接到Arduino数字端口3,5,6。要实现下面三幅图中的颜色,程序应当怎样写? _ _ _ _ _ _ _6、明确范围,但不确定具体值的现象称作随机现象。Arduino IDE使用random(min, max)函数来生成随机数。要生成一个 10,20 范围的随机数,正确的语句应为_。7、伪随机数存在精确重复的现象。如需要在一个random( )序列上生成真正意义的随机数,
14、在执行其子序列时使用 _函数预设一个绝对的随机输入,通常在应用时使用 _。8、_又称为可变电阻,范围比较小,一般为几欧姆至几千欧姆之间,阻值允许偏差5%和10%。这种电位器通常用于电源调节或大电流分压电路中。下图中,电位计的变化端应连接至Arduino_端口。绝大多数电位计都是_调节,电阻增大。9、参考源程序如下:val/4是何用意?int potpin=0; /定义模拟接口0int ledpin=11; /定义数字接口11(PWM 输出)int val=0; / 暂存来自传感器的变量数值void setup()pinMode(ledpin,OUTPUT); /定义数字接口11 为输出void
15、 loop()val=analogRead(potpin); / 读取传感器的模拟值并赋值给valanalogWrite(ledpin, val/4 );/ _delay(10);/延时10ms Arduino初级课程学案第五课 Arduino基础IV1、如下图,数字按钮模块是常用的数字输入设备。当按钮按下时,相应数字端口的电压为_;当按钮释放时,相应数字端口的电压为_。 2、按钮在实际使用过程中,会产生抖动现象。另外由于单片机处理速度很快,我们按下一次按钮,会造成多次接收。可以通过在程序相应位置增加语句_来解决这些问题。3、在使用Arduino做互动项目时,很多大电流或高电压的设备通常无法直
16、接用Arduino的数字IO口进行控制(如电磁阀、电灯、电机等),此时可以考虑用_方案解决。通常继电器模块既可以接入交流,也可以接入_。4、继电器模块1,2,3针脚分别接入Arduino UNO板的数字2号端口、5v、GND,直流用电器电源接入NC和COM。程序中使用digitalWrite(2,0),则对应电路图为_,使用digitalWrite(2,1),则对应电路图为_。 A B5、流程图如下,用数学表达式描述算法输出n:_。 6、按钮时常用的数字输入设备(传感器),还有很多数字输入类型的传感器可以用到Arduino创意项目中,请任意列举三个:_,_,_。7、三路抢答器程序如下,请将程序
17、中的空白部分,按照题意补充完整。int key1=2;int key2=3;int key3=4; /定义按键输入数字口int pinkLED = 6; int greenLED=7; int redLED = 8;/定义三个LED输出IO口,指示抢答的结果void setup()pinMode(pinkLED,OUTPUT);pinMode(greenLED,OUTPUT); pinMode(redLED,OUTPUT); /LED输出口置为输出状态pinMode(key1,INPUT);pinMode(key2,INPUT);pinMode(key3,INPUT); /三个按键置为输入di
18、gitalWrite(pinkLED,LOW);digitalWrite(greenLED,LOW); digitalWrite(redLED,LOW); void loop()int i ,j ,k;i=digitalRead(key1);j=digitalRead(key2);k=digitalRead(key3); /定义3个参数,分别存储3个按键的状态if(i=0) /如果1号按键按下,点亮pinkLEDdelay(10);digitalWrite(pinkLED,HIGH);digitalWrite(greenLED,LOW); digitalWrite(redLED,LOW); d
19、elay(1000); /延时一段时间if(j=0) /如果2号按键按下,点亮greenLEDdelay(10); _ _ _ _if(k=0) /如果3号按键按下,点亮redLED delay(10);digitalWrite(pinkLED,LOW);digitalWrite(greenLED,LOW);digitalWrite(redLED,HIGH); delay(1000);delay(500); /延时500毫秒,避免下一次触发影响本次结果8、上题中,如果出现三个按钮同时按下的巧合情况,则3个LED会出现_情况。要想避免同时按下抢答的情况,可以怎样处理?写出你的想法:_。9、分支(选择)结构中的条件,有时会比较复杂。例如,当a=1,b=1,c1三个条件都满足时触发,则分支结构中的逻辑表达式(条件)应为_。10、算术运算是有优先级别的,逻辑运算也有优先级别。按照优先级别从高到低,分别是_、_、_。为了避免运算顺序出现错误,通常的解决办法是将关系表达式用_包含起来。11、按钮模块是带有弹簧的,当我们松开按钮时自动断开。现在要实现快算按下后松开按钮开灯,再次快算按下后松开按钮关灯,以此类推。该如何实现?卸下你的算法思路。_
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1