15456| 4
|
[入门] Arduino第一课让小灯闪烁起来 |
本帖最后由 西红柿酱 于 2018-4-19 14:43 编辑 作为一名大三闲散人员,机缘巧合之下(经老师介绍)去大学附近的一所初中教他们Arduino课程。那所学校老师胆子也大,看我上了一节课后说:“这个学期的课就你了!”然后自己带竞赛去了。。。。。。。在这里我会写下我上课的内容以及可爱的学生易犯错的地方,如果有不足的地方希望大家不吝指正。 -------------------------------------------我是传说中的分界线--------------------------------------------------------- 第一课,按照传统先介绍arduino的起源。Massimo Banzi是意大利的一名设计师 ,他经常光临这家酒吧,而他将这个电子产品计划命名为Arduino以纪念这个地方。Arduino在意大利语中的意思是强壮的朋友。(花2分钟介绍自己花+3分钟讲一讲arduino的意思。总课时还有85分钟) ---------------------------------------------------------------------------------------------------------------------------------- 第二部分:开始介绍arduino uno 板子,它分为2个部分数字口和模拟口。 首先介绍数字口,模拟口留在后面讲 (1分钟介绍+留2分钟给学生看板子。总课时还有82分钟) 第三部分:讲解函数的使用方法(和数学一样套公式) pinMode(pin,mode); //pin=arduino上的数字口对应的引脚,mode=模式(INPUT输入模式/OUTPUT输出模式)pinMode(13,OUTPUT);//将板子的13号数字口,设为输出模式。(5分钟讲解,5分钟留给学生做笔记和消化,总课时还有72分钟) 设置好输出或输入模式后我们学第二个函数 digitalWrite(pin,HIGH/LOW);//pin=数字口对应的引脚,HIGH为高电平 = 打开灯 = 数字信号1;LOW为低电平 = 关灯 = 0。 digitalWrite(13,HIGH);//将Arduino的13号数字口输出高电平,点亮13号数字口的灯 digitalWrite(13,LOW);//将Arduino的13号数字口输出低电平,关闭13号数字口的灯 (10分钟讲解,5分钟留给学生做笔记消化,总课时还有57分钟) 设置好输出高电平和低电平开始学习第三个函数 delay();//延迟函数,保持原样直到进行下一条程序,单位毫秒(1000ms=1s) delay(1000);//保持状态1秒钟(1分钟讲解+2分钟笔记消化,总课时还有54分钟) 第四部分:完整程序 [mw_shl_code=applescript,true]void setup() { pinMode(13,OUTPUT);//设置输出 } void loop() { digitalWrite(13,HIGH);//输出高电平,亮 delay(1000);//1秒 digitalWrite(13,LOW);//输出低电平,灭 delay(1000);//1秒 }[/mw_shl_code] 好了,到现在我们理一理思路。首先小灯泡闪烁的步骤是=13号口输出+13号口高电平(亮)+1秒 +13号口低电平(灭)+1秒 连起来就是一句话。13号数字口,输出高电平一秒钟,输出低电平一秒钟。(10分钟笔记消化,总课时还有44分钟) 第五部分:实物连线图 (2分钟理解 总课时还有42分钟) 第六部分上机实践(42分钟) 上机实践我就说说同学们会出错的地方把。我先说一下检查顺序吧从上往下看,从左往右看。 错误程序示例 [mw_shl_code=applescript,true]//Mode的M要大写,Write的W要大写 void setup() { pinmode(13,OUTPUT);//设置输出 } void loop() { digitalwrite(13,HIGH);//输出高电平,亮 delay(1000);//1秒 digitalwrite(13,LOW);//输出低电平,灭 delay(1000);//1秒 }[/mw_shl_code] [mw_shl_code=applescript,true]//一句话写完以后要用英文;结尾,告诉电脑这句话结束了 void setup() { pinMode(13,OUTPUT)//设置输出 } void loop() { digitalWrite(13,HIGH)//输出高电平,亮 delay(1000)//1秒 digitalWrite(13,LOW)//输出低电平,灭 delay(1000)//1秒 }[/mw_shl_code] [mw_shl_code=applescript,true]//函数不能有空格 [mw_shl_code=applescript,true]//单词拼写要准确void setup() { pin Mode(13,OUTPUT);//设置输出 } void loop() { digital Write (13,HIGH);//输出高电平,亮 delay(1000);//1秒 digital Write (13,LOW);//输出低电平,灭 delay(1000);//1秒 }[/mw_shl_code] void setup() { pinMode(13,OUTPUT);//设置输出 } void loop() { digitalWrite (13,HIGH);//输出高电平,亮 dleay(1000);//1秒 digitalWrite (13,LOW);//输出低电平,灭 dleay(1000);//1秒 }[/mw_shl_code] |
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed