国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

CAN協(xié)議詳解+常見問題匯總,吐血整理?。?!

這篇具有很好參考價(jià)值的文章主要介紹了CAN協(xié)議詳解+常見問題匯總,吐血整理?。?!。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

文章分兩部分,一是CAN的詳解,二是常見問題匯總;文章長(zhǎng),但是都是重點(diǎn)精華,往有幫助~

(參考的是火哥的STM32有關(guān)CAN協(xié)議的文檔)

一、CAN的詳解

1. 物理層

  • CAN總線:成為汽車計(jì)算機(jī)控制系統(tǒng)和嵌入式工業(yè)控制局域網(wǎng)的標(biāo)準(zhǔn)總線。
  • CAN是異步通訊,只有CAN_High和CAN_Low兩條信號(hào)線,且這兩條信號(hào)線是差分信號(hào)線,以差分信號(hào)的形式通訊;
  • CAN是半雙工的,在同一時(shí)刻,一個(gè)通訊節(jié)點(diǎn)發(fā)送消息,其他節(jié)點(diǎn)只能接收消息;
  • CAN物理層的形式分為閉環(huán)總線和開環(huán)總線,閉環(huán)總線是高速短距離的,長(zhǎng)度最長(zhǎng)40m,通信速度最高10Mbps;開環(huán)總線是低速遠(yuǎn)距離的,長(zhǎng)度最長(zhǎng)1km,通信速度最高125kbps。開環(huán)閉環(huán)的區(qū)別在于差分信號(hào)線是不是連在一起的。
  • CAN總線可以掛載多個(gè)節(jié)點(diǎn):

can csdn,stm32,嵌入式硬件,單片機(jī)

can csdn,stm32,嵌入式硬件,單片機(jī)

  • 差分信號(hào):兩根信號(hào)線的幅度相同,相位相反,通過電壓差代表電平1和0;差分信號(hào)優(yōu)點(diǎn):抗干擾能力強(qiáng),因?yàn)橛型饨缭肼暩蓴_時(shí),會(huì)同時(shí)耦合到這兩條信號(hào)線上,由于接收端只關(guān)心信號(hào)的差值,因此噪聲可以抵消。
  • 邏輯電平為1是隱性電平,CAN_High和CAN_Low電壓都是2.5v,壓差為0;邏輯電平為0顯性電平,CAN_High電壓3.5v和CAN_Low電壓1.5v,壓差2v。

2. 協(xié)議層

  • CAN中,每個(gè)數(shù)據(jù)位又分為多個(gè)段,包括:SS、PTS、PBS1、PBS2;一個(gè)數(shù)據(jù)位由8~25個(gè)Tq表示,這個(gè)段的作用是保證讓該節(jié)點(diǎn)與總線的時(shí)序同步,確保通訊正常;can csdn,stm32,嵌入式硬件,單片機(jī)
  • 通訊波特率由Tq的時(shí)間長(zhǎng)度,以及每位有多少個(gè)Tq決定:

can csdn,stm32,嵌入式硬件,單片機(jī)

  • CAN協(xié)議是如何通訊的?對(duì)數(shù)據(jù)、操作命令(如讀/寫)以及同步信號(hào)進(jìn)行打包,打包后的這些內(nèi)容稱為報(bào)文。具體:在原始數(shù)據(jù)段的前面加上傳輸起始標(biāo)簽、片選(識(shí)別)標(biāo)簽和控制標(biāo)簽,在數(shù)據(jù)的尾段加上 CRC 校驗(yàn)標(biāo)簽、應(yīng)答標(biāo)簽和傳輸結(jié)束標(biāo)簽,把這些內(nèi)容按特定的格式打包好,就可以用一個(gè)通道表達(dá)各種信號(hào)了,這樣的報(bào)文就被稱為 CAN 的“數(shù)據(jù)幀”。
  • CAN有5種數(shù)據(jù)幀,每種數(shù)據(jù)幀的用途不一樣:can csdn,stm32,嵌入式硬件,單片機(jī)
  • 具體介紹數(shù)據(jù)幀:數(shù)據(jù)幀以一個(gè)顯性位(邏輯 0)開始,以 7 個(gè)連續(xù)的隱性位(邏輯 1)結(jié)束,在它們之間,分別有仲裁段、控制段、數(shù)據(jù)段、 CRC 段和 ACK 段。
  • 幀起始,以顯性電平開始,用于通知各個(gè)節(jié)點(diǎn)將有數(shù)據(jù)傳輸;
  • 仲裁段:通過仲裁ID來決定優(yōu)先級(jí),優(yōu)先級(jí)高的ID先把數(shù)據(jù)發(fā)出去,利用隱性和顯性電平作為仲裁,誰先出現(xiàn)隱性電平,誰就先失去對(duì)總線的占有權(quán)。標(biāo)準(zhǔn)格式ID是11位,擴(kuò)展格式ID為29位。can csdn,stm32,嵌入式硬件,單片機(jī)
  • can csdn,stm32,嵌入式硬件,單片機(jī)
  • 控制段中的DLC段,表示報(bào)文數(shù)據(jù)段有多少個(gè)字節(jié)。
  • 數(shù)據(jù)段有0到8個(gè)字節(jié)組成。
  • CRC段是校驗(yàn)位,接收節(jié)點(diǎn)算出的 CRC 碼跟接收到的 CRC 碼不同, 則它會(huì)向發(fā)送節(jié)點(diǎn)反饋出錯(cuò)信息,利用錯(cuò)誤幀請(qǐng)求它重新發(fā)送。
  • ACK段是應(yīng)答段,發(fā)送節(jié)點(diǎn)發(fā)送的是隱性位,而接收節(jié)點(diǎn)則發(fā)送顯性位以示應(yīng)答。
  • 幀結(jié)束,由7個(gè)隱性位表示結(jié)束。

3. STM32有關(guān)CAN的配置

  • CAN 控制內(nèi)核包含了各種控制寄存器及狀態(tài)寄存器,如主控制寄存器 CAN_MCR 及位時(shí)序寄存器 CAN_BTR。
  • 主控制寄存器 CAN_MCR 負(fù)責(zé)管理 CAN 的工作模式,如自動(dòng)喚醒、自動(dòng)離線;
  • 位時(shí)序寄存器 CAN_BTR 用于配置測(cè)試模式、波特率以及各種位內(nèi)的段參數(shù);

①測(cè)試模式包括:正常模式、靜默模式、回環(huán)模式及靜默回環(huán)模式;

  1. 正常模式下就是一個(gè)正常的 CAN 節(jié)點(diǎn),可以向總線發(fā)送數(shù)據(jù)和接收數(shù)據(jù)。
  2. 靜默模式只可向總線發(fā)送數(shù)據(jù)1,不能發(fā)送數(shù)據(jù)0,可從總線接收數(shù)據(jù),用于監(jiān)測(cè),它可以用于分析總線上的流量;
  3. 回環(huán)模式,輸入端只接收自己發(fā)送端的內(nèi)容,不接收來自總線上的內(nèi)容。使用回環(huán)模式可以進(jìn)行自檢;
  4. 回環(huán)靜默模式,輸入端只接收自己發(fā)送端的內(nèi)容,不接收來自總線上的內(nèi)容,用于自檢;

②位時(shí)序:

STM32 的 CAN 外設(shè)位時(shí)序中只包含 3 段,分別是同步段 SYNC_SEG、位段 BS1 及位段 BS2,采樣點(diǎn)位于 BS1 及 BS2 段的交界處;這個(gè)位時(shí)序?qū)?yīng)了CAN一個(gè)數(shù)據(jù)位的不同段,即N*Tq=一個(gè)數(shù)據(jù)位;

③計(jì)算波特率:

一個(gè)數(shù)據(jù)位的Tq是等于同步段、BS1和BS2段這三個(gè)段Tq的總和,CAN1和CAN2掛載在APB1上,位時(shí)序寄存器可以分頻時(shí)鐘,Tq=分頻數(shù)/36MHz,CAN的波特率=1/N*Tq。

