《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 其他 > 業(yè)界動(dòng)態(tài) > CAN總線教程

CAN總線教程

2015-05-08

  為了CAN研究了不少,看了不少資料,,現(xiàn)在我給大家總結(jié)一下
  先看看工作原理
  當(dāng)CAN總線上的一個(gè)節(jié)點(diǎn)(站)發(fā)送數(shù)據(jù)時(shí),,它以報(bào)文的形式廣播給網(wǎng)絡(luò)中所有節(jié)點(diǎn),對(duì)每個(gè)節(jié)點(diǎn)來(lái)說(shuō),,無(wú)論數(shù)據(jù)是否是發(fā)給自己的,,都對(duì)其接收。每組報(bào)文開(kāi)頭的11位字符為標(biāo)識(shí)符,,定義了報(bào)文的優(yōu)先級(jí),,這種報(bào)文格式成為面向內(nèi)容的編制方案。同一系統(tǒng)中標(biāo)識(shí)符是唯一的,,不可能有兩個(gè)站發(fā)送具有相同標(biāo)識(shí)符的報(bào)文,,當(dāng)幾個(gè)站同時(shí)競(jìng)爭(zhēng)總線讀取時(shí),這種配置十分重要,。
  大體的工作原理我們搞清了,,但是根本的協(xié)議我們還要花一番功夫,。下面介紹一個(gè)重要的名詞,“顯性“和”隱性“
  在我看到的很多文章里,,有很多顯性和隱性的地方,,為此我頭痛不已,最終我把它們徹底弄明白了,。
  首先CAN數(shù)據(jù)總線有兩條導(dǎo)線,,一條是黃色的,一條是綠色的,。分別是CAN_High線和CAN_Low線
  當(dāng)靜止?fàn)顟B(tài)時(shí),,這兩條導(dǎo)線上的電平一樣。這個(gè)電平稱(chēng)為靜電平,。大約為2.5伏,。
  這個(gè)靜電平狀態(tài)就是隱形狀態(tài),也稱(chēng)隱性電平,。也就是沒(méi)有任何干擾的時(shí)候的狀態(tài)稱(chēng)為隱性狀態(tài).當(dāng)有信號(hào)修改時(shí),,CAN_High線上的電壓值變高了,一般來(lái)說(shuō)會(huì)升高至少1V,,而CAN_Low線上的電壓值會(huì)降低一個(gè)同樣值,,也是1v,那么這時(shí)候,。CAN_High就 是2.5v+1v=3.5v,它就處于激活狀態(tài)了,。而CAN_Low降為2.5v-1v=1.5v。
  可以看看這個(gè)圖

QQ截圖20150508153931.png

  由此我們得到
  在隱性狀態(tài)下,,CAN_High線與CAN_Low沒(méi)有電壓差,,這樣我們看到?jīng)]有任何變化也就檢測(cè)不到信號(hào)。但是在顯性狀態(tài)時(shí),,改值最低為2V,,我們就可以利用這種變化才傳輸數(shù)據(jù)了。所以出現(xiàn)了那些,,那些幀中的場(chǎng),,那些場(chǎng)中的位,云云~~~~~~~~~~~
  在總線上通常邏輯1表示隱性,。而0表示顯性,。這些1啊,0啊,,就可以利用起來(lái)為我們傳數(shù)據(jù)了,。
  利用這種電壓差,我們可以接收信號(hào),。
  一般來(lái)說(shuō),,控制單元通過(guò)收發(fā)器連接到CAN驅(qū)動(dòng)總線上,,這個(gè)收發(fā)器(顧名思義,可發(fā)送,,可接收)內(nèi)有一個(gè)接收器,,該接收器是安裝在接收一側(cè)的差動(dòng)信號(hào)放大器。然后,,這個(gè)放大器很自然地就放大了CAN_High和CAN_Low線的電平差,,然后傳到接收區(qū)。如下圖

QQ截圖20150508154151.png

