“(SKU:RB-01C030)CarDuino Leonardo”的版本間的差異

來(lái)自ALSROBOT WiKi
跳轉(zhuǎn)至: 導(dǎo)航、 搜索
 
(未顯示1個(gè)用戶的2個(gè)中間版本)
第1行: 第1行:
 
<br/>
 
<br/>
 
[[文件:Carduino Leonardo01.jpg|400px|有框|右]]
 
[[文件:Carduino Leonardo01.jpg|400px|有框|右]]
?
==產(chǎn)品介紹==
+
==產(chǎn)品概述==
 
:Carduino Leonardo是一塊完全兼容Arduino Leonardo的基于開放源代碼的USB接口Simple I/O接口板(包括22通道數(shù)字GPIO,7通道PWM輸出,12通道10bit ADC輸入通道),并且具有使用類似Java、C語(yǔ)言的IDE集成開發(fā)環(huán)境。讓您可以快速使用Arduino語(yǔ)言與Flash或Processing等軟件,作出互動(dòng)作品。<br/>
 
:Carduino Leonardo是一塊完全兼容Arduino Leonardo的基于開放源代碼的USB接口Simple I/O接口板(包括22通道數(shù)字GPIO,7通道PWM輸出,12通道10bit ADC輸入通道),并且具有使用類似Java、C語(yǔ)言的IDE集成開發(fā)環(huán)境。讓您可以快速使用Arduino語(yǔ)言與Flash或Processing等軟件,作出互動(dòng)作品。<br/>
 
Carduino可以使用開發(fā)完成的電子元件例如Switch或sensors或其他控制器、LED、步進(jìn)馬達(dá)或其他輸出裝置。也可作為鍵盤、鼠標(biāo)等輸入裝置。Carduino Leonardo也可以獨(dú)立運(yùn)作成為一個(gè)可以跟軟件溝的接口,例如說(shuō):Flash Processing Max/MSP VVVV 或其他互動(dòng)軟件。Arduino開發(fā)IDE接口基于開放源代碼,可以讓您免費(fèi)下載使用開發(fā)出更多令人驚艷的互動(dòng)作品。
 
Carduino可以使用開發(fā)完成的電子元件例如Switch或sensors或其他控制器、LED、步進(jìn)馬達(dá)或其他輸出裝置。也可作為鍵盤、鼠標(biāo)等輸入裝置。Carduino Leonardo也可以獨(dú)立運(yùn)作成為一個(gè)可以跟軟件溝的接口,例如說(shuō):Flash Processing Max/MSP VVVV 或其他互動(dòng)軟件。Arduino開發(fā)IDE接口基于開放源代碼,可以讓您免費(fèi)下載使用開發(fā)出更多令人驚艷的互動(dòng)作品。
?
==Arduino基本技術(shù)參數(shù)==
+
==規(guī)格參數(shù)==
 
1. 控制器: ATmega32u4 <br/>
 
1. 控制器: ATmega32u4 <br/>
 
2. 工作頻率: 16 MHz <br/>
 
2. 工作頻率: 16 MHz <br/>
第17行: 第17行:
 
11. SRAM: 2.5 KB (ATmega32u4) <br/>
 
11. SRAM: 2.5 KB (ATmega32u4) <br/>
 
12. EEPROM: 1 KB (ATmega32u4) <br/>
 
12. EEPROM: 1 KB (ATmega32u4) <br/>
?
==Arduino下載軟件及開發(fā)環(huán)境==
+
==使用方法==
?
1,軟件下載<br/>
+
===驅(qū)動(dòng)安裝===
 +
1.軟件下載<br/>
 
請(qǐng)下載arduino1.01或以上版本<br/>
 
請(qǐng)下載arduino1.01或以上版本<br/>
 
官方軟件下載地址:http://arduino.cc/en/Main/Software <br/>
 
官方軟件下載地址:http://arduino.cc/en/Main/Software <br/>
?
2,軟件及硬件驅(qū)動(dòng)安裝<br/>
+
2.軟件及硬件驅(qū)動(dòng)安裝<br/>
 
