[轉]互聯型嵌入式應用ARM選型分享

轉載自:鄭州恆邁–張弓與非網博客 http://www.eefocus.com/HIGHMAXIM/blog/15-05/312818_2d2cf.html  伴隨著大眾創業萬眾創新的趨勢節奏和創客空間的遍地開花,伴隨著智能硬件產品的赤手可熱和物聯網的應用的不斷深入,伴隨著終端產品研發周期的拼命壓縮和產品的快速量化,也伴隨著半導體原廠新品系列的層出不窮和競爭格局的不斷加深,要想在眾多半導體原廠的產品系列裡,能夠快速的找到適合自己研發項目的功能需求,而且是要求可靠性和穩定性以及性價比都比較高的集成電路主控產品,對於原本選型就比較頭疼和困難的工程師同仁們來說,現在乃至以後所面臨的挑戰會越來越大,困難也會越來越多,盡管目前我們所能夠掌握的信息量越來越多,信息也越來越透明,但如果能從眾多的信息裡面解脫出來,關注自己所關注的應用領域,從全局來了解和把握行業的應用,對於工作繁忙的我們來說,是需要有一種智慧和一個開放的,樂於分享的心態。繞了很大的一個彎兒回來,我先分享下我對:互聯型嵌入式應用ARM選型的一些做法和見解,希望能夠和具有同樣應用的同仁們一起探討和交流。         在ARM應用方面我們都熟知的是ST(意法半導體),當然在互聯性應用的ARM方面我們通常都會順藤摸瓜的選用自己熟知的品牌,我首先看了看STM32F107RB這個型號,基於Cortex-M3核的ARM,帶10/100M的以太網MAC,程序加上軟件的TCP/IP協議棧,128K的閃存應該夠用,但公司要求要有一個備選或者是優化的器件,以面對無端的缺貨和價格的問題。以備不時之需,接著我就看看NXP(恩智浦)的LPC1764FBD100,同樣是基於Cortex-M3核的ARM,帶10/100M的以太網MAC,128K的閃存,而且主頻達到100MHz。這下思路好像一下子打開了一樣,既然是Cortex-M3核的ARM,這兩家半導體廠商會有,那麼其他的主控廠商應該也都會有,於是我就找到了ATMEL(愛特梅爾)的ATSAM3X4EA-AU,順帶說一句就連AVR也有帶以太網MAC的器件,真是不看不知道。找到了SPANSION(飛索半導體)的MB9BF216SPMC,內存容量竟有512K,在看到TI(德州儀器)的LM3S6911是,有個驚奇的發現,原來這個器件不僅有10/100M的以太網MAC,而且還帶了物理層(PHY),這樣的話不僅電路板的面就會縮小,而且可靠性也會比用兩個器件要高,也省去了兩個器件的匹配麻煩,不巧的很官方網站已經不推薦使用,推薦的器件是Cortex-M4內核的TM4C129X,既然是推薦Cortex-M4內核的ARM,那就順便看看飛思卡爾(FSL)基於Cortex-M4內核MK60DN256VLL10這個芯片看著看著,突然想想不對啊,想起前段時間在微信上看到的一個段子,一個人原本打算去買輛自行車結果開了一輛高級轎車回來,既然Cortex-M4內核的ARM不靠譜,那麼有沒有成本比較低的Cortex-M0內核的ARM也帶有以太網MAC的呢?         功夫不負有心人,終於看到了WIZNET(微知納特)的W7500,這個器件足夠強悍:是基於Cortex-M0內核的ARM,同樣是128K的閃存,不僅具有10/100M以太網MAC,而且帶有物理層(PHY),更是用硬件邏輯門去實現TCP/IP協議棧,也就是說軟件的TCP/IP協議棧都不用寫,將本來占用ARM存儲以及運算資源的以太網通信協議,用一顆片外的芯片獨立去實現,不僅節省主控制器的FLASH及RAM的空間,節省了ARM處理TCP/IP通信的中斷及線程,而且降低了開發難度,提升了開發效率及系統表現力,雖然省去了通用型微控制器的一些用不到的功能,但是卻加固了芯片的網絡處理專業能力,簡單易用。有的時候就在想,選擇大於努力這句話真是經典,既然有這樣現成的器件去選擇,那我們干嘛要去努力的琢磨原本不大熟悉的TCP/IP通信協議,不僅浪費了時間還有可能增加了產品不穩定因素,這樣出力不討好的做法難道會成為我們整天忙碌加班的原因?干嘛非要等到公司要求我們這樣做,我們才去這麼做呢,如何才能把被動的工作變換為主動的學習,打開自己的思路,在這終端產品多樣化快速更新的時代裡,在這亂花漸欲迷人眼的繽紛型號裡,在這要求愈來愈嚴格而又快節奏的工作進程裡,在這選擇大於努力而我們又不太善於選擇,甚至都沒有時間去靜心想像怎麼選擇的氛圍裡,這才應該是我們應該考慮的,我們究竟需要的是什麼。 就是因為選擇太難,所有我們本應去選擇適合我們的! 附件:互聯型嵌入式應用ARM對比列表

