80.数组与指针(下)

2024-08-19
| 12页
| 59人阅读
| 3人下载
普通

内容正文:

第80课:数组与指针(下) 陪孩子一起学Arduino ——机器人从零学起 1 本课任务: 1.学习二维数组,并学会操作二维数组中的元素 2.理解二维数组、指针数组、数组指针的区别 3.简单介绍Arduino类库的使用以及学习方法 创客童年 2 指针数组 定一个指针数组:char *c[] = {"abcd","efgh"}; 内存分析: 指针0 指针1 指针数组c 'a' 'b' 'c' 'd' '\0' 'e' 'f' 'g' 'h' '\0' 256 258 281 282 283 284 285 286 287 288 289 290 创客童年 输入:由用户输入(键盘或鼠标)输入数据。 处理:由程序控制(判断、循环)运算(数学、逻辑运算)数据。 输出:向显示器输出程序运算结果 3 二维数组 二维数组:数组中的元素也是数组 定义二维数组:char c[2][5] = {"abcd","efgh"} 'a' 'b' 'c' 'd' '\0' 'e' 'f' 'g' 'h' '\0' 数组0 数组1 数组c 内存分析: 创客童年 4 二维数组元素的操作 1.获取元素:通过数组名结合元素的下标来获取 c[0][0] c[1][3] 定义二维数组:char c[2][5] = {"abcd","efgh"} 'a' 'h' 2.修改元素:通过下标获取到元素,然后重新赋值完成修改 c[0][0] = 'x' 3.遍历输出:嵌套for循环完成数组遍历 for(int i=0;i<2;i++){ for(int j=0;j<5;j++){ Serial.println(c[i][j]); } } 创客童年 5 指针数组的遍历 char *c[4] = {"abcd","efgh"};void setup() { Serial.begin(9600); for(int i=0;i < 2;i++){ while(*c[i]){ Serial.println(*c[i]++); } }}void loop() {} 示例: 分解 char *c0 = "abcd";void setup() { Serial.begin(9600); while(*c0){ Serial.println(*c0++); }}void loop() {} 创客童年 6 数组指针 数组指针: 本质上是一个指针,指向了一个固定长度的数组,用数组指针可以 很方便地操作二维数组。 示例: char c[2][5] = {"abcd","efgh"};char (*ptr)[5] = c;//定义数组指针,指向二维数组cvoid setup() { Serial.begin(9600); Serial.println(*ptr++); Serial.println(*ptr);}void loop() {} 定义数组指针的格式:数据类型 (*指针名)[数组长度] 创客童年 7 练习 编写一个函数,在程序能实现自动转换字母大小的功能。 void setup() { Serial.begin(9600); char *c = "ab#cd"; upper(c); Serial.println(c);}void loop() {}void upper(char *ptr_c){ while(*ptr_c){ if(*ptr_c <= 96 || *ptr_c >= 122){ ptr_c++; continue; } *ptr_c -= 32; ptr_c++; }} 创客童年 8 Arduino类库的使用 程序使用类库提供额外的功能,如与硬件协同工作或操控数据等。 Arduino常用类库示例: EEPROM: 对EEPROM进行读和写 SPI: 与使用SPI(串行外设接口)总线的设备进行通信 Wire: 与使用TWI/I2C(串行外设接口)总线的设备进行通信 LiquidCrystal: 控制1602液晶显示屏(LCD) SD: 对 SD 卡进行读写操作 Servo: 控制模拟舵机 创客童年 9 类库程序示例:控制舵机 #include <Servo.h>//导入舵机库 Servo servo;//创建一个舵机对象servovoid setup(){ servo.attach(2);//设置舵机的控制引脚}void loop(){ //调用舵机的write函数控制舵机转动到0度 servo.write(0); delay(1000); //调用舵机的write函数控制舵机转动到180度 servo.write(180); delay(1000); } 创客童年 10 课后练习 通过图形化程序学习代码知识,熟悉常用类库及其函数的使用方法。 创客童年 11 THANKS 陪孩子一起学Arduino ——机器人从零学起 12 $$

资源预览图

80.数组与指针(下)
1
80.数组与指针(下)
2
80.数组与指针(下)
3
80.数组与指针(下)
4
80.数组与指针(下)
5
80.数组与指针(下)
6
相关资源
示范课
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。