QQ截圖20150508153946.png

  由上圖可知,,當(dāng)有電壓差,,差動(dòng)信號(hào)放大器放大傳輸,將相應(yīng)的數(shù)據(jù)位任可為0,。
  下面我們進(jìn)入重點(diǎn)難點(diǎn),。報(bào)文
  所謂報(bào)文,就是CAN總線上要傳輸?shù)臄?shù)據(jù)報(bào),,為了安全,,我們要給我們傳輸?shù)臄?shù)據(jù)報(bào)編碼定一下協(xié)議,這樣才能不容易出錯(cuò),,所以出現(xiàn)了很多的幀,,以及仲裁啊,CRC效驗(yàn),。這些都是難點(diǎn),。
  識(shí)別符的概念。
  識(shí)別符顧名思義,,就是為了區(qū)分不同報(bào)文的可以鑒別的好多字符位,。有標(biāo)準(zhǔn)的,和擴(kuò)展的,。標(biāo)準(zhǔn)的是11位,,擴(kuò)展的是29位。他有一個(gè)功能就是可以提供優(yōu)先級(jí),,也就是決定哪個(gè)報(bào)文優(yōu)先被傳輸,報(bào)文標(biāo)識(shí)符的值越小,,報(bào)文具有越高的優(yōu)先權(quán),。
  CAN的報(bào)文格式有兩種,不同之處其實(shí)就是識(shí)別符長(zhǎng)度不同,,具有11位識(shí)別符的幀稱(chēng)為標(biāo)準(zhǔn)幀,,而還有29位識(shí)別符的幀為擴(kuò)展幀,CAN報(bào)文有以下4個(gè)不同的幀類(lèi)型,。分別是
 ?。?)                數(shù)據(jù)幀:數(shù)據(jù)幀將數(shù)據(jù)從發(fā)送器傳輸?shù)浇邮掌鳌?br/> ?。?)                遠(yuǎn)程幀:總線節(jié)點(diǎn)發(fā)出遠(yuǎn)程幀,請(qǐng)求發(fā)送具有同一標(biāo)識(shí)符的數(shù)據(jù)幀
 ?。?)                錯(cuò)誤幀:任何節(jié)點(diǎn)檢測(cè)到總線錯(cuò)誤就發(fā)出錯(cuò)誤幀
 ?。?)                過(guò)載幀:過(guò)載幀用已在先行的后續(xù)的數(shù)據(jù)幀(或遠(yuǎn)程幀)之間提供一附加的延時(shí)
  我們先研究數(shù)據(jù)幀吧。
  一,,數(shù)據(jù)幀由7個(gè)不同位場(chǎng)組成,。
  這里的位場(chǎng),就是不同位的組合,,這名字起的很爛,,讓人看了感覺(jué)很抽象。我們來(lái)看看這些個(gè)不同的位場(chǎng)吧,。
  一開(kāi)始是一位幀起始,,也叫SOF。它用顯性位表示,,也就是0.它告訴我們,,兩個(gè)線上有電壓差了,也就是有數(shù)據(jù)了,。這個(gè)幀起始看起來(lái)只有一位,,起始不簡(jiǎn)單了。為了讓所有的分站都同步于發(fā)送報(bào)文的發(fā)送站,,好接收數(shù)據(jù),,有很多要考慮的地方。
  然后下一個(gè)場(chǎng)是仲裁場(chǎng),。這個(gè)仲裁場(chǎng)是個(gè)難點(diǎn),。但是不要怕,有我在,,你會(huì)很明白地搞定的,。
  這個(gè)仲裁很抽象,其實(shí)在這里就是為了解決一個(gè)問(wèn)題,。如果2個(gè)或2個(gè)以上的單元同時(shí)開(kāi)始傳送報(bào)文,,那么就會(huì)有總線訪問(wèn)沖突。那么仲裁機(jī)制就是用來(lái)根據(jù)標(biāo)識(shí)符優(yōu)先級(jí)來(lái)一個(gè)一個(gè)的去掉低級(jí)別的數(shù)據(jù),。我們可以詳細(xì)的描述這場(chǎng)生動(dòng)的爭(zhēng)搶總線的戰(zhàn)斗,。
  當(dāng)總線處于空閑狀態(tài)時(shí)呈隱性電平,此時(shí)任何節(jié)點(diǎn)都可以向總線發(fā)送顯性電平作為幀的開(kāi)始,。2個(gè)或2個(gè)以上的節(jié)點(diǎn)同時(shí)發(fā)送開(kāi)始爭(zhēng)搶總線,,但是總線只能被一個(gè)人搶走。總線只屬于一個(gè)他,。這時(shí)候到底怎么決定誰(shuí)留下,,誰(shuí)滾蛋呢。我們開(kāi)始考慮,,思索,,我們以前定義了標(biāo)識(shí)符,標(biāo)識(shí)符有優(yōu)先級(jí),,它越小,,它優(yōu)先級(jí)越高。那么怎么實(shí)現(xiàn)的呢,??聪旅姘?br/>  首先搞明白兩點(diǎn),一 下面的圖 低波形代表0,,高波形代表1 二 當(dāng)隱性碰到顯性,,就變?yōu)轱@性。
  如圖所示,,節(jié)點(diǎn)A和節(jié)點(diǎn)B的標(biāo)識(shí)符的第lO,、9、8位電平相同,,因此兩個(gè)節(jié)點(diǎn)偵聽(tīng)到的信息和它們發(fā)出的信息相同,。第7位節(jié)點(diǎn)B發(fā)出一個(gè)“1”,但從節(jié)點(diǎn)上接收到的消息卻是“0”,,為什么呢,,因?yàn)锳節(jié)點(diǎn)同時(shí)發(fā)出顯性位,讓總線也變成顯性了,,也就是0,。節(jié)點(diǎn)B會(huì)退出發(fā)送處于單純監(jiān)聽(tīng)方式而不發(fā)送數(shù)據(jù);節(jié)點(diǎn)A成功發(fā)送仲裁位從而獲得總線的控制權(quán),,繼而發(fā)送全部消息,。總線中的信號(hào)持續(xù)跟蹤最后獲得總線控制權(quán)發(fā)出的報(bào)文,,本例中節(jié)點(diǎn)A的報(bào)文將被跟蹤,。這種非破壞性位仲裁方法的優(yōu)點(diǎn)在于,在網(wǎng)絡(luò)最終確定哪個(gè)節(jié)點(diǎn)被傳送前,,報(bào)文的起始部分已經(jīng)在網(wǎng)絡(luò)中傳輸了,,因此具有高優(yōu)先級(jí)的節(jié)點(diǎn)的數(shù)據(jù)傳輸沒(méi)有任何延時(shí)。在獲得總線控制權(quán)的節(jié)點(diǎn)發(fā)送數(shù)據(jù)過(guò)程中,,其他節(jié)點(diǎn)成為報(bào)文的接收節(jié)點(diǎn),,并且不會(huì)在總線再次空閑之前發(fā)送報(bào)文