此軟件是綠色版,軟件解壓縮后即可使用。 <br/>
 
此軟件是綠色版,軟件解壓縮后即可使用。 <br/>
 
解壓軟件下載地址: <br/>
 
解壓軟件下載地址: <br/>
第45行: 第46行:
 
安裝完成后在“端口(COM和LPT)”下回生成一個(gè)新的端口我這里生成的是COM3  
 
安裝完成后在“端口(COM和LPT)”下回生成一個(gè)新的端口我這里生成的是COM3  
 
[[文件:Carduino Leonardo11.jpg|373px|有框|居中]]
 
[[文件:Carduino Leonardo11.jpg|373px|有框|居中]]
?
3,Arduino編譯下載軟件使用說(shuō)明
+
===軟件使用說(shuō)明===
 
打開軟件只需雙擊執(zhí)行arduino.exe執(zhí)行文件,就可以看到如下程序編譯窗口。從Arduino1.0開始已經(jīng)支持中文界面了。具體修改方法電機(jī)“文件”-“參數(shù)設(shè)置”下。
 
打開軟件只需雙擊執(zhí)行arduino.exe執(zhí)行文件,就可以看到如下程序編譯窗口。從Arduino1.0開始已經(jīng)支持中文界面了。具體修改方法電機(jī)“文件”-“參數(shù)設(shè)置”下。
 
[[文件:Carduino Leonardo12.jpg|458px|有框|居中]]
 
[[文件:Carduino Leonardo12.jpg|458px|有框|居中]]
第59行: 第60行:
 
若需要進(jìn)行與Arduino串口通信點(diǎn)擊通信監(jiān)視窗口(圖),可以看到如下對(duì)話框。  
 
若需要進(jìn)行與Arduino串口通信點(diǎn)擊通信監(jiān)視窗口(圖),可以看到如下對(duì)話框。  
 
[[文件:Carduino Leonardo17.jpg|297px|有框|居中]]
 
[[文件:Carduino Leonardo17.jpg|297px|有框|居中]]
?
 
+
===Arduino基本語(yǔ)言概述===
?
==Arduino基本語(yǔ)言概述==
+
 
Arduino使用起來(lái)要比其他微處理器更易懂,與Basic Stamp有些相似,Arduino的編程語(yǔ)言更為簡(jiǎn)單和人性化,Arduino編程語(yǔ)言基于C語(yǔ)言,但其實(shí)用性要遠(yuǎn)高于C語(yǔ)言,主要由于它將一些常用語(yǔ)句組合函數(shù)化,例如:延時(shí)函數(shù)delay(1000)即為一秒。
 
Arduino使用起來(lái)要比其他微處理器更易懂,與Basic Stamp有些相似,Arduino的編程語(yǔ)言更為簡(jiǎn)單和人性化,Arduino編程語(yǔ)言基于C語(yǔ)言,但其實(shí)用性要遠(yuǎn)高于C語(yǔ)言,主要由于它將一些常用語(yǔ)句組合函數(shù)化,例如:延時(shí)函數(shù)delay(1000)即為一秒。
?
===Arduino程序基本架構(gòu)===
+
====Arduino程序基本架構(gòu)====
 
(1)聲明變量及接口名稱(int val; int ledPin=13;)。<br/>
 
(1)聲明變量及接口名稱(int val; int ledPin=13;)。<br/>
 
(2)setup()——函數(shù)在程序開始時(shí)使用,可以初始化變量、接口模式、啟用庫(kù)等(例如:pinMode(ledPin,OUTUPT);)。<br/>
 
(2)setup()——函數(shù)在程序開始時(shí)使用,可以初始化變量、接口模式、啟用庫(kù)等(例如:pinMode(ledPin,OUTUPT);)。<br/>
 
(3)loop()——在setup()函數(shù)之后,即初始化之后,loop() 讓你的程序循環(huán)地被執(zhí)行,使用它來(lái)運(yùn)轉(zhuǎn)Arduino。<br/>
 
