1. 一般用什麼APP來通過WiFi控制arino
項目需要的硬體如下: Arino Uno Ethernet Shield LED燈 2個. 電阻 2個. 麵包板(可選) 連接導線 路由器一個 項目要的連接管腳如下: LED 1 --> pin 6 to ground LED 2 --> pin 7 to ground 項目需要的軟體如下: Eclipse IDE Arino IDE 1.x.x LED 1 --> pin 6 to ground LED 2 --> pin 7 to ground 項目需要的軟體如下: Eclipse IDE Arino IDE 1.x.x Step 1: 在 Arino上編程如下:#include "etherShield.h" #include "ETHER_28J60.h" int led2 = 7; int led1 = 6; static uint8_t mac[6] = {0xAA, 0xBB, 0xCC, 0xDD, 0xBB, 0xAA}; // this just needs to be unique for your network, // so unless you have more than one of these boards // connected, you should be fine with this value. static uint8_t ip[4] = {192, 168, 0, 15}; // the IP address for your board. Check your home hub // to find an IP address not in use and pick that // this or 10.0.0.15 are likely formats for an address // that will work. static uint16_t port = 80; // Use port 80 - the standard for HTTP ETHER_28J60 e; void setup() { e.setup(mac, ip, port); pinMode(led1, OUTPUT); pinMode(led2, OUTPUT); digitalWrite(led1, LOW); digitalWrite(led2, LOW); } void loop() { char* params; if (params = e.serviceRequest()) { if (strcmp(params, "?cmd=1") == 0) { digitalWrite(led1, HIGH); } if (strcmp(params, "?cmd=2") == 0) { digitalWrite(led1, LOW); } if (strcmp(params, "?cmd=3") == 0) { digitalWrite(led2, HIGH); } if (strcmp(params, "?cmd=4") == 0) { digitalWrite(led2, LOW); } e.respond(); } } Step 2: 製作安卓APP package com.androidarino; import org.apache.http.client.HttpClient; import org.apache.http.client.methods.HttpGet; import org.apache.http.impl.client.DefaultHttpClient; import android.app.Activity; import android.os.Bundle; import android.os.StrictMode; import android.view.Menu; import android.view.View; import android.view.View.OnClickListener; import android.widget.Toast; public class MainActivity extends Activity implements OnClickListener{ @Override protected void onCreate(Bundle savedInstanceState) { StrictMode.ThreadPolicy policy = new StrictMode. ThreadPolicy.Builder().permitAll().build(); StrictMode.setThreadPolicy(policy); super.onCreate(savedInstanceState); setContentView(R.layout.main); View led1on = findViewById(R.id.led_1on); View led1off = findViewById(R.id.led_1off); View led2on = findViewById(R.id.led_2on); View led2off = findViewById(R.id.led_2off); led1on.setOnClickListener(this); led1off.setOnClickListener(this); led2on.setOnClickListener(this); led2off.setOnClickListener(this); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } public void commandArino(String url){ try { HttpClient httpclient = new DefaultHttpClient(); httpclient.execute(new HttpGet(url)); } catch (Exception e) { } } public void onClick(View thisView) { switch(thisView.getId()){ case R.id.led_1on: commandArino("192.168.0.15/?cmd=1"); Toast.makeText(getApplicationContext(), "led_1on",Toast.LENGTH_LONG).show(); break; case R.id.led_1off: commandArino("192.168.0.15/?cmd=2"); Toast.makeText(getApplicationContext(), "led_1off",Toast.LENGTH_LONG).show(); break; case R.id.led_2on: commandArino("192.168.0.15/?cmd=3"); Toast.makeText(getApplicationContext(), "led_2on",Toast.LENGTH_LONG).show(); break; case R.id.led_2off: commandArino("192.168.0.15/?cmd=4"); Toast.makeText(getApplicationContext(), "led_2off",Toast.LENGTH_LONG).show(); break; } } }
2. 求一個Arino單片機用的mind+(mind plus)圖形化編程軟體,以前能下載到的,現在
點開這個鏈接,保存到網路雲就好啦
3. arino編程用的是什麼軟體
arino編程語言入門:
1. 關鍵字
語法符號:
;
;是一條語句結束的標志,供編譯器識別,必須得有。
{}
{}將多條語句合成一個復合語句,能劃分語句的作用域,增強整體整體的可讀性。
//
//行注釋,該行//後的所有語句,文字將不被編譯器所編譯、執行。相似的,還有,在中的所有語句,文字將不被編譯器所編譯、執行。
if(表達式)
{
語句A;
}
if(表達式1)
{
語句1;
}
else if(表達式2)
{
語句2;
}
...
else if(表達式n)
{
語句n;
}
else
{
語句n+1;
}
for(初始表達式;條件表達式;循環變數表達式)
{
循環體語句;
}
switch(表達式)
{
case 表達式常量1:語句序列1;
case 表達式常量2:語句序列2;
...
case 表達式常量i:語句序列i;
case 表達式常量n:語句序列n;
default:語句序列n+1;
}
while(條件表達式)
{
循環語句;
循環變數表達式;
}
do
{
循環體語句;
}while(條件表達式);
break;
continue;
return x;
goto 語句標號;
2. 數據類型:
3. 常量
HIGH | LOW 表示數字IO口的高低電平。HIGH 表示高電(1),LOW 表示低電平(0)。
INPUT | OUTPUT 表示數字IO口的方向,INPUT 表示輸入(高阻態),OUTPUT 表示輸出(AVR單片機能提供5V電壓 40mA電流)。
true | false true 表示真(1),false表示假(0)。
4. 程序結構
聲明變數及介面名稱(例如:int i;int ledPin=13;)。
void setup() 函數在程序開始時使用,初始化變數,管腳模式,調用庫函數等(例如:pinMode(ledPin,OUTUPT);)。
void loop() 在void setup()函數之後,即初始化之後,loop() 讓你的程序循環地被執行。使用它來運轉Arino。
5. 數字 I/O
以下型號為UNO
pinMode(pin, mode);
數字IO口輸入輸出模式定義函數,pin表示為0~13, mode表示INPUT或OUTPUT。
digitalWrite(pin, value) ;
數字IO口輸出電平定義函數,pin表示為0~13,value表示為HIGH或LOW。
必須先定義為輸入或輸出模式digitalWrite才能生效。
int digitalRead(pin);
數字IO口讀輸入電平函數,pin表示為0~13,value表示為HIGH或LOW。比如可以讀數
字感測器。
6. 模擬IO
int analogRead(pin);
模擬IO口讀函數,pin表示為0~5(ArinoDiecimila為0~5,Arino nano為0~7)。比如可以讀模擬感測器(10位AD,0~5V表示為0~1023)。
analogWrite(pin, value) - PWM
數字IO口PWM輸出函數,Arino數字IO口標注了PWM的IO口可使用該函數通常在引腳的旁邊標注~,pin表示3, 5, 6, 9,10, 11,value表示為0~255。比如可用於電機PWM調速或音樂播放。
7. 擴展 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輸入為低電平時,停止計時,然後返回該時間。
8. 時間函數
unsigned long millis();返回時間函數(單位ms),該函數是指,當程序運行就開始計時並返回記錄的參數,該參數溢出大概需要50天時間。
delay(ms);延時函數(單位ms)。
delayMicroseconds(us);延時函數(單位us)。
9. 數學函數
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);
10. 隨機數函數
randomSeed(seed);隨機數埠定義函數,seed表示讀模擬口analogRead(pin)函數 。
long random(max);隨機數函數,返回數據大於等於0,小於max。
long random(min, max);隨機數函數,返回數據大於等於min,小於max。
11. 外部中斷函數
attachInterrupt(interrupt, , mode;外部中斷只能用到數字IO口2和3,interrupt表示中斷口初始0或1,表示一個功能函數,mode:LOW低電平中斷,CHANGE有變化就中斷,RISING上升沿中斷,FALLING 下降沿中斷。
detachInterrupt(interrupt);中斷開關,interrupt=1 開,interrupt=0 關。
interrupts();中斷使能函數,用於使能中斷。
noInterrupts();中斷禁止函數,禁止中斷。
12. 串口收發函數
Serial.begin(speed);串口定義波特率函數,speed表示波特率(串列每秒傳輸數據位數的速率),如9600,19200等。
int Serial.available() 判斷緩沖器狀態。
int Serial.read();讀串口並返回收到參數。
Serial.flush();清空緩沖器。
Serial.print(data);串口輸出數據。Serial.print(數據,數據的進制) 默認為十進制(DEC)
Serial.println(data);串口輸出數據並帶回車符。
13. 重要
以上列舉了一些較常用的函數,事實上,在Arino的安裝目錄下的libraries還有眾多函數可以根據需要進行調用和學習。
也可以自己編寫函數然後按照libraries目錄下其他函數的格式打包好。放置在libraries目錄下,然後自己就可以在IDE環境下調用自己編寫的函數了。
通過以上介紹,其實大家可以看到arino編程語言入門並不難,以上內容分享出來給大家作為參考,想要了解更多更專業的arino編程語言教程可以去DF創客社區Arino教程專欄學習。
4. arino編程用的是什麼軟體
Arino編程,目前有幾種方式:
一種是使用官方的免費IDE編程環境,這可以在官方的網站上下載(http://www.arino.cc),目前最新的版本為1.0.1,支持Windows,MacOS,Linux操作系統那個
如果習慣微軟的VisualStudio環境,也有Arino for Microsoft Visual Studio的插件,(http://www.visualmicro.com/),安裝後可以在Visual Studio裡面進行Arino的開發
如果不太喜歡寫代碼,或者是教小孩子玩Arino,也有圖形化的編程環境,比如Arblock
5. 怎麼自己做一個arino圖形化編程手機app 能直接用手機導入arino的那種
怎麼自己做一個arino圖形化編程手機app 能直接用手機導入arino的那種,?。。。。。。怎麼自己做一個arino圖形化編程手機app 能直接用手機導入arino的那種。,。。。。。怎麼自己做一個arino圖形化編程手機app 能直接用手機導入arino的那種,。。。。。。怎麼自己做一個arino圖形化編程手機app 能直接用手機導入arino的那種,。。。。。
6. 推薦!適用於Arino平台的編程開發工具
Arino平台的優勢之一在於其可以通過簡單程序來實現強大的功能,相關硬體種類較多且高度集成化,通常需要使用者有一定的電子信息或自動控制領域的知識才能完全理解外接硬體的工作原理,不利於初學者快速入門掌握。因此,從編程知識和軟體學習入手,學習常用函數和程序思維後再通過實際項目對硬體使用進行相關了解是一個更快速高效的學習流程。
學習一門編程語言和學習人類語言一樣有很多種途徑。Arino編程語言較容易理解,它基於C/C++且有豐富的內置函數可以直接拿來使用實現一些功能,另外,其外接的智能硬體或感測器也往往有詳細的產品說明和封裝好的類庫,在不需要使用者清楚理解原理的情況下就可以完成原型搭建和實現相關功能。很多看似酷炫復雜的效果其實只是由短短幾行代碼來實現的。
對於有一定編程基礎的同學來說,直接閱讀編寫好的程序並嘗試理解和模仿進行代碼的編寫是一種較快的學習方式:在產品官網可以免費下載專用集成開發環境 Arino IDE,該軟體可以幫助我們編寫以及校驗代碼,同時也提供了豐富的自帶庫函數和示常式序幫助我們迅速了解開發板。作為一個免費的開源平台,在各個學習社區也可以找到免費版本中文編程參考手冊,使用時按需求查找即可。
編程參考手冊對於編程語言的學習至關重要,在學習中遇到的絕大多數問題都可以在參考手冊中找到解決方法。比起盲目在網上提問和搜索,靜下心來認真查找手冊不僅能夠高效的解決問題,也能舉一反三,對語言有更全面的理解。
對於沒有任何編程基礎的同學來說,購買開發學習套裝或尋找基礎教程慢慢搭建項目是一種更踏實的做法,各大視頻網站上可以搜索到很多優質免費的教程供大家學習參考。各類Arino學習論壇也是很好的學習資源,這些也正是開源平台的魅力所在:無償的分享和平等的交流。
如果對代碼理解仍有些吃力,可以考慮使用圖形化編程軟體進行程序編寫,它們的優勢在於把代碼中抽象的函數與結構改寫成模塊與卡片,根據想要完成的功能更直觀的完成程序搭建。近年來編程教育越來越普及化,很多國內教育公司也都研發了各種國產圖形化編程軟體(如mixly),這些軟體使用中文界面,交互邏輯良好且絕大多數都支持編寫Arino程序代碼,可以根據自己的需求進行選用。在代碼編寫較熟練後再使用官方IDE進行開發,會有事半功倍的效果。
文章作者:Jing
拉夫堡大學工業設計碩士
北京理工大學博士
7. arino用什麼軟體寫程序
用個記事本,或者任何一個文本編輯器都能寫程序。
但程序寫完後,還要編譯,還要調試,修改錯誤,arino編譯好後還要下載到板子上。
所以一款把以上功能集成在一起的編程IDE是能夠大大提高工作效率的。
編寫arino的軟體,最方便的莫過於直接到arino的官網下載arino IDE。
當然,其它宣稱自己能支持arino的IDE都能使用。