View More [轉]互聯型嵌入式應用ARM選型分享

[轉]如何移植使用W5500官方提供的最新Socket庫

轉載自:http://www.embed-net.com/thread-55-1-1.html 官方提供了W5500的最新驅動庫,下載地址如下:http://wizwiki.net/wiki/doku.php?id=products:w5500:driver下面簡單介紹下如何使用這套庫 首先下載庫源碼,文件目錄如下所示: 我們主要用到Ethernet文件夾下面的文件,將這些文件加入到自己的工程中,然後編譯,若編譯出現類似於如下錯誤 則需要根據自己的編譯器做下設置,keil MDK設置如下所示:<ignore_js_op> 主要原因是Keil MDK默認設置不支持按照結構體名稱初始化結構體的原因導致。 W5500和MCU是通過SPI接口通信的,庫是利用如下結構體中的相關函數指針實現SPI通信和其他功能。 根據函數名字和庫中的注釋,我們這裡也對要實現的函數做個簡單的說明wizchip_cris_enter :進入臨界區的函數,可以不管wizchip_cris_exit :退出臨界區的函數,也可以不管wizchip_cs_select :輸出有效片選信號的函數,也就是控制CS輸出低電平的函數,必須實現wizchip_cs_deselect :控制CS輸出高電平的函數,必須實現wizchip_bus_readbyte :SPI總線讀取一字節數據函數,必須實現wizchip_bus_writebyte :SPI總線寫一字節數據函數,必須實現根據以上可知,只要實現了SPI的基本操作,移植基本完成,是不是很簡單 下面我們就新建一個spi.c的文件來實現這幾個函數,當然這些函數名字可以不和這個結構體裡面的函數名字一樣,到時候可以調用相關的函數注冊下即可 到這裡,移植基本上完成。 但是這些SPI的接口函數如何跟這套庫銜接呢?不用怕,庫提供有這樣的函數來注冊,只要在主函數中調用下就可以了,具體程序如下 到這裡,移植工程基本完成,下面我們就將官方提供的一個loopback的測試程序移植到我們自己的工程中來,基本上也沒做什麼修改,下面是測試工程用到的幾個測試函數 我們自己在工程中加了串口打印程序,程序運行後串口輸出信息如下: 能ping通,看來沒什麼大問題了 STM32工程源碼下載:http://www.embed-net.com/thread-55-1-1.html來源: iwiznet.cn

View More [轉]如何移植使用W5500官方提供的最新Socket庫

物聯網的新平台 nogs.cc – 在 Nogs Stamp CN1 首發 – 強勁的Cortex M4 加上W5500 以太網

我只是想簡單介紹一個全新的平台:“改變遊戲規則的開源物聯網技術…” 這樣做是為了讓物聯網真正的對象與智能“即時編碼”和執行 Lua script。 Nogs.cc 才剛剛開始,這也是只是一個非常早期的首發硬件: Nogs Stamp CN1 首個被命名為 “Nogs Stamp CN1“ 的硬件特點如下: ATMEL 公司的 ARM Cortex M4,ATSAM4SA16BA,120MHz的 160KB RAM + 1MB 閃存 WIZnet 公司…

View More 物聯網的新平台 nogs.cc – 在 Nogs Stamp CN1 首發 – 強勁的Cortex M4 加上W5500 以太網

【創客項目】PopCARD: 一個刷卡交易的自動售賣機!