二、STM32對(duì)CAN的發(fā)送郵箱

  • 3個(gè)發(fā)送郵箱,最多可以緩存 3 個(gè)待發(fā)送的報(bào)文;

can csdn,stm32,嵌入式硬件,單片機(jī)

  • 當(dāng)我們要使用 CAN 外設(shè)發(fā)送報(bào)文時(shí),把報(bào)文的各個(gè)段分解,按位置寫入到這些寄存器中;

三、STM32對(duì)CAN的接收郵箱FIFO:它一共有 2 個(gè)接收 FIFO,每個(gè) FIFO 中有 3 個(gè)郵箱,即最多可以緩存 6 個(gè)接收到的報(bào)文;

can csdn,stm32,嵌入式硬件,單片機(jī)

  • 通過中斷或狀態(tài)寄存器知道接收 FIFO 有數(shù)據(jù)后,我們?cè)僮x取這些寄存器的值即可把接收到的報(bào)文加載到 STM32 的內(nèi)存中。
  • 接收?qǐng)?bào)文時(shí),通過檢測(cè)標(biāo)志位獲知接收 FIFO 的狀態(tài),若收到報(bào)文,可調(diào)用庫(kù)函數(shù)CAN_Receive 把接收 FIFO 中的內(nèi)容讀取到預(yù)先定義的接收類型結(jié)構(gòu)體中,然后再訪問該結(jié)構(gòu)體即可利用報(bào)文了。

四、驗(yàn)收篩選器:有 14個(gè)篩選器組,每個(gè)篩選器組有 2 個(gè)寄存器。

發(fā)送節(jié)點(diǎn)將報(bào)文廣播給所有接收器時(shí),接收節(jié)點(diǎn)會(huì)根據(jù)報(bào)文標(biāo)識(shí)符的值來確定軟件是否需要該消息,為了簡(jiǎn)化軟件的工作, STM32 的 CAN 外設(shè)接收?qǐng)?bào)文前會(huì)先使用驗(yàn)收篩選器檢查,只接收需要的報(bào)文到 FIFO 中;

  • 篩選器工作的時(shí)候,可以調(diào)整篩選 ID 的長(zhǎng)度及過濾模式

(1) 標(biāo)識(shí)符列表模式,它把要接收?qǐng)?bào)文的 ID 列成一個(gè)表,要求報(bào)文 ID 與列表中的某一個(gè)標(biāo)識(shí)符完全相同才可以接收,可以理解為白名單管理。

(2) 掩碼模式,它把可接收?qǐng)?bào)文 ID 的某幾位作為列表,這幾位被稱為掩碼,可以把它理解成關(guān)鍵字搜索,只要掩碼(關(guān)鍵字)相同,就符合要求,報(bào)文就會(huì)被保存到接收 FIFO。

4. STM32軟件編程

can csdn,stm32,嵌入式硬件,單片機(jī)

(1)配置GPIO,開時(shí)鐘,設(shè)定好對(duì)應(yīng)的引腳,對(duì)應(yīng)到TX和RX;

  • TX推挽輸出、RX浮空輸入,引腳復(fù)用功能重映射。

(2)配置CAN初始化結(jié)構(gòu)體,即配置工作模式,先開時(shí)鐘;

(3)配置篩選器

(4)配置發(fā)送報(bào)文:包括使用擴(kuò)展還是標(biāo)準(zhǔn)的ID,選擇擴(kuò)展還是標(biāo)準(zhǔn)模式,發(fā)送是數(shù)據(jù)還是其他內(nèi)容,設(shè)置數(shù)據(jù)的長(zhǎng)度,設(shè)置將要發(fā)送的數(shù)據(jù):

can csdn,stm32,嵌入式硬件,單片機(jī)