(3)loop()——在setup()函數(shù)之后,即初始化之后,loop() 讓你的程序循環(huán)地被執(zhí)行,使用它來(lái)運(yùn)轉(zhuǎn)Arduino。<br/>
?
===Arduino常用編程語(yǔ)言===
+
====Arduino常用編程語(yǔ)言====
 
(1)pinMode(接口名稱,OUTPUT或INPUT)將——接口定義為輸入或輸出接口,用在setup()函數(shù)里。<br/>
 
(1)pinMode(接口名稱,OUTPUT或INPUT)將——接口定義為輸入或輸出接口,用在setup()函數(shù)里。<br/>
 
(2)digitalWrite(接口名稱,HIGH或LOW)——將數(shù)字接口值至高或低。<br/>
 
(2)digitalWrite(接口名稱,HIGH或LOW)——將數(shù)字接口值至高或低。<br/>
第77行: 第77行:
 
(9)Serial.print(數(shù)據(jù),數(shù)據(jù)的進(jìn)制)——從串行端口輸出數(shù)據(jù)。Serial.print(數(shù)據(jù))默認(rèn)為十進(jìn)制等于Serial.print(數(shù)據(jù),DEC)。<br/>
 
(9)Serial.print(數(shù)據(jù),數(shù)據(jù)的進(jìn)制)——從串行端口輸出數(shù)據(jù)。Serial.print(數(shù)據(jù))默認(rèn)為十進(jìn)制等于Serial.print(數(shù)據(jù),DEC)。<br/>
 
(10)Serial.println(數(shù)據(jù),數(shù)據(jù)的進(jìn)制)——從串行端口輸出數(shù)據(jù),跟隨一個(gè)回車和一個(gè)換行符。這個(gè)函數(shù)所取得的值與 Serial.print()一樣。<br/>
 
