999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

CH395與SPI接口的以太網(wǎng)模塊設(shè)計(jì)※

2015-11-23 03:26:05秦磊孫曼王小亮
關(guān)鍵詞:單片機(jī)設(shè)計(jì)

秦磊,孫曼,王小亮

(1.四川大學(xué)電氣信息學(xué)院,成都 610065;2四川大學(xué)電子信息學(xué)院)

CH395與SPI接口的以太網(wǎng)模塊設(shè)計(jì)※

秦磊1,孫曼1,王小亮2

(1.四川大學(xué)電氣信息學(xué)院,成都 610065;2四川大學(xué)電子信息學(xué)院)

伴隨著物聯(lián)網(wǎng)的高速發(fā)展,以太網(wǎng)已經(jīng)成為很多嵌入式系統(tǒng)中的一個(gè)重要模塊。針對(duì)很多無(wú)自帶以太網(wǎng)模塊的低成本單片機(jī)控制器,本設(shè)計(jì)采用CH395芯片連接dsPIC33系列單片機(jī)的SPI接口實(shí)現(xiàn)以太網(wǎng)模塊,該方案開(kāi)發(fā)難度小,占用單片機(jī)硬件資源少,是一種可靠的設(shè)計(jì)方案。

嵌入式系統(tǒng);CH395;以太網(wǎng)

引 言

在嵌入式應(yīng)用中,單片機(jī)與外部通信非常頻繁,通信方式種類繁多,如SPI、I2C總線、RS-232、USB、以太網(wǎng)等。以太網(wǎng)傳輸速度快、傳輸距離遠(yuǎn)、通過(guò)連接網(wǎng)絡(luò)設(shè)備可以輕易進(jìn)行組網(wǎng)管理,是進(jìn)行遠(yuǎn)程控制[1-2]、大規(guī)模數(shù)據(jù)采集、眾多設(shè)備節(jié)點(diǎn)管理[3-4]非常有效的一種方式。很多單片機(jī)并無(wú)以太網(wǎng)協(xié)議棧硬件支持,在為這些單片機(jī)開(kāi)發(fā)網(wǎng)絡(luò)模塊時(shí),一般是通過(guò)單片機(jī)已有的通信接口外接以太網(wǎng)芯片來(lái)實(shí)現(xiàn)。本設(shè)計(jì)通過(guò)單片機(jī)中常見(jiàn)的SPI口外接以太網(wǎng)模塊,實(shí)現(xiàn)以太網(wǎng)通信。

1 以太網(wǎng)芯片CH395

本設(shè)計(jì)采用Microchip公司的dsPIC33EP256GM710(以下簡(jiǎn)稱dsPIC33E)控制器,通過(guò)SPI口外接以太網(wǎng)芯片CH395來(lái)實(shí)現(xiàn)以太網(wǎng)功能。dsPIC33EP256GM710是16位數(shù)字信號(hào)處理器,是一款低功耗、高性能、低成本的處理器。它有3個(gè)SPI硬件模塊,其中SPI1是一個(gè)高速的SPI模塊,在本設(shè)計(jì)中被采用。

CH395芯片是沁恒公司的一款以太網(wǎng)協(xié)議棧[5]管理芯片,被單片機(jī)系統(tǒng)進(jìn)行以太網(wǎng)通信。CH395芯片自帶10/100M以太網(wǎng)介質(zhì)傳輸層(MAC)和物理層(PHY),完全兼容IEEE802.310/100M協(xié)議,內(nèi)置了PPPOE、IP、DHCP、ARP、ICMP、IGMP、UDP、TCP等以太網(wǎng)協(xié)議棧固件。

單片機(jī)系統(tǒng)可以方便地通過(guò)CH395芯片進(jìn)行網(wǎng)絡(luò)通信。CH395支持3種通信接口:8位并口、SPI接口和異步串口。單片機(jī)/DSP/MCU/MPU等控制器可以通過(guò)上述任何一種通信接口控制CH395芯片進(jìn)行以太網(wǎng)通信[6]。CH395與控制器的接口圖1所示。

2 CH395與處理器的硬件連接

SPI是串行外設(shè)接口,是一種高速、全雙工、同步的通信總線,在引腳上只占用4根線,節(jié)約了芯片的引腳。SPI同步串行接口信號(hào)線包括:SPI片選輸入引腳SCS、串行時(shí)鐘輸入引腳SCK、串行數(shù)據(jù)輸入引腳SDI、串行數(shù)據(jù)輸出引腳SDO。CH395芯片的SCS引腳由單片機(jī)的SPI片選輸出引腳或者普通輸出引腳驅(qū)動(dòng),SCK引腳由單片機(jī)的SPI時(shí)鐘輸出引腳SCK驅(qū)動(dòng),SDI引腳由單片機(jī)的SPI數(shù)據(jù)輸出引腳SDO或MOSI驅(qū)動(dòng),SDO引腳則連接到單片機(jī)的SPI數(shù)據(jù)輸入引腳SDI或MISO。