(5)在中斷中接收?qǐng)?bào)文,因此要分為以下兩個(gè)步驟

  1. 配置NVIC結(jié)構(gòu)體,設(shè)置好優(yōu)先級(jí),包括優(yōu)先級(jí)組、搶占優(yōu)先級(jí)、子優(yōu)先級(jí);
  2. 在中斷服務(wù)函數(shù)中,接收?qǐng)?bào)文時(shí),通過檢測(cè)標(biāo)志位獲知接收 FIFO 的狀態(tài),若收到報(bào)文,可調(diào)用庫(kù)函數(shù)CAN_Receive 把接收 FIFO 中的內(nèi)容讀取到預(yù)先定義的接收類型結(jié)構(gòu)體中,然后再訪問該結(jié)構(gòu)體即可利用報(bào)文了。(注意:必須要在中斷內(nèi)調(diào)用 CAN_Receive 函數(shù)讀取接收FIFO 的內(nèi)容,因?yàn)橹挥羞@樣才能清除該 FIFO 的接收中斷標(biāo)志,如果不在中斷內(nèi)調(diào)用它清除標(biāo)志的話,一旦接收到報(bào)文, STM32 會(huì)不斷進(jìn)入中斷服務(wù)函數(shù),導(dǎo)致程序卡死)

二、CAN的常見問題

1、Can總線有什么了解?可以從物理層、協(xié)議層再到STM32對(duì)CAN三個(gè)方面去介紹。

2、仲裁機(jī)制?以ID來區(qū)別優(yōu)先級(jí),若有兩個(gè)節(jié)點(diǎn)同時(shí)發(fā)送數(shù)據(jù),那么由于是半雙工,在一個(gè)時(shí)間只能一個(gè)節(jié)點(diǎn)發(fā)送數(shù)據(jù),那么就要比較這兩個(gè)節(jié)點(diǎn)的ID,誰的ID先出現(xiàn)隱性電平,即高電平,誰就失去了對(duì)CAN發(fā)送數(shù)據(jù)的控制權(quán)。

3、can總線,波特率?(與Tq的大小,即與時(shí)鐘大小有關(guān);一個(gè)數(shù)據(jù)位包括的Tq的個(gè)數(shù)有關(guān))幀?(了解到的是數(shù)據(jù)幀,包括起始幀、仲裁幀、控制幀、數(shù)據(jù)幀、校驗(yàn)幀、應(yīng)答幀、結(jié)束幀)報(bào)文?(具體:在原始數(shù)據(jù)段的前面加上傳輸起始標(biāo)簽、片選(識(shí)別)標(biāo)簽和控制標(biāo)簽,在數(shù)據(jù)的尾段加上 CRC 校驗(yàn)標(biāo)簽、應(yīng)答標(biāo)簽和傳輸結(jié)束標(biāo)簽,把這些內(nèi)容按特定的格式打包好,就可以用一個(gè)通道表達(dá)各種信號(hào)了,這樣的報(bào)文就被稱為 CAN 的“數(shù)據(jù)幀”)

4、can的傳輸距離,分為開環(huán)和閉環(huán),閉環(huán)是高速近距離:10Mbps傳輸40m,開環(huán)是低速遠(yuǎn)距離:125kbps傳輸1km。

5、CAN初始化配置步驟?看軟件編程那里

6、CAN發(fā)送數(shù)據(jù)格式?

總結(jié)就是:包括使用擴(kuò)展還是標(biāo)準(zhǔn)的ID,選擇擴(kuò)展還是標(biāo)準(zhǔn)模式,發(fā)送是數(shù)據(jù)還是其他東西,設(shè)置數(shù)據(jù)的長(zhǎng)度,設(shè)置將要發(fā)送的數(shù)據(jù)。

7、CAN總線是一種多主方式的串行通訊總線,基本設(shè)計(jì)規(guī)范要求有高的位速率,高抗電子干擾性,并且能夠檢測(cè)出產(chǎn)生的任何錯(cuò)誤。