QQ截圖20150508153959.png

  在這逐位的比較中,最終節(jié)點(diǎn)B因?yàn)榈谄呶坏钠顏G掉了總線,。從此單純監(jiān)聽(tīng),,江山就拱手讓給了節(jié)點(diǎn)A了。這就是仲裁機(jī)制
  這里我們涉及到總線值
  總線值
  總線有二個(gè)互補(bǔ)的邏輯值:“顯性”或“隱性”,?!帮@性”位和“隱性”位同時(shí)傳送時(shí),總線的結(jié)果值為“顯性”,。比如,,在總線的“寫(xiě)與”執(zhí)行時(shí),邏輯0代表“顯性”等級(jí),,邏輯1代表“隱性”等級(jí),。
  上面我們說(shuō)過(guò),報(bào)文有兩種格式,,標(biāo)準(zhǔn)和擴(kuò)展,。這里,不同的格式仲裁場(chǎng)是不一樣的,。標(biāo)準(zhǔn)格式下,,仲裁場(chǎng)由11位識(shí)別符和RTR位組成。但在擴(kuò)展格式里,,包括29位識(shí)別符,,SRR位,IDE位,,RTR位,。
  RTR位。Remote Tranmission Request BIT 全稱(chēng)為 遠(yuǎn)程發(fā)送請(qǐng)求位,。它在數(shù)據(jù)幀里必須為顯性0 ,,但在遠(yuǎn)程幀里為隱性1。我暈,,為什么這么搞呢,,不急,先留著這個(gè)問(wèn)題,。
  SRR位,,替代遠(yuǎn)程請(qǐng)求位,SRR是一隱性位,,也就是1,,它在擴(kuò)展格式的標(biāo)準(zhǔn)幀RTR位位置,那么標(biāo)準(zhǔn)幀怪不得優(yōu)先于擴(kuò)展幀了,,因?yàn)樵趥鬏斖?1位標(biāo)識(shí)符之后(擴(kuò)展幀的后18位在最后發(fā)送,,先發(fā)送11位標(biāo)識(shí)符),輪到標(biāo)準(zhǔn)幀的RTR位和擴(kuò)展幀的SRR位了。這時(shí)候,,標(biāo)準(zhǔn)幀的RTR為顯性,,而擴(kuò)展幀SRR為隱性,這樣,,總線自然就被標(biāo)準(zhǔn)幀占據(jù),。同時(shí)上面那個(gè)問(wèn)題,也一目了然了,,CAN總線協(xié)議設(shè)計(jì)者,,肯定是設(shè)計(jì)了數(shù)據(jù)幀優(yōu)先于遠(yuǎn)程幀所以
  IDE 全稱(chēng)識(shí)別符擴(kuò)展位(Identifier Extension Bit),它屬于
  擴(kuò)展格式的仲裁場(chǎng)
  標(biāo)準(zhǔn)格式的控制場(chǎng)
  標(biāo)準(zhǔn)格式的IDE位為顯性,,擴(kuò)展格式里IDE位為隱性,。這樣擴(kuò)展格式的數(shù)據(jù)幀優(yōu)先級(jí)又落下了一截。
  控制場(chǎng)
  控制場(chǎng)有6位組成,。標(biāo)準(zhǔn)的跟擴(kuò)展的又不同,。標(biāo)準(zhǔn)的格式里的幀先是IDE位
  ,然后保留位r0,,然后數(shù)據(jù)長(zhǎng)度代碼(共四位,,分別是DLC3,DLC2,,DLC1,,DLC0)而擴(kuò)展格式里,IDE替換為r1保留位,,其余不變,。
  數(shù)據(jù)長(zhǎng)度代碼指示了數(shù)據(jù)場(chǎng)里的字節(jié)數(shù)量。
  數(shù)據(jù)場(chǎng):
  數(shù)據(jù)場(chǎng)由發(fā)送數(shù)據(jù)組成,,可以為0~8個(gè)字節(jié),,從高位開(kāi)始(MSB)先發(fā)送。
  CRC場(chǎng)
  包括CRC序列,,和CRC界定符,。
  這個(gè)CRC序列又是一個(gè)難點(diǎn),具體什么是CRC序列呢,,
  CRC即循環(huán)冗余校驗(yàn)碼(Cyclic Redundancy Check):是數(shù)據(jù)通信領(lǐng)域中最常用的一種差錯(cuò)校驗(yàn)碼,,其特征是信息字段和校驗(yàn)字段的長(zhǎng)度可以任意選定。
  生成CRC碼的基本原理:任意一個(gè)由二進(jìn)制位串組成的代碼都可以和一個(gè)系數(shù)僅為‘0’和‘1’取值的多項(xiàng)式一一對(duì)應(yīng),。例如:代碼1010111對(duì)應(yīng)的多項(xiàng)式為x6+x4+x2+x+1,,而多項(xiàng)式為x5+x3+x2+x+1對(duì)應(yīng)的代碼101111。
  參考一下下面的例題.自已再領(lǐng)悟一下吧! 已知信息位為1100,,生成多項(xiàng)式G(x) = x3+x+1,,求CRC碼,。 M(x) = 1100 M(x)*x3 = 1100000 G(x) = 1011 M(x)*x3 / G(x) = 1110 + 010 /1011 R(x) = 010 CRC碼為: M(x)*x 3+R(x)=1100000+010 =1100010 其原理是:CRC碼一般在k位信息位之后拼接r位校驗(yàn)位生成。編碼步驟如下: (1)將待編碼的k位信息表示成多項(xiàng)式 M(x),。 (2)將 M(x)左移 r 位,,得到 M(x)*xr 。 (3)用r+1位的生成多項(xiàng)式G(x)去除M(x)*xr 得到余數(shù)R(x),。 (4)將M(x)*xr 與R(x)作模2加,得到CRC碼,。
  應(yīng)答場(chǎng)
  應(yīng)答場(chǎng)(ACK)長(zhǎng)度為2個(gè)位,,包含應(yīng)答間隙和應(yīng)答界定符,在ACK場(chǎng)里,,發(fā)送站發(fā)送兩個(gè)隱性位,。當(dāng)接收器正確接收到有效地報(bào)文,接收器就會(huì)在應(yīng)答間隙期間(發(fā)送ACK信號(hào))向發(fā)送器發(fā)送一顯性位以示應(yīng)答,。
  二 遠(yuǎn)程幀
  通過(guò)發(fā)送遠(yuǎn)程幀,,總線的節(jié)點(diǎn)發(fā)出遠(yuǎn)程幀,請(qǐng)求以前發(fā)送給它數(shù)據(jù)幀的節(jié)點(diǎn)再發(fā)送一遍,。具體發(fā)送哪個(gè)數(shù)據(jù)幀,,由遠(yuǎn)程幀的標(biāo)識(shí)符決定。
  遠(yuǎn)程幀的RTR是隱性的,。沒(méi)有數(shù)據(jù)場(chǎng),,其余都與數(shù)據(jù)幀相同。
  三
  錯(cuò)誤幀
  錯(cuò)誤幀由兩個(gè)不同的場(chǎng)組成,,第一個(gè)場(chǎng)是不同站提供的錯(cuò)誤標(biāo)志的疊加,,第二個(gè)場(chǎng)是錯(cuò)誤界定符。
  1 錯(cuò)誤標(biāo)志
  有兩種形式的錯(cuò)誤標(biāo)志,,主動(dòng)地和被動(dòng)的,。這就讓人很明白了。也就是說(shuō)主動(dòng)發(fā)出錯(cuò)誤的節(jié)點(diǎn)發(fā)出錯(cuò)誤幀時(shí),,就是主動(dòng)地錯(cuò)誤標(biāo)志,,而接收錯(cuò)誤幀的節(jié)點(diǎn),就發(fā)出被動(dòng)錯(cuò)誤標(biāo)志,。
  主動(dòng)地錯(cuò)誤標(biāo)志由6個(gè)連續(xù)的顯性位組成,。
  被動(dòng)的錯(cuò)誤標(biāo)志由6個(gè)連續(xù)的隱形位組成,除非被其他節(jié)點(diǎn)的顯性位重寫(xiě),。
  檢測(cè)到錯(cuò)誤條件的錯(cuò)誤激活的站通過(guò)發(fā)送主動(dòng)錯(cuò)誤標(biāo)志指示錯(cuò)誤,。這個(gè)錯(cuò)誤幀也可以看做有著跟數(shù)據(jù)幀類(lèi)似的場(chǎng)結(jié)構(gòu),錯(cuò)誤標(biāo)志的形式顯然破壞了從幀起始到CRC界定符的位填充規(guī)則(檢測(cè)到5個(gè)相同的位,,就插入一個(gè)補(bǔ)充位,,但是錯(cuò)誤幀卻有6個(gè)相同的位,,顯然破壞了)?;蛘咂茐牧薃CK場(chǎng)或幀結(jié)尾場(chǎng)的固定形式,。所有其他的站由此檢測(cè)到錯(cuò)誤條件。并于此同時(shí)發(fā)送錯(cuò)誤標(biāo)志,。并且假如有很多站都有自己的錯(cuò)誤發(fā)送,,它們會(huì)都發(fā)送主動(dòng)錯(cuò)誤標(biāo)志,這種顯性標(biāo)志顯然被疊加在一起,。
  (2)錯(cuò)誤界定符
  錯(cuò)誤界定符包括8個(gè)“隱性”的位,。
  錯(cuò)誤標(biāo)志傳送了以后,每一個(gè)節(jié)點(diǎn)就發(fā)送一個(gè)“隱性”的位,,并一直監(jiān)視總線直到檢測(cè)出一個(gè)“隱性”的位為止,,然后就開(kāi)始發(fā)送其余7個(gè)“隱性”位。
  四 過(guò)載幀
  過(guò)載幀包括2個(gè)位場(chǎng):過(guò)載標(biāo)志和過(guò)載界定符
  有三種過(guò)載的情況,,這三種情況都會(huì)引起過(guò)載標(biāo)志的發(fā)送
  1接收器的內(nèi)部情況(此接收器對(duì)于下一數(shù)據(jù)幀或遠(yuǎn)程幀需要一定的延時(shí))
  這種情況引發(fā)的過(guò)載幀只允許起始于所期望間歇的第一個(gè)位時(shí)間,。
  2在間歇的第1和第2字節(jié)檢測(cè)到一個(gè)顯性位
  這里有個(gè)間歇的概念。我們可以講講,。間歇屬于幀間空間的一部分,。它包含三個(gè)隱性位。間歇期間,,所有的站不允許傳送數(shù)據(jù)幀或遠(yuǎn)程幀,。它唯一要做的就是標(biāo)示一個(gè)過(guò)載條件。
  3 如果CAN節(jié)點(diǎn)在錯(cuò)誤界定符或過(guò)載界定符的第8位采樣到一個(gè)顯性位,,
  有了上面的情況,,則節(jié)點(diǎn)會(huì)發(fā)送一個(gè)過(guò)載幀。錯(cuò)誤計(jì)數(shù)器不會(huì)增加,。
  對(duì)于情況2,,3引發(fā)的過(guò)載幀應(yīng)起始于所檢測(cè)到顯性位之后的位。
  通常為了延時(shí)下一個(gè)數(shù)據(jù)幀或遠(yuǎn)程幀,,兩種過(guò)載幀均可產(chǎn)生,。
  過(guò)載標(biāo)志
  由6個(gè)顯性位組成。過(guò)載標(biāo)志的所有形式和主動(dòng)錯(cuò)誤標(biāo)志一樣,。
  過(guò)載標(biāo)志的形式破壞了間歇場(chǎng)的固定形式,,因此,所有其他的站都檢測(cè)到過(guò)載條件并于此同時(shí)發(fā)出過(guò)載標(biāo)志,。
  過(guò)載界定符 8個(gè)隱形位
  幀間空間
  數(shù)據(jù)幀(或遠(yuǎn)程幀)與先行幀的隔離是通過(guò)幀間空間實(shí)現(xiàn)的,。無(wú)論此先行幀類(lèi)型如何。所不同的是過(guò)載幀與錯(cuò)誤幀之間沒(méi)有幀間空間,。多個(gè)過(guò)載幀之間也不是由幀間空間隔離的,。
  幀間空間包括間歇,,總線空閑的位場(chǎng)。如果錯(cuò)誤被動(dòng)的站已作為前一報(bào)文的發(fā)送器,,則其幀空間除了間歇,,總線空閑外,還包括稱(chēng)作掛起傳送的位場(chǎng),。