圖1 H395與控制器的接口示意圖

CH395的SPI接口也支持單片機(jī)用普通I/O引腳通過(guò)軟件來(lái)模擬SPI接口進(jìn)行通信。CH395總是從SPI時(shí)鐘SCK的上升沿輸入數(shù)據(jù),并在允許輸出時(shí)從SCK的下降沿輸出數(shù)據(jù)。

設(shè)計(jì)采用的是dsPIC33系列處理器中的高速專用SPI1口,它作為SPI通信的主控器件,與CH395的硬件接口如圖2所示,主控器件的SDO引腳連接從器件的SDI引腳,主控器件的SDI引腳連接從器件的SDO引腳。CH395的輸出INT#引腳連接處理器的一個(gè)通用I/O引腳,用來(lái)處理來(lái)自CH395的中斷。

3 單片機(jī)前端程序設(shè)計(jì)[7]

圖2 CH395與單片機(jī)的硬件接口圖

CH395芯片的操作都是在主控SPI的CS片選信號(hào)有效的情況下進(jìn)行的。單片機(jī)與CH395進(jìn)行通信交互是通過(guò)操作碼與數(shù)據(jù)相結(jié)合的方式進(jìn)行的,首先單片機(jī)通過(guò)SPI的SDO引腳按位移出一個(gè)字節(jié)的操作碼后,再輸出若干字節(jié)的數(shù)據(jù),在輸出數(shù)據(jù)的同時(shí)通過(guò)SDI引腳的按位移入接收數(shù)據(jù)。CH395讀寫流程操作如圖3所示。

圖3 CH395的操作流程

要完成SPI接口向CH395傳送數(shù)據(jù),先要對(duì)dsPIC33E的SPI端口進(jìn)行配置,本次設(shè)計(jì)中采用的是SPI1模塊,先設(shè)置SPI1所使用的所有引腳為數(shù)字輸入/輸出功能,設(shè)置SCS、SDI、SCK引腳為輸出,SDO為輸入,因?yàn)镃H395需要一個(gè)INT#用于中斷處理連接控制器,所以采用一個(gè)通用I/O引腳作為INT#中斷輸入引腳。當(dāng)SPI引腳映射好后,即可配置SPI口的功能參數(shù),方法如下:

3.1 驅(qū)動(dòng)程序的層次結(jié)構(gòu)

要實(shí)現(xiàn)CH395的Socket功能,需要繁多的功能函數(shù)來(lái)完成,從程序開(kāi)發(fā)者的角度來(lái)看,CH395的網(wǎng)絡(luò)Socket程序可分為4個(gè)層次:應(yīng)用層、中間層、數(shù)據(jù)命令層、SPI層。

(1)應(yīng)用層

對(duì)中間層提供的關(guān)于網(wǎng)絡(luò)參數(shù)設(shè)置操作進(jìn)行封裝,向網(wǎng)絡(luò)透明地傳送數(shù)據(jù),用于設(shè)置網(wǎng)絡(luò)協(xié)議,創(chuàng)建Socket,連接目標(biāo)進(jìn)程,處理網(wǎng)絡(luò)收發(fā)中斷等。該層主要由以下函數(shù)來(lái)實(shí)現(xiàn):

(2)中間層

該層使用命令數(shù)據(jù)層的接口,實(shí)現(xiàn)網(wǎng)絡(luò)的具體操作,向上層提供網(wǎng)絡(luò)參數(shù)設(shè)置功能。應(yīng)用層的三個(gè)主要函數(shù)通過(guò)調(diào)用下列各函數(shù)來(lái)實(shí)現(xiàn):

(3)命令數(shù)據(jù)層

該層通過(guò)調(diào)用SPI硬件層接口,向CH395發(fā)送命令與數(shù)據(jù),同時(shí)接收CH395返回的數(shù)據(jù)。主要函數(shù)如下:

(4)SPl層

它是整個(gè)程序框架的最底層,向上層提供讀寫時(shí)序控制,實(shí)現(xiàn)SPI讀取數(shù)據(jù),主要由以下函數(shù)實(shí)現(xiàn):

CH395驅(qū)動(dòng)程序的層次結(jié)構(gòu)圖略——編者注。

3.2 SPl程序的實(shí)現(xiàn)

要實(shí)現(xiàn)CH395的網(wǎng)絡(luò)功能,單片機(jī)dsPIC33E的SPI數(shù)據(jù)傳送是最為關(guān)鍵的,SPI數(shù)據(jù)傳送接口由以下3個(gè)函數(shù)來(lái)實(shí)現(xiàn):