8、CAN總線原理:CAN總線以廣播的方式從一個(gè)節(jié)點(diǎn)向另一個(gè)節(jié)點(diǎn)發(fā)送數(shù)據(jù),當(dāng)一個(gè)節(jié)點(diǎn)發(fā)送數(shù)據(jù)時(shí),該節(jié)點(diǎn)的CPU把將要發(fā)送的數(shù)據(jù)和標(biāo)識(shí)符發(fā)送給本節(jié)點(diǎn)的CAN芯片,并使其進(jìn)入準(zhǔn)備狀態(tài);一旦該CAN芯片收到總線分配,就變?yōu)榘l(fā)送報(bào)文狀態(tài),該CAN芯片將要發(fā)送的數(shù)據(jù)組成規(guī)定的報(bào)文格式發(fā)出。此時(shí),網(wǎng)絡(luò)中其他的節(jié)點(diǎn)都處于接收狀態(tài),所有節(jié)點(diǎn)都要先對(duì)其進(jìn)行接收,通過檢測(cè)來判斷該報(bào)文是否是發(fā)給自己的。文章來源地址http://www.zghlxwxcb.cn/news/detail-715844.html

到了這里,關(guān)于CAN協(xié)議詳解+常見問題匯總,吐血整理?。?!的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • jenkins 常見問題匯總

    jenkins 常見問題匯總

    1、win11 節(jié)點(diǎn)(Error: Unable to access jarfile slave.jar) jenkins 默認(rèn)cd 進(jìn)入到設(shè)置的目錄下面,如果不是C盤的話,直接cd 進(jìn)入不了其他盤,所以,需要在命令前面,加參數(shù)進(jìn)入到對(duì)應(yīng)盤符。eg:E: ? ?如下配置 ?2、hudson.plugins.git.GitException: Command \\\"git checkout -f \\\" returned status code 128: jenkin

    2024年02月06日
    瀏覽(33)
  • Flask基礎(chǔ)及常見問題整理

    Flask基礎(chǔ)及常見問題整理

    使用python開發(fā)后端,目前主流的框架就是Flask和Django。其中,F(xiàn)lask是一款輕量級(jí)的Python web框架,有以下主要特點(diǎn): Flask很簡(jiǎn)單易用,可以快速上手開發(fā)web應(yīng)用。它只依賴Werkzeug和Jinja2兩個(gè)庫(kù),沒有象Django那樣的重量級(jí)復(fù)雜的功能。 Flask非常靈活,可以適用于不同的項(xiàng)目規(guī)模。從簡(jiǎn)

    2024年02月11日
    瀏覽(15)
  • 機(jī)器學(xué)習(xí)面試中常見問題整理

    機(jī)器學(xué)習(xí)( ML )作為目前一個(gè)比較火領(lǐng)域,提供了許多有趣且高薪的工作和機(jī)會(huì)。 無論你是剛剛踏入機(jī)器學(xué)習(xí)領(lǐng)域的新手,還是已經(jīng)積累了一定經(jīng)驗(yàn)的從業(yè)者,面試都是檢驗(yàn)?zāi)慵寄芎椭R(shí)的重要環(huán)節(jié)。 本文將梳理一些常見的面試問題,讓你在面試中更加自信從容。 想要從事

    2024年03月11日
    瀏覽(17)
  • 軟件平臺(tái)接口常見問題匯總

    接口常見問題匯總 一、接口技術(shù)層面 1、輸入?yún)?shù)驗(yàn)證校驗(yàn)不全面。如: ? ? ?1.1入?yún)?shù)據(jù)類型長(zhǎng)度邊界,范圍邊界。 ? ? ?1.2 入?yún)?shù)據(jù)內(nèi)容、成員內(nèi)容,有效無效,合法非法。 ? ? ?1.3 入?yún)?shù)據(jù) 特殊字符 敏感字符過濾。 ? ? ?1.4 入?yún)⒖煞癖剡x。 2、接口內(nèi)部觸發(fā)的服務(wù)相

    2023年04月21日
    瀏覽(31)
  • 等保2.0常見問題匯總

    等保2.0常見問題匯總

    等保2.0發(fā)布后,整個(gè)網(wǎng)絡(luò)安全行業(yè)積極學(xué)習(xí)并按照新規(guī)范進(jìn)行網(wǎng)絡(luò)系統(tǒng)的部署。然而許多人仍然對(duì)等保制度的來歷、發(fā)展、演變以及貫徹重點(diǎn)存在疑問。等保2.0依然在整個(gè)實(shí)施流程上由五個(gè)標(biāo)準(zhǔn)環(huán)節(jié)構(gòu)成:定級(jí)、備案、建設(shè)整改、等級(jí)測(cè)評(píng)、監(jiān)督檢查五個(gè)方面。本文匯總梳理

    2024年02月04日
    瀏覽(20)
  • 大數(shù)據(jù)常見面試問題匯總

    目錄 第1章 核心技術(shù) 1.1 LinuxShell 1.1.1 Linux常用高級(jí)命令 1.1.2 Shell常用工具及寫過的腳本 1.1.3 Shell中單引號(hào)和雙引號(hào)區(qū)別 1.2 Hadoop 1.2.1 Hadoop常用端口號(hào) 1.2.2 HDFS讀流程和寫流程 1.2.3 HDFS小文件處理 1.2.4 HDFS的NameNode內(nèi)存 1.2.5 Shuffle及優(yōu)化 1.2.6 Yarn工作機(jī)制 1.2.7 Yarn調(diào)度器 1.2.8 HDFS塊大

    2024年02月14日
    瀏覽(21)
  • 畢業(yè)設(shè)計(jì)答辯常見問題匯總

    答:P0口做數(shù)據(jù)總線用是不需要加上拉電阻,這個(gè)書上面有寫的,就是8個(gè)IO口同時(shí)控制輸出,比如P0口接1602液晶、12864液晶、數(shù)碼管的8段段選等等都不需要加上拉電阻,如果做單個(gè)的IO口用就要加上拉電阻。 答:這個(gè)論文中有的,也都是一些套話。我就不答了,我整理的都是

    2024年02月05日
    瀏覽(22)
  • Vector-常用CAN工具 - CANoe遷移常見Port配置問題

    Vector-常用CAN工具 - CANoe遷移常見Port配置問題

    ????????從 CANoe 和 CANalyzer 12.0 SP4 版本開始,以太網(wǎng) 遷移向?qū)?將在必要時(shí)自動(dòng)開始將現(xiàn)有工具配置轉(zhuǎn)換為新的 基于端口的網(wǎng)絡(luò)訪問格式。 盡管大多數(shù)現(xiàn)有配置都可以毫無問題地轉(zhuǎn)換,但有些可能不會(huì)。如果在遷移過程中遇到問題, 遷移向?qū)?將通過以下可能的問題消息提

    2024年02月07日
    瀏覽(22)
  • oracle 19c環(huán)境常見問題匯總

    1、rman備份時(shí)會(huì)消耗這么多臨時(shí)表空間 參考MOS: RMAN-08132: Warning: Cannot Update Recovery Area ORA-01652: unable to extend temp segment by 64 in tablespace TEMP (Doc ID 2658437.1) Known RMAN Performance Problems (Doc ID 247611.1) 處理辦法:備份時(shí),會(huì)話級(jí)別將optimizer_mode由ALL_ROWS改成RULE RMAN sql \\\"alter session set optimi

    2024年02月12日
    瀏覽(24)
  • FPGA/IC面試常見問題匯總

    FPGA/IC面試常見問題匯總

    參考:數(shù)字IC設(shè)計(jì)工程師筆試面試經(jīng)典100題_OnePlusZero的博客-CSDN博客_數(shù)字ic設(shè)計(jì)面試題 目錄 參考:數(shù)字IC設(shè)計(jì)工程師筆試面試經(jīng)典100題_OnePlusZero的博客-CSDN博客_數(shù)字ic設(shè)計(jì)面試題 1、同步復(fù)位和異步復(fù)位的優(yōu)缺點(diǎn) 2、什么是競(jìng)爭(zhēng)和冒險(xiǎn),如何消除? 3、什么是同步電路,什么是異

    2024年02月11日
    瀏覽(24)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包