CH395常見問題匯總及解答(持續(xù)更新)

一、CH395外圍電路設(shè)計(jì)注意

1.CH395的PHY是電流型,網(wǎng)絡(luò)變壓器的中心抽頭要接3.3V

2.CH395的電源引腳退耦電容不可少,而且要靠芯片周圍擺放

3.CH395支持串口,SPI和并口(僅CH395L支持)接口,在芯片上電時(shí),395根據(jù)SEL和TXD引腳的電平來(lái)決定采用哪種方式

4.為了在電源上電期間有效復(fù)位并減少外部干擾,可以在RSTI引腳與地之間接一個(gè)0.1UF的電容。

5.具體接法可以上沁恒官網(wǎng)(www.findthetime.net)上搜索“CH395EVT”

二、395初始化失敗

1.首先檢查“check_exist”命令,正常情況下395會(huì)將該命令的輸入值按位取反后輸出, 若該命令不正常,則說明395的通訊接口有問題,請(qǐng)注意接口時(shí)序,檢查CH395接口選擇模式配置是否正確,即檢查TXD,SEL電平狀態(tài)是否正確。。

2.395初始化參數(shù)設(shè)置好后,先延時(shí)20ms左右,再執(zhí)行初始化命令.

3.注意395的網(wǎng)絡(luò)參數(shù)的合法性,設(shè)置不規(guī)范的ip地址可能會(huì)導(dǎo)致395網(wǎng)絡(luò)出錯(cuò)

三、395與電腦無(wú)法建立TCP連接

1. 連接之前先將電腦的網(wǎng)絡(luò)防火墻關(guān)閉。

2.對(duì)于多網(wǎng)卡的電腦,在設(shè)置電腦端網(wǎng)絡(luò)調(diào)試軟件時(shí)要注意選擇正確的網(wǎng)卡,最好是打開軟件前,將其他網(wǎng) 卡都禁用。

3.先ping一下395,若ping不通,則先檢查網(wǎng)口的指示燈是否亮著,若不亮則換一根網(wǎng)線再試;若網(wǎng)口燈亮,則可能395初始化沒有正確完成