設(shè)計(jì)中,dsPIC33E單片機(jī)作為TCP客戶端來(lái)使用,其控制程序在單片機(jī)的TCP客戶端應(yīng)用中,應(yīng)用程序直接使用CH395提供的Socket與網(wǎng)絡(luò)設(shè)備進(jìn)行網(wǎng)絡(luò)通信。在連接網(wǎng)絡(luò)之前,其與PC系統(tǒng)上的過(guò)程一致,需要初始化網(wǎng)卡設(shè)備(CH395),配置相應(yīng)的網(wǎng)絡(luò)參數(shù)(如本地IP、網(wǎng)關(guān)、子網(wǎng)掩碼等);在應(yīng)用程序啟動(dòng)Socket進(jìn)程之前,需要配置Socket的目的IP、端口、源端口、協(xié)議類型。配置好以上參數(shù)后,應(yīng)用程序可以創(chuàng)建Socket連接服務(wù)器進(jìn)程。CH395的網(wǎng)絡(luò)控制處理流程如圖4所示。

4 服務(wù)器端程序?qū)崿F(xiàn)

在設(shè)計(jì)中,用PC機(jī)作為服務(wù)器端。PC的服務(wù)器程序采用MFC來(lái)設(shè)計(jì),PC與單片機(jī)之間通過(guò)Socket進(jìn)行網(wǎng)絡(luò)連接。

在PC端上運(yùn)行TCP服務(wù)器程序,使用Socket之前應(yīng)該在應(yīng)用程序的InitInstance()函數(shù)中通過(guò)WSAStartup()API函數(shù)加載Windows Sockets套接字。在程序界面上通過(guò)一個(gè)啟動(dòng)按鍵來(lái)啟動(dòng)服務(wù)器的監(jiān)聽(tīng)程序并創(chuàng)建一個(gè)消息線程向MFC的消息路由傳遞用戶自定義消息,并在MFC的消息宏中增加用戶自定義消息處理函數(shù)ON _M(jìn)ESSAGE(WM_RECVDATA,&CH395Dlg::OnRecv-Data)。接收線程函數(shù)如下:

圖5 CH395網(wǎng)絡(luò)控制流程圖

5 系統(tǒng)測(cè)試與總結(jié)

通過(guò)網(wǎng)線把單片機(jī)電路板與PC機(jī)相連,在PC機(jī)上運(yùn)行TCP協(xié)議的服務(wù)器端程序,在單片機(jī)程序中,設(shè)置CH395芯片本地IP地址為192.168.0.5,本地端口號(hào)為6000,目的IP地址為192.168.0.10,目的端口號(hào)為5000。程序接收來(lái)自服務(wù)器端的信息字符串,并把字符串原樣返回PC端。程序運(yùn)行狀態(tài)如圖5所示。通過(guò)測(cè)試表明CH395模塊成功連接上PC機(jī)。

圖5 系統(tǒng)測(cè)試圖

本次設(shè)計(jì)利用Microchip dsPIC33系列處理器與CH395模塊芯片,實(shí)現(xiàn)了基于單片機(jī)系統(tǒng)的SPI口的以太網(wǎng)模塊設(shè)計(jì)。該方案實(shí)現(xiàn)簡(jiǎn)單、成本低、實(shí)用性強(qiáng),特別是在控制器缺少以太網(wǎng)協(xié)議棧硬件支持的情況下,可以節(jié)省開(kāi)發(fā)周期,提高開(kāi)發(fā)效率。

編者注:本文為期刊縮略版,全文見(jiàn)本刊網(wǎng)站www. mesnet.com.cn。

[1]楊瀚程,王芳,張佳杰.基于FPGA的嵌入式三臺(tái)以太網(wǎng)設(shè)計(jì)[J].計(jì)算機(jī)工程,2007,33(5):139-141.

[2]王飛石,廣田.基于ARM和DM9000的網(wǎng)卡接口設(shè)計(jì)與實(shí)現(xiàn)[J].ARM開(kāi)發(fā)與應(yīng)用,2008,24(5):123-125.

[3]孫曉安.基于以太網(wǎng)的遠(yuǎn)程監(jiān)測(cè)系統(tǒng)研究與設(shè)計(jì)[D].上海:華東理工大學(xué),2011.

[4]王天杰.基于以太網(wǎng)的液位控制系統(tǒng)[D].青島:青島大學(xué),2008.

[5]以太網(wǎng)協(xié)議棧芯片CH395[EB/OL].(2014-12-25)[2015 -01].http://wch.cn/.

[6]Stevens W.TCP/IP詳解卷1協(xié)議[M].北京:機(jī)械工業(yè)出版社,2014.

[7]鐘漢如,杜青林.PIC18F66J60以太網(wǎng)模塊的注塑機(jī)遠(yuǎn)程監(jiān)控系統(tǒng)設(shè)計(jì)[J].機(jī)械與電子,2009(10):25-27.

