久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

專注電子技術學習與研究
當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

AVR單片機與網絡的連接

作者:李俊軒   來源:本站原創   點擊數:  更新時間:2013年07月18日   【字體:

 

本文介紹關于ARV單片機通過一塊芯片W5100上網模塊與網絡進行連接,一直以來對于嵌入式arduino怎么樣和網絡進行連接一直是我很好奇的問題,難得這幾天公司給我一個關于利用嵌入式讓AVR連接的應用,雖然對于英語水平還是很低下的我,沒辦法,為了興趣和工作,只好硬著頭皮看著外國一些關于AVR與網絡連接的論壇。其中收獲還是蠻大的,讓自己知道了一些關于網絡的知識和電路,特別是自己把一塊ENC28J60上網模塊的PCB順利畫出來進行生產,在畫這個板的時候也是費了一番功夫,根據原理圖,我覺得第12和第13引腳不應該是短路的,可是當PCB板拿到手的時候進行硬件測試,居然發現這兩個引腳連在了一起。百思不得其解,把PCB板和畫的圖進行對比是沒有錯的,后來懷疑是IC的問題,但是經過看數據手冊和IC不接在電路中的測試,沒有問題。最近對HR911105A網口進行測試,興奮地發現了問題是第3和第6是連在一起的。找出問題根源。




 
一直對于arduino這種開發平臺和獨特的編程風格的感興趣。特別是他具有一個實時和電腦進行通訊的系統平臺,長話短說,還是把硬件進行連接,以及代碼的編寫和調試,因為ardunio官方指代了一個關于Ethernet的庫,所以把它下載下來,加以研究。終于寫出了下面的一段代碼:
#include <SPI.h>
 
 
//Test Code:
 
/*
* Web Server
*
* A simple web server that shows the value of the analog input pins.
*/
#include <Ethernet.h>
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
byte ip[] = { 192, 168, 0, 48 };
Server server(80);
void setup()
{
Ethernet.begin(mac, ip);
server.begin();
}
void loop()
{
Client client = server.available();
if (client) {
// an http request ends with a blank line
boolean current_line_is_blank = true;
while (client.connected()) {
if (client.available()) {
char c = client.read();
// if we've gotten to the end of the line (received a newline
// character) and the line is blank, the http request has ended,
// so we can send a reply
if (c == 'n' && current_line_is_blank) {
// send a standard http response header
client.println("HTTP/1.1 200 OK");
client.println("Content-Type: text/html");
client.println();
 
// output the value of each analog input pin
client.print("welcome to B2CQSHOP");
client.println("<br />");
client.print("//*************************************");
client.println("<br />");
client.print("");
client.println("<br />");
client.print("//*************************************");
client.println("<br />");
for (int i = 0; i < 6; i++) {
client.print("analog input ");
client.print(i);
client.print(" is ");
client.print(analogRead(i));
client.println("<br />");
}
break;
}
if (c == 'n') {
// we're starting a new line
current_line_is_blank = true;
} else if (c != 'r') {
// we've gotten a character on the current line
current_line_is_blank = false;
}
}
}
client.stop();
}
}
其實,寫這番代碼的時候也是費了一番周折的,因為參考網上一些關于ethernet的寫法,剛開始編譯的時候系統老是報錯。錯誤的結果是:

 

經過查資料,終于知道了平時我們所說的SPI是什么東西,原來是“串行外圍設備接口”,也就是網上很多LCD顯示,為什么只有6根線就可以控制顯示內容的東東。在官方網上找了好久,終于把到庫,下載下來以后調用進程序,終于可以順利的編譯。心里那個激動,呵呵。希望可以出現預期結果。
但是問題不是我所想的那么簡單。把自己程序中的IP地址輸到網站地址欄,回車。暈。居然提示:

 

最后,終于在快絕望的時候看到了在打IP地址的時候多加了三個www. .暈死了。看來是自己打網址養好的“良好習慣”害了自己呀。嘿嘿。不過經過這次吃虧以后,至少以后不會再打錯啦。^_^
結果出來了:/勝利

 

這只是一個小勝利的開始,在網上看了一下,有幾個工程師在arduino上加了一個溫濕度的傳感器,隨時的把測到的溫度和濕度傳到網站上去,可供別人打開網址時看到實時檢測到的溫度。得好好利用這個模塊,相信對于信息時代的今天,作為一個電子工作者是有必要掌握這些知識的。
關閉窗口

相關文章

主站蜘蛛池模板: 免费在线观看黄网站 | 亚洲三区在线观看 | 国产一区91精品张津瑜 | 欧美日韩大片 | 国产成人精品免费视频大全最热 | 在线观看中文字幕亚洲 | 狠狠色综合欧美激情 | 国产精品自产拍在线观看蜜 | 夜夜精品视频 | 国产a区 | 国产成人综合在线 | 成人免费观看男女羞羞视频 | 成人av免费 | av在线视 | 日韩欧美国产一区二区 | 天天激情综合 | 影视先锋av资源噜噜 | 精品视频一区二区三区在线观看 | 日本黄色一级视频 | 亚洲国产精品视频一区 | 国产一区久久久 | 91在线网站 | 国产91丝袜在线熟 | 久久99久久99精品免视看婷婷 | 国产日屁 | 日日骚网| 久久国产精彩视频 | 中文字幕av第一页 | 亚洲一区二区三区在线观看免费 | 日韩视频精品在线 | 老牛嫩草一区二区三区av | 最新中文在线视频 | 国产欧美在线一区二区 | 国产精品久久av | 色爱综合网| 国产成人精品在线播放 | 亚洲成人日韩 | 国产 日韩 欧美 在线 | 一级特黄视频 | 久久久久久av | 国产乱码精品一区二区三区中文 |