(10)Serial.println(數(shù)據(jù),數(shù)據(jù)的進(jìn)制)——從串行端口輸出數(shù)據(jù),跟隨一個(gè)回車和一個(gè)換行符。這個(gè)函數(shù)所取得的值與 Serial.print()一樣。<br/>
?
==使用Carduino Leonardo鼠標(biāo)應(yīng)用==
+
===例子程序===
?
1、需要的器材: <br/>
+
使用Carduino Leonardo鼠標(biāo)應(yīng)用
?
1) Arduino傳感器擴(kuò)展板
+
====使用硬件====
?
[[文件:Carduino Leonardo18.jpg|500px|有框|居中]]
+
* [http://www.alsrobot.cn/goods-147.html Arduino傳感器擴(kuò)展板]*1個(gè)
?
接口示意圖如下:
+
* [http://www.alsrobot.cn/goods-170.html 按壓式大按鈕模塊]*1個(gè)
?
[[文件:Carduino Leonardo19.jpg|500px|有框|居中]]
+
* [http://www.alsrobot.cn/goods-164.html 雙軸按鍵搖桿]*1個(gè) 
?
2)按壓式大按鈕模塊
+
* [http://www.alsrobot.cn/goods-196.html 3PIN傳感器連接線]*2條
?
[[文件:Carduino Leonardo20.jpg|500px|有框|居中]]
+
* [http://www.alsrobot.cn/goods-94.html 杜邦線] *若干
?
3)雙軸按鍵搖桿
+
====實(shí)驗(yàn)連接圖====
?
[[文件:Carduino Leonardo21.jpg|500px|有框|居中]]
+
?
4) 3PIN傳感器連接線<br/>
+
?
兩條3PIN傳感器連接線
+
?
[[文件:Carduino Leonardo22.jpg|240px|有框|居中]]
+
?
5)杜邦線 <br/>
+
?
兩條杜邦線
+
?
[[文件:Carduino Leonardo23.jpg|500px|有框|居中]]
+
?
2,硬件連接: <br/>
+
 
將傳感器擴(kuò)展板插到Carduino Leonardo上,用3PIN數(shù)據(jù)線將按鍵接到數(shù)字2口上作為啟動(dòng)和關(guān)閉鼠標(biāo)的功能鍵,將Joystick上B(Button)接到數(shù)字3口上,X(X軸)接到模擬0口,Y(Y軸)接到模擬1口。  
 
將傳感器擴(kuò)展板插到Carduino Leonardo上,用3PIN數(shù)據(jù)線將按鍵接到數(shù)字2口上作為啟動(dòng)和關(guān)閉鼠標(biāo)的功能鍵,將Joystick上B(Button)接到數(shù)字3口上,X(X軸)接到模擬0口,Y(Y軸)接到模擬1口。  
 
[[文件:Carduino Leonardo24.jpg|500px|有框|居中]]
 
[[文件:Carduino Leonardo24.jpg|500px|有框|居中]]
?
3,例程源代碼:
+
====例子程序====
 
<pre style='color:blue'>
 
<pre style='color:blue'>
 
const int switchPin = 2; // switch to turn on and off mouse control  
 
const int switchPin = 2; // switch to turn on and off mouse control  
第167行: 第159行:
 
</pre>
 
</pre>
 
==產(chǎn)品相關(guān)推薦==
 
==產(chǎn)品相關(guān)推薦==
?
購(gòu)買地址:[http://gharee.com/goods-114.html Carduino Leonardo 萊昂納多控制器]
+
[[文件:erweima.png|230px|無(wú)框|右]]
 +
===產(chǎn)品購(gòu)買地址===
 +
[http://gharee.com/goods-114.html Carduino Leonardo 萊昂納多控制器]<br/>
 +
===周邊產(chǎn)品推薦===
 +
[https://item.taobao.com/item.htm?spm=a1z10.3-c.w4002-3667083713.68.DTRMpg&id=3937179707 Mini USB數(shù)據(jù)線]<br/>
 +
[https://item.taobao.com/item.htm?spm=a1z10.3-c.w4002-3667083713.12.R2rMhC&id=15365374647 Arduino leonardo原裝進(jìn)口]<br/>
 +
===相關(guān)問(wèn)題解答===
 +
[http://www.makerspace.cn/forum.php?mod=viewthread&tid=5288&highlight=leonardo leonardo找不到端口]<br/>
 +
[http://www.makerspace.cn/forum.php?mod=viewthread&tid=1352&highlight=leonardo Arduino UNO和Leonardo的區(qū)別]<br/>
 +
===相關(guān)學(xué)習(xí)資料===
 +
[http://pan.baidu.com/s/1kTxW4PD Arduino leonardo 電路圖 Eagle 設(shè)計(jì)參考文件]<br/>
 +
[https://www.arduino.cc/en/uploads/Main/arduino-leonardo-schematic_3b.pdf Arduino leonardo 電路原理圖 PDF 文件]<br/>
 +
[https://www.arduino.cc/en/Main/ArduinoBoardLeonardo Arduino leonardo 官網(wǎng)介紹(英文版)]<br/>
 +
[http://datasheet.soiseek.cn/ATMEL/ATMEGA32U4-16MU/1.html ATmega32U4 芯片資料]<br/>
 +
[http://www.makerspace.cn/portal.php 奧松機(jī)器人技術(shù)論壇]<br/>

2015年10月23日 (五) 11:44的最后版本


Carduino Leonardo01.jpg

目錄

產(chǎn)品概述

Carduino Leonardo是一塊完全兼容Arduino Leonardo的基于開放源代碼的USB接口Simple I/O接口板(包括22通道數(shù)字GPIO,7通道PWM輸出,12通道10bit ADC輸入通道),并且具有使用類似Java、C語(yǔ)言的IDE集成開發(fā)環(huán)境。讓您可以快速使用Arduino語(yǔ)言與Flash或Processing等軟件,作出互動(dòng)作品。

Carduino可以使用開發(fā)完成的電子元件例如Switch或sensors或其他控制器、LED、步進(jìn)馬達(dá)或其他輸出裝置。也可作為鍵盤、鼠標(biāo)等輸入裝置。Carduino Leonardo也可以獨(dú)立運(yùn)作成為一個(gè)可以跟軟件溝的接口,例如說(shuō):Flash Processing Max/MSP VVVV 或其他互動(dòng)軟件。Arduino開發(fā)IDE接口基于開放源代碼,可以讓您免費(fèi)下載使用開發(fā)出更多令人驚艷的互動(dòng)作品。

規(guī)格參數(shù)

1. 控制器: ATmega32u4
2. 工作頻率: 16 MHz
3. 工作電壓: 5V
4. 輸入電壓(推薦): 7-12V
5. 數(shù)字IO口: 22 (D0~D13,D14-MISO,D15-SCK,D16-MOSI,D18~23[A0~A5])
6. PWM通道: 7(D3,D5,D6,D9,D10,D11,D13)
7. 模擬輸入: 12(A0~A5,D4-A6,D6-A7,D8-A8,D9-A9,D10-A10,D12-A11)
8. 5V數(shù)字/模擬口最大允許電流: 40 mA
9. 3.3V 數(shù)字/模擬口最大允許電流: 50 mA
10. Flash Memory: 32 KB (ATmega32u4) of which 4 KB used by bootloader
11. SRAM: 2.5 KB (ATmega32u4)
12. EEPROM: 1 KB (ATmega32u4)

使用方法

驅(qū)動(dòng)安裝

1.軟件下載
請(qǐng)下載arduino1.01或以上版本
官方軟件下載地址:http://arduino.cc/en/Main/Software
2.軟件及硬件驅(qū)動(dòng)安裝
此軟件是綠色版,軟件解壓縮后即可使用。
解壓軟件下載地址:
http://jaist.dl.sourceforge.net/project/sevenzip/7-Zip/9.20/7z920.exe
軟件解壓完成后,接下來(lái)要安裝CrduinoLeonardo硬件驅(qū)動(dòng)。
將Crduino Leonardo上的方頭MiNi USB連接好之后,另外一端的USB連接到計(jì)算機(jī)任意一個(gè)USB接口。

Carduino Leonardo02.jpg

接下來(lái)系統(tǒng)就會(huì)出現(xiàn)Arduino Leonardo的Windows Update驅(qū)動(dòng)程序安裝畫面。

Carduino Leonardo03.jpg

不過(guò)目前在Windows Update中還無(wú)法找到驅(qū)動(dòng)程序。

Carduino Leonardo04.jpg

這時(shí)需要我們手動(dòng)安裝驅(qū)動(dòng),打開“控制面板”下的“設(shè)備管理器”

Carduino Leonardo05.jpg

這時(shí)在其他設(shè)備里會(huì)出現(xiàn)一個(gè)帶有嘆號(hào)的Arduino Leonardo設(shè)備。在上圖標(biāo)上點(diǎn)擊右鍵選擇“更新驅(qū)動(dòng)程序軟件”

Carduino Leonardo06.jpg

在“您想如何搜索驅(qū)動(dòng)程序軟件”中選擇“瀏覽計(jì)算機(jī)以查找驅(qū)動(dòng)程序軟件”

Carduino Leonardo07.jpg

然后選擇你Arduino IDE軟件解壓到盤符找到Drivers文件夾點(diǎn)擊下一步

Carduino Leonardo08.jpg

這時(shí)會(huì)出現(xiàn)Windows無(wú)法驗(yàn)證此驅(qū)動(dòng)程序軟件發(fā)布者警告

Carduino Leonardo09.jpg
Carduino Leonardo10.jpg

安裝完成后在“端口(COM和LPT)”下回生成一個(gè)新的端口我這里生成的是COM3

Carduino Leonardo11.jpg

軟件使用說(shuō)明

打開軟件只需雙擊執(zhí)行arduino.exe執(zhí)行文件,就可以看到如下程序編譯窗口。從Arduino1.0開始已經(jīng)支持中文界面了。具體修改方法電機(jī)“文件”-“參數(shù)設(shè)置”下。

Carduino Leonardo12.jpg

在輸入程序前需要先選擇板號(hào)和COM口,COM口號(hào)就是我們剛才驅(qū)動(dòng)上的COM3。在“工具”-“Serial Port”下選擇。

Carduino Leonardo13.jpg

然后選擇版型位置在“工具”-“Board:”-“Arduino Leonardo”。

Carduino Leonardo14.jpg

基本設(shè)置完畢就可以編寫程序了。首先我們打開一個(gè)閃燈的例程。位置在“文件”-“示例”-“01.Basic”-“Blink”。

Carduino Leonardo15.jpg

點(diǎn)擊(圖)可以將程序進(jìn)行編譯,檢查是否有語(yǔ)法錯(cuò)誤。點(diǎn)擊(圖)可以將程序下載到CarduinoLeonardo中。下載成功會(huì)在狀態(tài)窗格顯示“下載完畢”

Carduino Leonardo16.jpg

這時(shí)會(huì)發(fā)現(xiàn)Carduino Leonardo一秒亮滅交替閃爍。
若需要進(jìn)行與Arduino串口通信點(diǎn)擊通信監(jiān)視窗口(圖),可以看到如下對(duì)話框。

Carduino Leonardo17.jpg

Arduino基本語(yǔ)言概述

Arduino使用起來(lái)要比其他微處理器更易懂,與Basic Stamp有些相似,Arduino的編程語(yǔ)言更為簡(jiǎn)單和人性化,Arduino編程語(yǔ)言基于C語(yǔ)言,但其實(shí)用性要遠(yuǎn)高于C語(yǔ)言,主要由于它將一些常用語(yǔ)句組合函數(shù)化,例如:延時(shí)函數(shù)delay(1000)即為一秒。

Arduino程序基本架構(gòu)

(1)聲明變量及接口名稱(int val; int ledPin=13;)。
(2)setup()——函數(shù)在程序開始時(shí)使用,可以初始化變量、接口模式、啟用庫(kù)等(例如:pinMode(ledPin,OUTUPT);)。
(3)loop()——在setup()函數(shù)之后,即初始化之后,loop() 讓你的程序循環(huán)地被執(zhí)行,使用它來(lái)運(yùn)轉(zhuǎn)Arduino。

Arduino常用編程語(yǔ)言

(1)pinMode(接口名稱,OUTPUT或INPUT)將——接口定義為輸入或輸出接口,用在setup()函數(shù)里。
(2)digitalWrite(接口名稱,HIGH或LOW)——將數(shù)字接口值至高或低。
(3)digitalRead(接口名稱)——讀出數(shù)字接口的值。
(4)analogWrite(接口名稱, 數(shù)值)——給一個(gè)接口寫入模擬值(PWM波)。對(duì)于ATmega168芯片的Arduino(包括Mini或BT),該函數(shù)可以工作于 3,5,6,9,10和 11號(hào)接口。老版的 ATmega8芯片的USB和 serial Arduino僅僅支持 9,10和11號(hào)接口。
(5)analogRead(接口名稱)——從指定的模擬接口讀取值,Arduino對(duì)該模擬值進(jìn)行10-bit的數(shù)字轉(zhuǎn)換,這個(gè)方法將輸入的0-5電壓值轉(zhuǎn)換為 0到1023間的整數(shù)值。
(6)delay()——延時(shí)一段時(shí)間,delay(1000)為一秒。
(7)Serial.begin(波特率)——設(shè)置串行每秒傳輸數(shù)據(jù)的速率(波特率)。在同計(jì)算機(jī)通訊時(shí),使用下面這些值:300,1200,2400,4800,9600,14400,19200,28800,38400,57600或 115200。你也可以在任何時(shí)候使用其它的值,比如,與0號(hào)或1號(hào)插口通信就要求特殊的波特率。用在setup()函數(shù)里
(8)Serial.read()——讀取持續(xù)輸入的數(shù)據(jù)。
(9)Serial.print(數(shù)據(jù),數(shù)據(jù)的進(jìn)制)——從串行端口輸出數(shù)據(jù)。Serial.print(數(shù)據(jù))默認(rèn)為十進(jìn)制等于Serial.print(數(shù)據(jù),DEC)。
(10)Serial.println(數(shù)據(jù),數(shù)據(jù)的進(jìn)制)——從串行端口輸出數(shù)據(jù),跟隨一個(gè)回車和一個(gè)換行符。這個(gè)函數(shù)所取得的值與 Serial.print()一樣。

例子程序

使用Carduino Leonardo鼠標(biāo)應(yīng)用

使用硬件

實(shí)驗(yàn)連接圖

將傳感器擴(kuò)展板插到Carduino Leonardo上,用3PIN數(shù)據(jù)線將按鍵接到數(shù)字2口上作為啟動(dòng)和關(guān)閉鼠標(biāo)的功能鍵,將Joystick上B(Button)接到數(shù)字3口上,X(X軸)接到模擬0口,Y(Y軸)接到模擬1口。

Carduino Leonardo24.jpg

例子程序

const int switchPin = 2; // switch to turn on and off mouse control 
const int mouseButton = 3; // input pin for the mouse pushButton 
const int xAxis = A0; // joystick X axis 
const int yAxis = A1; // joystick Y axis 
const int ledPin = 5; // Mouse control LED 
// parameters for reading the joystick: 
int range = 12; // output range of X or Y movement 
int responseDelay = 5; // response delay of the mouse, in ms 
int threshold = range/4; // resting threshold 
int center = range/2; // resting position value 
boolean mouseIsActive = false; // whether or not to control the mouse 
int lastSwitchState = LOW; // previous switch state 
void setup() { 
pinMode(switchPin, INPUT); // the switch pin 
pinMode(ledPin, OUTPUT); // the LED pin 
// take control of the mouse: 
Mouse.begin(); 
} 
void loop() { 
// read the switch: 
int switchState = digitalRead(switchPin); 
// if it's changed and it's high, toggle the mouse state: 
if (switchState != lastSwitchState) { 
if (switchState == HIGH) { 
mouseIsActive = !mouseIsActive; 
// turn on LED to indicate mouse state: 
digitalWrite(ledPin, mouseIsActive); 
} 
} 
lastSwitchState = switchState;// save switch state for next comparison: 
// read and scale the two axes: 
int xReading = readAxis(A0); 
int yReading = readAxis(A1); 
// if the mouse control state is active, move the mouse: 
if (mouseIsActive) { 
Mouse.move(xReading, yReading, 0); 
} 
// read the mouse button and click or not click: 
// if the mouse button is pressed: 
if (digitalRead(mouseButton) == HIGH) { 
// if the mouse is not pressed, press it: 
if (!Mouse.isPressed(MOUSE_LEFT)) { 
Mouse.press(MOUSE_LEFT); 
} 
} 
// else the mouse button is not pressed: 
else { 
// if the mouse is pressed, release it: 
if (Mouse.isPressed(MOUSE_LEFT)) { 
Mouse.release(MOUSE_LEFT); 
} 
} 
delay(responseDelay); 
} 
int readAxis(int thisAxis) { 
// read the analog input: 
int reading = analogRead(thisAxis); 
// map the reading from the analog input range to the output range: 
reading = map(reading, 0, 1023, 0, range); 
// if the output reading is outside from the 
// rest position threshold, use it: 
int distance = reading - center; 
if (abs(distance) < threshold) { 
distance = 0; 
} 
return distance;// return the distance for this axis 
} 

產(chǎn)品相關(guān)推薦

Erweima.png

產(chǎn)品購(gòu)買地址

Carduino Leonardo 萊昂納多控制器

周邊產(chǎn)品推薦

Mini USB數(shù)據(jù)線
Arduino leonardo原裝進(jìn)口

相關(guān)問(wèn)題解答

leonardo找不到端口
Arduino UNO和Leonardo的區(qū)別

相關(guān)學(xué)習(xí)資料

Arduino leonardo 電路圖 Eagle 設(shè)計(jì)參考文件
Arduino leonardo 電路原理圖 PDF 文件
Arduino leonardo 官網(wǎng)介紹(英文版)
ATmega32U4 芯片資料
奧松機(jī)器人技術(shù)論壇