項目描述 本項目通過Popcard系統,給商業自動售貨機提供了一個解決方案。 這位開發者在他所在的樓內門廳裡賣飲料。考慮到如何不用現金付款,才開始了這個項目。 開發者用到了Arduino, Adafruit ethernet Shield, WIZ811MJ, LCD及RFID 讀寫器。 基礎操作如下:用戶刷卡,通過 RFID 讀寫器讀取。隨後,ID 被發送到我的服務器運行的一個軟件,這個軟件可以與一個數據庫進行匹兌,檢索到用戶名字及他們當前賬戶余額。這些稍後都會被顯示出來。如果售賣機器准備好收款,按下 “buy“ 按鈕就從這個賬戶中收取 1 美金,並放到這個機器中。用戶就可以用這個錢買飲料了。 具體制作請參考:avbrand.com

View More 【創客項目】PopCARD: 一個刷卡交易的自動售賣機!

當 Ytsuboi 先生遇見 WIZnet

Arduino 官方 Ethernet Shield 2 已經發布!並搭載了 WIZnet 公司的 TCP/IP 芯片。Ytsuboi 先生去了 組込みシステム開発技術展 (ESEC),遇見 WIZnet 這家不尋常的公司。 WIZnet 公司的這一次展出的產品是 W7500,Cortex-M0 ARM 微控制器並搭載內建硬件 TCP/ IP 引擎,下面照片 WIZnet 正展出其評估板。 WIZwiki-W7500 是個 W7500 的評估板,不久的將來將能夠開發更 mbed。當然要試用!

View More 當 Ytsuboi 先生遇見 WIZnet

Arduino官方W5500 Ethernet Shield發布!

Arduino Ethernet Shield 2 可在數秒內將 Arduino 聯網。僅需將此模塊插入到你的Arduino 上,帶上 RJ45 接口的網線,只需簡單幾步你就可以開始通過網絡控制全世界了!一如既往,Arduino平台上的元素 – -硬件,軟件以及文檔 – – 都是免費提供並開源的。這意味著你可以學習到如何用你自己的元件,從頭開始制作、設計。成千上萬的 Arduino 板每天都在為全世界的人們點燃創意。加入我們,Arduino 就是你! ◾需要一個Arduino板 (不包含) ◾工作電壓 5V (由Arduino板提供) ◾以太網控制器: W5500,帶有32K內部緩存…

View More Arduino官方W5500 Ethernet Shield發布!

新的,意大利製:Arduino Ethernet Shield 2 使用 W5500

Ardunio 推出一個新版本的 Arduino Ethernet Shield 2 使用我們的 W5500 芯片。 Arduino Ethernet Shield 2 我覺得不錯的新功​​能包括: W5500 的高性能互聯網連接 以太網供電(PoE)選項 用於連接到引腳頭/插座的信號的標籤 額外的 3 條引腳輸入和輸出具有 I2C 和 GPIO 最好兼容性的復位芯片 Ardunino.org…

View More 新的,意大利製:Arduino Ethernet Shield 2 使用 W5500

ETH WIZ Click

ETH WIZ Click 帶有 W5500,是一個 48 引腳與 10/100 BASE-TX 硬件TCP/ IP互聯網協議卸載引擎的獨立以太網控制器,以及一個標準的RJ-45連接器。該W5500 模塊採用了多種解決方案,以降低目標MCU的內存負載,使互聯網連接穩定和安全。高速網絡通信是通過一個 80 兆赫的 SPI 接口實現。該模塊具有內部存儲器 TX / RX 緩衝區 32KB。降低功耗與局域網喚醒和掉電模式實現。自動握手,也支持遇相撞重傳和自動剔除錯誤的數據包。 技術規格 應用家庭網絡設備和各種嵌入式服務器 主要特點支持 TCP, UDP, ICMP, IPv4,…

View More ETH WIZ Click

什麼是網絡卸載?

WIZnet W7500 剛剛推出,很多用戶就迫不及待,去 WIZnet人 上申請了樣片。那麼看到宣傳報的人都注意到了那行:Internet Offload Processor,網絡卸載處理器。也有很多人產生了疑問,到底什麼叫做網絡卸載?是不是與我們常常提到的全硬件 TCP/IP 協議棧技術有關呢?今天小編就在這裡給大家普及一下。 所謂網絡卸載,就是將本來占用MCU存儲資源以及運算資源的以太網通信協議用一顆片外的芯片獨立去實現。 實現方法:用硬件邏輯門去實現TCP/IP協議棧。 優勢:節省 MCU 的 Flash 及 RAM 的空間,節省了 MCU 處理 TCP/IP 通信的中斷及線程。從而,降低了開發難度,提升了開發效率及系統表現力。 因此, WIZnet 網絡芯片可以被視作為一個…

View More 什麼是網絡卸載?