秦磊(碩士研究生),研究方向?yàn)殡姽だ碚撆c新技術(shù)。

Ethernet Module Design Based on CH395 and SPl lnterface※

Qin Lei1,Sun Man1,Wang Xiaoliang2
(1.School of Electrical Engineering and Information,Sichuan University,Chengdu 610065,China;
2.College of Electronic Information,Sichuan University)

With the rapid development of the Internet of things(IoT),the Ethernet has become an important module of the embedded system.For lots of the cheap microcontrollers without Ethernet module,this paper uses the CH395chip to connect the SPI interface of the dsPIC33microcontroller to accomplish the function of the Ethernet.This design is easy,and the occupation of resources is very few,so it is a reliable design.

embedded system;CH395;Ethernet

TP368.2

A

??楊迪娜

2015-01-30)

猜你喜歡
單片機(jī)設(shè)計(jì)
何為設(shè)計(jì)的守護(hù)之道?
《豐收的喜悅展示設(shè)計(jì)》
流行色(2020年1期)2020-04-28 11:16:38
基于單片機(jī)的SPWM控制逆變器的設(shè)計(jì)與實(shí)現(xiàn)
電子制作(2019年13期)2020-01-14 03:15:28
基于單片機(jī)的層次漸變暖燈的研究
電子制作(2019年15期)2019-08-27 01:12:10
基于單片機(jī)的便捷式LCF測(cè)量?jī)x
電子制作(2019年9期)2019-05-30 09:42:02
瞞天過(guò)?!律O(shè)計(jì)萌到家
小議PLC與單片機(jī)之間的串行通信及應(yīng)用
電子制作(2018年12期)2018-08-01 00:48:04
設(shè)計(jì)秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
有種設(shè)計(jì)叫而專
Coco薇(2017年5期)2017-06-05 08:53:16
基于單片機(jī)的平衡控制系統(tǒng)設(shè)計(jì)
電子制作(2017年19期)2017-02-02 07:08:27
主站蜘蛛池模板: 奇米影视狠狠精品7777| 国产呦精品一区二区三区网站| 国产人碰人摸人爱免费视频 | 中日韩一区二区三区中文免费视频 | 国产欧美精品午夜在线播放| 国产亚洲欧美在线中文bt天堂| 欧美区一区二区三| 亚洲成a人片7777| 亚洲欧美日韩中文字幕在线| 久久6免费视频| 日韩最新中文字幕| 精品一区二区三区无码视频无码| 久久精品国产免费观看频道| 婷婷综合色| 毛片网站观看| 国模极品一区二区三区| www.youjizz.com久久| 国产在线无码一区二区三区| 欧美在线一二区| 久久精品嫩草研究院| 日本人妻丰满熟妇区| 免费无码网站| 中文字幕亚洲综久久2021| 91精品国产福利| 精品视频一区二区三区在线播| 中文字幕va| 72种姿势欧美久久久大黄蕉| 久久久久亚洲AV成人网站软件| 91美女视频在线观看| AV在线麻免费观看网站| 亚洲精品va| 欧美日韩国产在线人| 成人无码一区二区三区视频在线观看 | 久久国产热| 亚洲免费三区| 国产精品久久久久久搜索| 久久五月天综合| 无码国产伊人| 99精品在线看| 欧美一区二区三区欧美日韩亚洲| 久久无码高潮喷水| 就去吻亚洲精品国产欧美| 日韩高清一区 | 国产人人乐人人爱| 国产成人久久777777| 欧美特黄一级大黄录像| 久久综合色播五月男人的天堂| 99伊人精品| 国内精自视频品线一二区| 亚洲国产成人久久精品软件 | 亚洲成在线观看| 亚洲爱婷婷色69堂| a级毛片免费看| 日本欧美在线观看| 久久国产V一级毛多内射| 欧美丝袜高跟鞋一区二区| 特级aaaaaaaaa毛片免费视频| 色吊丝av中文字幕| 欧美、日韩、国产综合一区| 亚洲最大福利视频网| 91偷拍一区| 国产主播在线观看| 一本一道波多野结衣av黑人在线| 亚洲视频a| 免费精品一区二区h| 精品伊人久久久香线蕉| 中文字幕天无码久久精品视频免费 | 久久人人97超碰人人澡爱香蕉| 亚洲va视频| 国产成人精品免费视频大全五级 | 2021国产精品自拍| 亚洲国产精品VA在线看黑人| 国产免费怡红院视频| 美女扒开下面流白浆在线试听| 91网址在线播放| 草草线在成年免费视频2| 亚洲,国产,日韩,综合一区| 伊人欧美在线| 草草线在成年免费视频2| 欧美一区二区三区不卡免费| 免费a在线观看播放| 伊人久久久久久久久久|