arduino学习笔记.doc
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- arduino 学习 笔记
- 资源描述:
-
arduino学习笔记 arduino学习笔记1 - 什么是arduino? 要了解arduino就先要了解什么是单片机,arduino平台的基础就是AVR指令集的单片机。 1、什么是单片机?它与个人计算机有什么不同? 一台能够工作的计算机要有这样几个部份构成:中央处理单元CPU(进行运算、控制)、随机存储器RAM(数据存储)、存储器ROM(程序存储)、输入/输出设备I/O(串行口、并行输出口等)。在个人计算机(PC)上这些部份被分成若干块芯片,安装在一个被称之为主板的印刷线路板上。而在单片机中,这些部份全部被做到一块集成电路芯片中了,所以就称为单片(单芯片)机,而且有一些单片机中除了上述部份外,还集成了其它部份如模拟量/数字量转换(A/D)和数字量/模拟量转换(D/A)等。 2、单片机有什么用? 实际工作中并不是任何需要计算机的场合都要求计算机有很高的性能,一个控制电冰箱温度的计算机难道要用酷睿处理器吗?应用的关键是看是否够用,是否有很好的性能价格比。如果一台冰箱都需要用酷睿处理起来进行温度控制,那价格就是天价了。 单片机通常用于工业生产的控制、生活中与程序和控制有关(如:电子琴、冰箱、智能空调等)的场合。 下图就是一个Atmega328P-PU单片机,基于AVR指令集的8位处理器,频率20MHz,存储器空间32KB。 什么是Arduino? Arduino是一个能够用来感应和控制现实物理世界的一套工具。 它由一个基于单片机并且开放源码的硬件平台,和一套为Arduino板编写程序 的开发环境组成。 Arduino可以用来开发交互产品,比如它可以读取大量的开关和传感器信号,并且可以控制各式各样的电灯、电机和其他物理设备。Arduino项目可以是单独的,也可以在运行时和你电脑中运行的程序(例如:Flash,Processing,MaxMSP)进行通讯。Arduino板你可以选择自己去手动组装或是购买已经组装好的;Arduino开源的IDE可以免费下载得到。 Arduino的编程语言就像似在对一个类似于物理的计算平台进行相应的连线,它基于处理多媒体的编程环境。 为什么要使用Arduino? 有很多的单片机和单片机平台都适合用做交互式系统的设计。例如:Parallax Basic Stamp, Netmedia’s BX-24,Phidgets,MIT’s Handyboard 和其它等等提供类似功能的。 所有这些工具,你都不需要去关心单片机编程繁琐的细节,提供给你的是一套容易使用的工具包。 Arduino同样也简化了同单片机工作的流程,但同其它系统相比Arduino在很多地方更具有优越性,特别适合老师,学生和一些业余爱好者们使用: 便宜 - 和其它平台相比,Arduino板算是相当便宜了。最便宜的Arduino版本可以自己动手制作,即使是组装好的成品,其价格也不会超过200元。 跨平台 - Arduino软件可以运行在Windows,Macintosh OSX,和Linux操作系统。大部分其它的单片机系统都只能运行在Windows上。 简易的编程环境 - 初学者很容易就能学会使用Arduino编程环境,同时它又能为高级用户提供足够多的高级应用。对于老师们来说,一般都能很方便的使用Processing 编程环境,所以如果学生学习过使用Processing 编程环境的话,那他们在使用Arduino开发环境的时候就会觉得很相似很熟悉。 软件开源并可扩展 - Arduino软件是开源的,对于有经验的程序员可以对其进行扩展。Arduino编程语言可以通过C++库进行扩展,如果有人想去了解技术上的细节,可以跳过Arduino语言而直接使用AVR C 编程语言(因为Arduino语言实际上是基于AVR C的)。类似的,如果你需要的话,你也可以直接往你的Arduino程序中添加AVR-C 代码。 硬件开源并可扩展 - Arduino板基于 Atmel 的ATMEGA8 和ATMEGA168/328 单片机。Arduino基于Creative Commons 许可协议,所以有经验的电路设计师能够根据需求设计自己的模块,可以对其扩展或改进。甚至是对于一些相对没有什么经验的用户,也可以通过制作试验板来理解Arduino是怎么工作的,省钱又省事。 Arduino基于AVR平台,对AVR库进行了二次编译封装,把端口都打包好了,寄存器啦、地址指针之类的基本不用管。大大降低了软件开发难度,适宜非专业爱好者使用。优点和缺点并存,因为是二次编译封装,代码不如直接使用AVR代码编写精练,代码执行效率与代码体积都弱于AVR直接编译。 性能: Digital I/O 数字输入/输出端口0—13。 Analog I/O 模拟输入/输出端口0-5。 支持ICSP下载,支持TX/RX。 输入电压:USB接口供电或者5V-12V外部电源供电。 输出电压:支持3.3V级5V DC输出。 处理器:使用Atmel Atmega168 328处理器,因其支持者众多,已有公司开发出来32位的MCU平台支持arduino。 目前arduino的控制板最新的为Arduino Uno,如下图: 国内使用比较多的为Arduino Duemilanove 2009,主要原因是Uno的usb控制芯片封装方式改变,制造成本上升,其他变化不大,性价比还是Arduino Duemilanove 2009比较好。 因其开源特性,生产arduino控制板的厂商众多,同样的Duemilanove 2009就有很多种颜色。 对于一些对电路板大小要求比较严格的地方,arduino团队提供了arduino Nano,此板体积做的非常小。如下图: arduino板子上基本端口如图描述,对几个比较特殊的端口下面详细说明下: VIN端口:VIN是input voltage的缩写,表示有外部电源时的输入端口。 AREF:Reference voltage for the analog inputs(模拟输入的基准电压)。使用analogReference()命令调用。 ICSP:也有称为ISP(In System Programmer),就是一种线上即时烧录,目前比较新的芯片都支持这种烧录模式,包括大家常听说的8051系列的芯片,也都慢慢采用这种简便的烧录方式。我们都知道传统的烧录方式,都是将被烧录的芯片,从线路板上拔起,有的焊死在线路板上的芯片,还得先把芯片焊接下来才能烧录。为了解决这种问题,发明了ICSP线上即时烧录方式。只需要准备一条R232线(连接烧录器),以及一条连接烧录器与烧录芯片针脚的连接线就可以。电源的+5V,GND,两条负责传输烧录信息的针脚,再加上一个烧录电压针脚,这样就可以烧录了。 arduino学习笔记2 通过Arduino编译器查看串口数据 最简单的例子: void setup() { Serial.begin(9600); // 打开串口,设置波特率为9600 bps } void loop() { int val; val=analogRead(5);//传感器接到模拟口5,数值根据自己的需要可变 Serial.println(val,DEC);//从串口发送字符串并换行 delay(100); } 如果电路安装正确,按照示例代码运行、上传,然后点击编译器的Serial Monitor按钮,就可以看到从代码定义的输入口(这儿是模拟口5)获取的数据了。 arduino学习笔记3 arduino语言 Arduino语言是建立在C/C++基础上的,其实也就是基础的C语言,Arduino语言只不过把AVR单片机(微控制器)相关的一些参数设置都函数化,不用我们去了解他的底层,让我们不了解AVR单片机(微控制器)的朋友也能轻松上手。 在与Arduino DIYER接触的这段时间里,发现有些朋友对Arduino语言还是比较难入手,那么这里我就简单的注释一下Arduino语言(本人也是半罐子水,有错的地方还请各位指正)。 /*************基础C语言*************/ 关键字: if if...else for switch case while do... while break continue return goto 语法符号: ; {} // /* */ 运算符: = + - * / % == != < > <= >= && || ! ++ -- += -= *= /= 数据类型: boolean 布尔类型 char byte 字节类型 int unsigned int long unsigned long float double string array void 数据类型转换: char() byte() int() long() float() 常量: HIGH | LOW 表示数字IO口的电平,HIGH 表示高电平(1),LOW 表示低电平(0)。 INPUT | OUTPUT 表示数字IO口的方向,INPUT 表示输入(高阻态),OUTPUT 表示输出(AVR能提供5V电压 40mA电流)。 true | false true 表示真(1),false表示假(0)。 /******************************************/ 以上为基础c语言的关键字和符号,有c语言基础的都应该了解其含义,这里也不作过多的解释。 /*************Arduino 语言*************/ 结构 void setup() 初始化变量,管脚模式,调用库函数等 void loop() 连续执行函数内的语句 功能 数字 I/O pinMode(pin, mode) 数字IO口输入输出模式定义函数,pin表示为0~13, mode表示为INPUT或OUTPUT。 digitalWrite(pin, value) 数字IO口输出电平定义函数,pin表示为0~13,value表示为HIGH或LOW。比如定义HIGH可以驱动LED。 int digitalRead(pin) 数字IO口读输入电平函数,pin表示为0~13,value表示为HIGH或LOW。比如可以读数字传感器。 模拟 I/O int analogRead(pin) 模拟IO口读函数,pin表示为0~5(Arduino Diecimila为0~5,Arduino nano为0~7)。比如可以读模拟传感器(10位AD,0~5V表示为0~1023)。 analogWrite(pin, value) - PWM 数字IO口PWM输出函数,Arduino数字IO口标注了PWM的IO口可使用该函数,pin表示3, 5, 6, 9, 10, 11,value表示为0~255。比如可用于电机PWM调速或音乐播放。 扩展 I/O shiftOut(dataPin, clockPin, bitOrder, value) SPI外部IO扩展函数,通常使用带SPI接口的74HC595做8个IO扩展,dataPin为数据口,clockPin为时钟口,bitOrder为数据传输方向(MSBFIRST高位在前,LSBFIRST低位在前),value表示所要传送的数据(0~255),另外还需要一个IO口做74HC595的使能控制。 unsigned long pulseIn(pin, value) 脉冲长度记录函数,返回时间参数(us),pin表示为0~13,value为HIGH或LOW。比如value为HIGH,那么当pin输入为高电平时,开始计时,当pin输入为低电平时,停止计时,然后返回该时间。 时间函数 unsigned long millis() 返回时间函数(单位ms),该函数是指,当程序运行就开始计时并返回记录的参数,该参数溢出大概需要50天时间。 delay(ms) 延时函数(单位ms)。 delayMicroseconds(us) 延时函数(单位us)。 数学函数 min(x, y) 求最小值 max(x, y) 求最大值 abs(x) 计算绝对值 constrain(x, a, b) 约束函数,下限a,上限b,x必须在ab之间才能返回。 map(value, fromLow, fromHigh, toLow, toHigh) 约束函数,value必须在fromLow与toLow之间和fromHigh与toHigh之间。 pow(base, exponent) 开方函数,base的exponent次方。 sq(x) 平方 sqrt(x) 开根号 三角函数 sin(rad) cos(rad) tan(rad) 随机数函数 randomSeed(seed) 随机数端口定义函数,seed表示读模拟口analogRead(pin)函数 。 long random(max) 随机数函数,返回数据大于等于0,小于max。 long random(min, max) 随机数函数,返回数据大于等于min,小于max。 外部中断函数 attachInterrupt(interrupt, , mode) 外部中断只能用到数字IO口2和3,interrupt表示中断口初始0或1,表示一个功能函数,mode:LOW低电平中断,CHANGE有变化就中断,RISING上升沿中断,FALLING 下降沿中断。 detachInterrupt(interrupt) 中断开关,interrupt=1 开,interrupt=0 关。 中断使能函数 interrupts() 使能中断 noInterrupts() 禁止中断 串口收发函数 Serial.begin(speed) 串口定义波特率函数,speed表示波特率,如9600,19200等。 int Serial.available() 判断缓冲器状态。 int Serial.read() 读串口并返回收到参数。 Serial.flush() 清空缓冲器。 Serial.print(data) 串口输出数据。 Serial.println(data) 串口输出数据并带回车符。 /**********************************/ /************Arduino语言库文件*************/ 官方库文件 EEPROM - EEPROM读写程序库 Ethernet - 以太网控制器程序库 LiquidCrystal - LCD控制程序库 Servo - 舵机控制程序库 SoftwareSerial - 任何数字IO口模拟串口程序库 Stepper - 步进电机控制程序库 Wire - TWI/I2C总线程序库 Matrix - LED矩阵控制程序库 Sprite - LED矩阵图象处理控制程序库 非官方库文件 DateTime - a library for keeping track of the current date and time in software. Debounce - for reading noisy digital inputs (e.g. from buttons) Firmata - for communicating with applications on the computer using a standard serial protocol. GLCD - graphics routines for LCD based on the KS0108 or equivalent chipset. LCD - control LCDs (using 8 data lines) LCD 4 Bit - control LCDs (using 4 data lines) LedControl - for controlling LED matrices or seven-segment displays with a MAX7221 or MAX7219. LedControl - an alternative to the Matrix library for driving multiple LEDs with Maxim chips. Messenger - for processing text-based messages from the computer Metro - help you time actions at regular intervals MsTimer2 - uses the timer 2 interrupt to trigger an action every N milliseconds. OneWire - control devices (from Dallas Semiconductor) that use the One Wire protocol. PS2Keyboard - read characters from a PS2 keyboard. Servo - provides software support for Servo motors on any pins. Servotimer1 - provides hardware support for Servo motors on pins 9 and 10 Simple Message System - send messages between Arduino and the computer SSerial2Mobile - send text messages or emails using a cell phone (via AT commands over software serial) TextString - handle strings TLC5940 - 16 channel 12 bit PWM controller. X10 - Sending X10 signals over AC power lines /****************************************/ arduino学习笔记4 数据类型 有多种类型的变量,如下所述 boolean 布尔 char 字符 byte 字节 int 整数 unsigned int 无符号整数 long 长整数 unsigned long 无符号长整数 float 浮点 double 双字节浮点 string 字符串 array 数组 arduino学习笔记5 Arduuino复合运算符 += , -= , *= , /= Description描述 Perform a mathematical operation on a variable with another constant or variable. The += (et al) operators are just a convenient shorthand for the expanded syntax, listed below. 对一个变量和另一个参数或变量完成一个数学运算。+=(以及其他)可以缩短语法长度。 Syntax语法 x += y; // equivalent to the expression x = x + y; // 等价于 x = x + y; x -= y; // equivalent to the expression x = x - y; // 等价于 x = x - y; x *= y; // equivalent to the expression x = x * y; // 等价于 x = x * y; x /= y; // equivalent to the expression x = x / y; // 等价于 x = x / y; Parameters参数 x: any variable type x:任何变量类型 y: any variable type or constant y:任何变量类型或常数 Examples范例 x = 2; x += 4; // x now contains 6 // x现在为6 x -= 3; // x now contains 3 // x现在为3 x *= 10; // x now contains 30 // x现在为30 x /= 2; // x now contains 15 // x现在为15 Syntax语法 x++; // increment x by one and returns the old value of x // 将x的值加1并返回原来的x的值。 ++x; // increment x by one and returns the new value of x // 将x的值加1并返回现在的x的值。 x-- ; // decrement x by one and returns the old value of x // 将x的值减1并返回原来的x的值。 --x ; // decrement x by one and returns the new value of x // 将x的值减1并返回现在的x的值。 Parameters参数 x: an integer or long (possibly unsigned) x:一个整数或长整数(可以无符号) Returns返回 The original or newly incremented / decremented value of the variable. 返回变量原始值或增加/消耗后的新值。 Examples范例 x = 2; y = ++x; // x now contains 3, y contains 3 // x现在为3,y为3 y = x--; // x contains 2 again, y still contains 3 // x现在仍然为2,y将为3 arduino学习笔记6 Arduino基础 在学语言之间,还要做的一个功课就是要明白程序的构架,这个也同样简单,大体可分为几个部分。 1、声明变量及接口名称(int val;int ledPin=13;)。 2、setup()——函数在程序开始时使用,可以初始化变量、接口模式、启用库等(例如:pinMode(ledPin,OUTUPT);)。 3、loop()——在setup()函数之后,即初始化之后,loop() 让你的程序循环地被执行。使用它来运转Arduino。 接下来就开始学习一下几个基本函数。 1、pinMode(接口名称,OUTPUT或INPUT)将——接口定义为输入或输出接口,用在setup()函数里。 2、digitalWrite(接口名称, HIGH或LOW)——将数字接口值至高或低。 3、digitalRead(接口名称)——读出数字接口的值。 4、analogWrite(接口名称, 数值)——给一个接口写入模拟值(PWM波)。对于 ATmega168芯片的Arduino(包括Mini或BT),该函数可以工作于 3, 5, 6, 9, 10和 11号接口。老的 ATmega8芯片的USB和 serial Arduino仅仅支持 9, 10和11号接口。 5、analogRead(接口名称)——从指定的模拟接口读取值,Arduino对该模拟值进行10-bit的数字转换,这个方法将输入的0-5电压值转换为 0到1023间的整数值。 6、delay()——延时一段时间,delay(1000)为一秒。 7、Serial.begin(波特率)——设置串行每秒传输数据的速率(波特率)。在同计算机通讯时,使用下面这些值:300, 1200, 2400, 4800, 9600, 14400, 19200, 28800, 38400, 57600或 115200。你也可以在任何时候使用其它的值,比如,与0号或1号插口通信就要求特殊的波特率。用在setup()函数里 8、Serial.read()——读取持续输入的数据。 9、Serial.print(数据,数据的进制)——从串行端口输出数据。Serial.print(数据)默认为十进制等于Serial.print(数据,DEC)。 10、Serial.println(数据,数据的进制)——从串行端口输出数据,跟随一个回车和一个换行符。这个函数所取得的值与 Serial.print()一样。 以上几个函数是常用基本函数,还有很多以后会慢慢学习 arduino学习笔记7函数 输入输出函数 Arduino 内含了一些处理输出与输入的切换功能,相信已经从书中程式范例略知一二。 pinMode(pin, mode) 将数位脚位(digital pin)指定为输入或输出。 范例 : pinMode(7,INPUT); // 将脚位 7 设定为输入模式 digitalWrite(pin, value) 将数位脚位指定为开或关。脚位必须先透过pinMode明示为输入或输出模式digitalWrite才能生效。 范例 : digitalWrite(8,HIGH); //将脚位 8设定输出高电位 int digitalRead(pin) 将输入脚位的值读出,当感测到脚位处于高电位时时回传HIGH,否则回传LOW。 范例 : val = digitalRead(7); // 读出脚位 7 的值并指定给 val int analogRead(pin) 读出类比脚位的电压并回传一个 0到1023 的数值表示相对应的0到5的电压值。 范例 : val = analogRead(0); //读出类比脚位 0 的值并指定给 val变数 analogWrite(pin, value) 改变PWM脚位的输出电压值,脚位通常会在3、5、6、9、10与11。Value变数范围0-255,例如:输出电压2.5伏特(V),该值大约是128。 范例 : analogWrite(9,128); // 输出电压约2.5伏特(V) unsigned long pulseIn(pin, value) 设定读取脚位状态的持续时间,例如使用红外线、加速度感测器测得某一项数值时,在时间单位内不会改变状态。 范例 : time = pulsein(7,HIGH); // 设定脚位7的状态在时间单位内保持为HIGH shiftOut(dataPin, clockPin, bitOrder, value) 把资料传给用来延伸数位输出的暂存器,函式使用一个脚位表示资料、一个脚位表示时脉。bitOrder用来表示位元间移动的方式(LSBFIRST最低有效位元或是MSBFIRST最高有效位元),最后value会以byte形式输出。此函式通常使用在延伸数位的输出。 范例 : shiftOut(dataPin, clockPin, LSBFIRST, 255); 时间函数 控制与计算晶片执行期间的时间 unsigned long millis() 回传晶片开始执行到目前的毫秒 范例: duration = millis()-lastTime; // 表示自"lastTime"至当下的时间 delay(ms) 暂停晶片执行多少毫秒 范例: delay(500); //暂停半秒(500毫秒) delay Microseconds(us) 暂停晶片执行多少微秒 范例: delayMicroseconds(1000); //暂停1豪秒 数学函式 三角函数以及基本的数学运算 min(x, y) 回传两数之间较小者 范例: val = min(10,20); // 回传10 max(x, y) 回传两数之间较大者 范例: val = max(10,20); // 回传20 abs(x) 回传该数的绝对值,可以将负数转正数。 范例: val = abs(-5); // 回传5 constrain(x, a, b) 判断x变数位于a与b之间的状态。x若小于a回传a;介于a与b之间回传x本身;大于b回传b 范例: val = constrain(analogRead(0), 0, 255); // 忽略大于255的数 map(value, fromLow, fromHigh, toLow, toHigh) 将value变数依照fromLow与fromHigh范围,对等转换至toLow与toHigh范围。时常使用于读取类比讯号,转换至程式所需要的范围值。 例如: val = map(analogRead(0),0,1023,100, 200); // 将analog0 所读取到的讯号对等转换至100 – 200之间的数值。 double pow(base, exponent) 回传一个数(base)的指数(exponent)值。 范例: double x = pow(y, 32); // 设定x为y的32次方 double sqrt(x) 回传double型态的取平方根值。 范例: double a = sqrt(1138); // 回传1138平方根的近似值 33.73425674438 double sin(rad) 回传角度(radians)的三角函数sine值。 范例: double sine = sin(2); // 近似值 0.90929737091 double cos(rad) 回传角度(radians)的三角函数cosine值。 范例: double cosine = cos(2); //近似值-0.41614685058 double tan(rad) 回传角度(radians)的三角函数tangent值。 范例: double tangent = tan(2); //近似值-2.18503975868 乱数函式 产生乱数 randomSeed(seed) 事实上在Arduino里的乱数是可以被预知的。所以如果需要一个真正的乱数,可以呼叫此函式重新设定产生乱数种子。你可以使用乱数当作乱数的种子,以确保数字以随机的方式出现,通常会使用类比输入当作乱数种子,藉此可以产生与环境有关的乱数(例如:无线电波、宇宙雷射线、电话和萤光灯发出的电磁波等)。 范例: randomSeed(analogRead(5)); // 使用类比输入当作乱数种子 long random(max) long random(min, max) 回传指定区间的乱数,型态为long。如果没有指定最小值,预设为0。 范例: long randnum = random(0, 100); // 回传0 – 99 之间的数字 long randnum = random(11); // 回传 0 -10之间的数字 序列通讯 你可以在第五章看见一些使用序列埠与电脑交换讯息的范例,以下是函式解释。 Serial.begin(speed) 你可以指定Arduino从电脑交换讯息的速率,通常我们使用9600 bps。当然也可以使用其他的速度,但是通常不会超过115,200 bps(每秒位元组)。 范例: Serial.begin(9600); Serial.print(data) Serial.print(data, encoding) 经序列埠传送资料,提供编码方式的选项。如果没有指定,预设以一般文字传送。 范例: Serial.print(75); // 列印出 "75" Serial.print(75, DEC); //列印出 "75" Serial.print(75, HEX); // "4B" (75 的十六进位) Serial.print(75, OCT); // "113" (75 in的八进位) Serial.print(75, BIN); // "1001011" (75的二进位) Serial.print(75, BYTE); // "K" (以byte进行传送,显示以ASCII编码方式) Serial.println(data) Serial.println(data, encoding) 与Serial.print()相同,但会在资料尾端加上换行字元( )。意思如同你在键盘上打了一些资料后按下Enter。 范例: Serial.println(75); //列印出"75 " Serial.println(75, DEC); //列印出"75 " Serial.println(75, HEX); // "4B " Serial.println(75, OCT); // "113 " Serial.println(75, BIN); // "1001011 " Serial.println(75, BYTE); // "K " int Serial.available() 回传有多少位元组(bytes)的资料尚未被read()函式读展开阅读全文
咨信网温馨提示:1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。




arduino学习笔记.doc



实名认证













自信AI助手
















微信客服
客服QQ
发送邮件
意见反馈



链接地址:https://www.zixin.com.cn/doc/5585418.html