4.檢查395初始化配置的信息是否正確,目的ip與端口是否與電腦端設(shè)置相同`,TCP連接要注意ip地址處于同一網(wǎng)段,如果是在路由器局域網(wǎng)環(huán)境下,還要考慮395ip地址避免沖突。

5.TCP正常連接時(shí),395的INT引腳會(huì)給出中斷低電平信號(hào),可以通過讀取命令來(lái)獲取中斷狀態(tài)

6.若出現(xiàn)連接斷開后不能再次連上的問題,則可能是因?yàn)?95在檢測(cè)到連接斷開后自動(dòng)關(guān)閉了socket,可以通過在socket斷開與超時(shí)中斷里重新打開socket。

7.初始化socket之前沒有將socket配置信息表清空

四、395數(shù)據(jù)接收與發(fā)送問題

1.若395接收到數(shù)據(jù),會(huì)產(chǎn)生數(shù)據(jù)接收中斷信號(hào),檢測(cè)395的INT引腳是否有低電平產(chǎn)生,注意如果使用單片機(jī)外部中斷,則觸發(fā)位要設(shè)置為低電平觸發(fā)。若有中斷信號(hào),則讀取中斷狀態(tài),對(duì)照頭文件里的定義,獲取中斷含義

2.檢查395接收中斷的處理,正常流程是:獲取中斷、讀取數(shù)據(jù)長(zhǎng)度,讀取數(shù)據(jù)內(nèi)容。

3.UDP server 模式下的數(shù)據(jù)收發(fā)與其他模式不一樣:

數(shù)據(jù)接收時(shí),395會(huì)在數(shù)據(jù)包前加上8個(gè)字節(jié)的信息,分別是數(shù)據(jù)包長(zhǎng)度,源端口,源ip。在接收中斷處理任務(wù)里,需要將這些信息分離并保存。數(shù)據(jù)發(fā)送時(shí),395使用395UDPSendTo()函數(shù),函數(shù)參數(shù)需要使用上面的信息

4.與395發(fā)送相關(guān)的中斷有兩個(gè),分別是發(fā)送完成中斷與發(fā)送緩沖區(qū)空閑中斷;單片機(jī)向395發(fā)送緩沖區(qū)寫一包數(shù)據(jù),395會(huì)將數(shù)據(jù)復(fù)制到MAC緩沖區(qū),復(fù)制完畢后會(huì)產(chǎn)生發(fā)送緩沖區(qū)空閑中斷;CH395可能會(huì)將數(shù)據(jù)分裝成若干包數(shù)據(jù)包,每發(fā)送一包數(shù)據(jù)包,395都會(huì)產(chǎn)生一次發(fā)送完成中斷;因此在實(shí)際發(fā)送時(shí),必須要等到發(fā)送緩沖區(qū)空閑中斷產(chǎn)生后,才能向395緩沖區(qū)填寫下一次數(shù)據(jù)

5.395在數(shù)據(jù)收發(fā)過程中出現(xiàn)數(shù)據(jù)丟包現(xiàn)象:

(1)395在收發(fā)數(shù)據(jù)的過程中不能被其他進(jìn)程打斷,如果395在數(shù)據(jù)收發(fā)中被其他任務(wù)打斷,則可能會(huì)導(dǎo)致數(shù)據(jù)丟包

(2)檢查下定義接收緩沖區(qū)大小,讀取接收長(zhǎng)度,看是否超過了接收緩沖區(qū)。接收緩沖區(qū)在定義的時(shí)候至少要大于定義的TCP MSS的值。

五、芯片發(fā)熱。

由于CH395內(nèi)部集成MAC和PHY,發(fā)熱量稍大,但不會(huì)影響芯片穩(wěn)定性??赏ㄟ^以下方式改進(jìn):

(1)芯片RSETE 腳參考電阻18K。

(2)改善電源,如使用DC電源代替LDO,減小部分功耗。

(3)啟用CH395低能耗模式。

六、編程注意事項(xiàng)。

(1)、芯片內(nèi)置上電復(fù)位電路,主程序開始先延時(shí)200ms時(shí)間,留給CH395足夠的上電復(fù)位時(shí)間,防止單片機(jī)上程序開始運(yùn)行而CH395仍處于復(fù)位狀態(tài)。

(2)、芯片初始化之后,建議先做測(cè)試命令,確保基本通信正常后再進(jìn)行下面的操作。

(3)、假如程序中有設(shè)置MAC地址操作,需要延時(shí)200ms左右時(shí)間。

(4)、批量發(fā)送數(shù)據(jù)時(shí),每次發(fā)送數(shù)據(jù)前要確保前一次數(shù)據(jù)已經(jīng)發(fā)送完成(可通過查詢SINT_STAT_SENBUF_FREE中斷來(lái)實(shí)現(xiàn))。


用CH395制作的設(shè)備,開啟DHCP后,已自動(dòng)獲得了配置信息,在路由器的DHCP客戶端列表當(dāng)中已經(jīng)存在,只是客戶端名顯示為Unknown。請(qǐng)問如何給設(shè)備命名?


七、CH395在使用過程中死機(jī)、無(wú)法通訊等問題。

?1、 ? ? 首先檢查CH395網(wǎng)口的燈的狀態(tài)是否正常,如果燈處于熄滅狀態(tài),請(qǐng)檢查網(wǎng)線是否插緊,板子供電是否正常;另外,如

? ? 果板子上面有較大的壓降作用于芯片的RSTI引腳,會(huì)導(dǎo)致CH395芯片復(fù)位,也會(huì)造成網(wǎng)口燈的狀態(tài)異常,此時(shí)復(fù)位一下主控 ? ?

? ? 芯片即可恢復(fù)正常。? ?

?2、 ? ? 檢查能否ping通CH395,如果不能ping通,請(qǐng)檢查局域網(wǎng)內(nèi)是否有和CH395ip地址相同的設(shè)備造成IP沖突;再讀出CH395 ?

? ? 的ip地址,檢查ip是否有異常

?3、 ? ? 如果TCP一直連不上,檢查SOCKET的ip和端口配置信息,如果對(duì)方是電腦,檢查電腦防火墻是否關(guān)閉,TCP端口是否打開,如果對(duì)

? ? ? ? 方是云服務(wù)器/平臺(tái),請(qǐng)先用電腦連接云服務(wù)器/平臺(tái),確認(rèn)服務(wù)能連通

? 4、 ? ? ? ? 如果數(shù)據(jù)收不到,請(qǐng)檢查INT#引腳的電平,另外注意INT#引腳如果采用外部中斷的方式,要將中斷觸發(fā)方式設(shè)置為低電平觸發(fā),不要設(shè)

? ? ? ? 為邊沿觸發(fā)



UDP組播在客戶處測(cè)試時(shí),組播客戶可以接受到數(shù)據(jù),客戶用組播方式下發(fā)數(shù)據(jù)時(shí)我們收不到指令,客戶改為點(diǎn)播下發(fā)指令時(shí)可以發(fā)送成功,有別的設(shè)置嗎mac濾波已經(jīng)配置組播。


您好,CMD_SET_MAC_FILT命令, hash 表計(jì)算是否準(zhǔn)確?請(qǐng)與孫工:025-52638370 聯(lián)系,方便的話幫你查看相關(guān)代碼。


八、程序初始化過程注意事項(xiàng)

1、CH395出廠時(shí)燒有全球唯一Mac地址,若通過函數(shù)修改CH395Mac地址,修改后無(wú)法找回。隨意修改Mac地址可能造成經(jīng)過交換機(jī)時(shí)Mac地址被過濾的問題。

2、MCU選用串口與CH395連接時(shí),根據(jù)需要可能存在更改串口通信波特率設(shè)置過程。在復(fù)位MCU過程中,為了匹配即時(shí)時(shí)刻MCU與CH395之間的波特率,需在程序初始化CH395之前對(duì)其進(jìn)行外部硬件復(fù)位。

3、若需開啟CH395的8sockets連接,必須經(jīng)過重新分配緩沖區(qū)的步驟,可參考?xì)v程中Socket_R_S_Buf_Modify()函數(shù)的使用。

4、開啟CH395TCP監(jiān)聽功能時(shí),可開啟服務(wù)器多連接模式,即設(shè)置FUN_PARA_FLAG_TCP_SERVER位;若不開啟,接入下一個(gè)客戶端前需要釋放掉前一個(gè)連接的socket。


并口方式,tcp sever模式下,接收的數(shù)據(jù)包個(gè)別字節(jié)隨機(jī)丟失,請(qǐng)問如何解決。


  1. 你可以用wireshrk抓包看一下以太網(wǎng)有沒有正確的發(fā)送接收

  2. 你用邏輯分析儀看一下那個(gè) 并口數(shù)據(jù)有沒有正確 的接收


博主,你好,有CH395Q移植到rt-thread,使用SAL的例子嗎


如果您是使用STM32F1/F4的MCU,您可以基于rtt? nano內(nèi)核的demo工程,只需要在boardinit里面將對(duì)應(yīng)的通信接口,IO初始化完畢,然后創(chuàng)建線程,去查詢init腳電平即可。然后再做對(duì)應(yīng)的處理。線程優(yōu)先級(jí)最好設(shè)置最高。


問一個(gè)問題,不接網(wǎng)線,發(fā)送引腳有信號(hào),但是一插網(wǎng)線,發(fā)送引腳變沒有信號(hào)了。當(dāng)然,插上網(wǎng)線,elink也沒有提示網(wǎng)線接上,讀取phy狀態(tài),返回phy未連接。 電壓驅(qū)動(dòng)方式,量了3.3V電壓與1.8V電壓,都是正常的。這大約是什么情況,怎么排查


您可以先提供一下您的使用方法和對(duì)CH395的驅(qū)動(dòng)方式,方便排查問題。

還有您可以參考網(wǎng)址http://www.findthetime.net/downloads/CH395EVT_ZIP.html? 包里的硬件原理框圖設(shè)計(jì),您的設(shè)計(jì)圖中和該設(shè)計(jì)圖中有不一樣的部分均可詳細(xì)說明。

對(duì)于您現(xiàn)在的問題,可能是PHY協(xié)商不成功造成的。主要原因可能是:接上網(wǎng)線相當(dāng)于網(wǎng)口變壓器二次側(cè)接入了有效負(fù)載,需要一次側(cè)提供足夠的功率驅(qū)動(dòng),您可以檢查一下變壓器的中心抽頭出是否接入3.3V電壓;還有需要注意兩對(duì)差分引腳需要接49.9歐姆電阻上拉至3.3V,電阻精度最好控制在1%內(nèi)。

具體問題您可以直接聯(lián)系官網(wǎng)技術(shù)支持咨詢。


111111111


你好,想請(qǐng)問一下,可以提供395的NTP和FTP客戶端被動(dòng)方式的例程嗎


CH395上層應(yīng)用的實(shí)現(xiàn)可以參考CH563EVT里的相關(guān)例程代碼移植實(shí)現(xiàn)。

CH563EVT下載網(wǎng)址:http://www.findthetime.net/downloads/CH563EVT_ZIP.html


并口方式,已經(jīng)調(diào)整好參數(shù),誤碼率很低,目前測(cè)試是1/3600 0000 的誤碼率。不過感覺這個(gè)芯片還是有很多的改進(jìn)空間,并口時(shí)序要求太過嚴(yán)格,Read信號(hào)持續(xù)的時(shí)間長(zhǎng)一點(diǎn),數(shù)據(jù)正確率會(huì)有明顯的變化。

stm32f103zet6使用fsmc時(shí),hal庫(kù)參數(shù)配置如下

??
???/*?USER?CODE?END?FSMC_Init?0?*/
???FSMC_NORSRAM_TimingTypeDef?Timing?=?{0};
???FSMC_NORSRAM_TimingTypeDef?ExtTiming?=?{0};
???/*?USER?CODE?BEGIN?FSMC_Init?1?*/
????//省略
??/*?Timing?*/????//讀時(shí)序參數(shù)
??Timing.AddressSetupTime?=?15;
??Timing.AddressHoldTime?=?0;
??Timing.DataSetupTime?=?3;
??Timing.BusTurnAroundDuration?=?0;
??Timing.CLKDivision?=?0;
??Timing.DataLatency?=?0;
??Timing.AccessMode?=?FSMC_ACCESS_MODE_A;
??
??/*?ExtTiming?*/????//寫時(shí)序參數(shù)
??ExtTiming.AddressSetupTime?=?15;
??ExtTiming.AddressHoldTime?=?0;
??ExtTiming.DataSetupTime?=?4;
??ExtTiming.BusTurnAroundDuration?=?0;
??ExtTiming.CLKDivision?=?0;
??ExtTiming.DataLatency?=?0;
??ExtTiming.AccessMode?=?FSMC_ACCESS_MODE_A;


希望能再出一款專用于并口的,時(shí)序容錯(cuò)率高,引腳簡(jiǎn)明的DIP封裝的高速網(wǎng)絡(luò)協(xié)議棧芯片。


只有登錄才能回復(fù),可以選擇微信賬號(hào)登錄

国产91精品新入口,国产成人综合网在线播放,九热这里只有精品,本道在线观看,美女视频a美女视频,韩国美女激情视频,日本美女pvp视频