QQ截圖20150508154015.png

 ?。?)間歇(Intermission)
  間歇包括3個(gè)“隱性”的位。間歇期間,,所有的節(jié)點(diǎn)均不允許傳送數(shù)據(jù)幀或遠(yuǎn)程幀,,唯一要做的是標(biāo)示一個(gè)過(guò)載條件。
  如果CAN節(jié)點(diǎn)有一報(bào)文等待發(fā)送并且節(jié)點(diǎn)在間歇的第三位采集到一顯性位,,則此位被解釋為幀的起始位,并從下一位開(kāi)始發(fā)送報(bào)文的標(biāo)識(shí)符首位,,而不用首先發(fā)送幀的起始位或成為一接收器,。
  (2)總線空閑(Bus Idle)
  總線空閑的時(shí)間是任意的,。只要總線被認(rèn)定為空閑,,任何等待發(fā)送報(bào)文的節(jié)點(diǎn)就會(huì)訪問(wèn)總線。在發(fā)送其他報(bào)文期間,,有報(bào)文被掛起,,對(duì)于這樣的報(bào)文,其傳送起始于間歇之后的第一個(gè)位,。

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn),。轉(zhuǎn)載的所有的文章,、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有,。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無(wú)法一一聯(lián)系確認(rèn)版權(quán)者,。如涉及作品內(nèi)容、版權(quán)和其它問(wèn)題,,請(qǐng)及時(shí)通過(guò)電子郵件或電話通知我們,,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失,。聯(lián)系電話:010-82306118,;郵箱:[email protected]