0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

【CW32通信課程實(shí)驗(yàn)板】CW32開(kāi)發(fā)者扶持計(jì)劃

jf_78601551 ? 來(lái)源:jf_78601551 ? 作者:jf_78601551 ? 2023-04-18 15:28 ? 次閱讀

前言

  • 本項(xiàng)目為立創(chuàng)EDA與芯源半導(dǎo)體合作發(fā)起的開(kāi)發(fā)者扶持計(jì)劃
  • 感謝來(lái)自CW32生態(tài)社區(qū)的技術(shù)支持
  • 支持國(guó)產(chǎn)?。?!

基于cw32實(shí)現(xiàn)的多機(jī)通信

針對(duì)于復(fù)雜的通信環(huán)境,設(shè)計(jì)一款用于多機(jī)互聯(lián)的通信系統(tǒng)。

本系統(tǒng)采用CW32F030C8T6作為主控芯片

小板獨(dú)立引出了IIC,SPI,另外接了一個(gè)USB轉(zhuǎn)串口的CH340模塊,以及一個(gè)RS485通信模塊。

一個(gè)好看的最小系統(tǒng)板

整體的電路設(shè)計(jì)

該小板主要用于通信課程的課程設(shè)計(jì),因此對(duì)所有管腳做了引出,對(duì)于幾種常用的通信功能引腳都將該腳的接口按照習(xí)慣的順序單獨(dú)排列在了板子的周?chē)?/p>

對(duì)于oled

對(duì)于板子上方的 IIC 接口可用于通信測(cè)試,也可用 OLED 屏幕的接口,該接口共有8ping ,順序按照商家銷(xiāo)售的小屏幕進(jìn)行了排列

(4接口與8接口)

image.png

需要注意的是在使用八接口時(shí)需要將板子背面的控制線焊接 ,在使用4線就能完成時(shí),其他端口均可以當(dāng)成正常端口輸出

image.png

對(duì)于RS485

本次設(shè)計(jì)采用的MAX1348通信芯片,該款芯片擁有兩個(gè)版本對(duì)于 E 版可實(shí)現(xiàn)500kb/s的無(wú)差錯(cuò)通信,并且使用這種差分通信方式,在多機(jī)互接時(shí)只需要兩個(gè)根線就可以實(shí)現(xiàn)消息的收發(fā),更多關(guān)于RS485

同樣對(duì)于該接口,在不使用時(shí)可不對(duì)連接處進(jìn)行焊接 t1與t2

對(duì)于該接口焊接時(shí),溫度200最為合適

image.png

通信方案

基于modbus的思想,將一段信息分為了 起始,地址區(qū),指令區(qū),數(shù)據(jù)區(qū),校驗(yàn)區(qū),停止符

image.png

該段信息表示:起始符為 @,地址是 001,指令為 110,需要接收到的數(shù)據(jù)位65533,crc校驗(yàn)碼 3CFC,并且附帶了一個(gè)回車(chē)符但他是隱藏的,在這段數(shù)據(jù)中我為每段區(qū)域添加了一個(gè) # 用于區(qū)分,在實(shí)際應(yīng)用時(shí)去掉 # 判斷,改為數(shù)據(jù)位判斷一樣可以實(shí)現(xiàn)

屏幕截圖 2023-04-10 212938.jpg

代碼實(shí)現(xiàn)

數(shù)據(jù)處理

在使用串口發(fā)送文本數(shù)據(jù)時(shí),發(fā)出的是ascll編碼表的十進(jìn)制數(shù),進(jìn)入單片機(jī)后會(huì)存儲(chǔ)為十六進(jìn)制數(shù),我們需要根據(jù)各區(qū)域數(shù)據(jù)的用途,在提取數(shù)據(jù)時(shí)做出不同存儲(chǔ)類(lèi)型,如在提取編號(hào)時(shí)將編號(hào)存儲(chǔ)為字符型可為我們提供更豐富編號(hào)選擇 :A001;

image.png

crc校驗(yàn)

這是一個(gè)用于crc校驗(yàn)的計(jì)算器用于驗(yàn)證:crc校驗(yàn)計(jì)算機(jī)

這個(gè)是部分的通信協(xié)議參考的crc模型,其中:

WIDTH:寬度,即生成的CRC數(shù)據(jù)位寬(0000/0000 0000/0000 0...)

POLY:十六進(jìn)制多項(xiàng)式(可以看到在各各模型中均有對(duì)應(yīng)的多項(xiàng)式;如modbus模型,數(shù)據(jù)第16 15 2 1 這幾個(gè)位為‘1’,再轉(zhuǎn)換為十六進(jìn)制),要注意的是省略了最高位

image.png

INIT:CRC初始值,和WIDTH位寬一致

XOROUT:計(jì)算結(jié)果與此參數(shù)進(jìn)行異或運(yùn)算后得到最終的CRC值

REFIN:true或false,在進(jìn)行計(jì)算之前,原始數(shù)據(jù)是否翻轉(zhuǎn)(要注意的是翻轉(zhuǎn)是是按位翻轉(zhuǎn)的,如:0011 == 1100)

REFOUT:true或false,運(yùn)算完成之后,得到的CRC值是否進(jìn)行翻轉(zhuǎn)(同上)

image.png

CW32f030自帶了crc校驗(yàn)以及相應(yīng)的模型,因此我們無(wú)須具體的去寫(xiě)完一個(gè)校驗(yàn),學(xué)會(huì)調(diào)用即可,且硬件自帶的crc校驗(yàn)運(yùn)行速度是要快于軟件實(shí)現(xiàn)的,調(diào)用方法參考:cw32官方程序移植參考

調(diào)試

image.png

點(diǎn)擊這個(gè)地方可以進(jìn)入調(diào)試模式

image.png

在這里可以添加一個(gè)變量觀察窗口

image.png

將變量復(fù)制進(jìn)串口,就可實(shí)時(shí)看到crc校驗(yàn)后的結(jié)果了

串口默認(rèn)配置

image.png

需要注意的是在我寫(xiě)的代碼里,數(shù)據(jù)停止位是換行 ,即需要在最后一個(gè) # 后面按一次 enter 鍵

我在cw32里移植了一個(gè)RTOS,不使用可以直接刪除,只用在了main.c函數(shù)中,移植過(guò)程:cw32的RTOS移植

PCB板上方空余了兩角空間可放置自己需要的通信模塊

image.png

背面焊接點(diǎn)按鍵示意

image.png

4.14驗(yàn)證不同電源之間通信

IMG_20230414_212748.jpg

4.15 發(fā)送搶占

導(dǎo)圖

image.png

代碼實(shí)現(xiàn)

image.png

更多功能還在完善中

預(yù)計(jì)完善 發(fā)送搶占 碰撞檢測(cè)

原理圖

image.png

PCB

image.png

下載鏈接:正在審核

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 單片機(jī)
    +關(guān)注

    關(guān)注

    6030

    文章

    44491

    瀏覽量

    632007
  • 半導(dǎo)體
    +關(guān)注

    關(guān)注

    334

    文章

    26870

    瀏覽量

    214387
  • 通信
    +關(guān)注

    關(guān)注

    18

    文章

    5950

    瀏覽量

    135787
  • RX480
    +關(guān)注

    關(guān)注

    0

    文章

    4

    瀏覽量

    4066
  • CW32
    +關(guān)注

    關(guān)注

    1

    文章

    174

    瀏覽量

    550
  • 武漢芯源
    +關(guān)注

    關(guān)注

    1

    文章

    65

    瀏覽量

    235
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    CW32移植Free-RTOS】CW32開(kāi)發(fā)者扶持計(jì)劃

    CW32配置Free-RTOS全過(guò)程,CW32開(kāi)發(fā)者扶持計(jì)劃
    的頭像 發(fā)表于 04-18 09:38 ?6070次閱讀
    【<b class='flag-5'>CW32</b>移植Free-RTOS】<b class='flag-5'>CW32</b><b class='flag-5'>開(kāi)發(fā)者</b><b class='flag-5'>扶持</b><b class='flag-5'>計(jì)劃</b>

    CW32飯盒派開(kāi)發(fā)板 測(cè)試IO速度

    對(duì)CW32飯盒派開(kāi)發(fā)板的GPIO進(jìn)行速度測(cè)試
    的頭像 發(fā)表于 05-26 13:07 ?42.5w次閱讀
    <b class='flag-5'>CW32</b>飯盒派<b class='flag-5'>開(kāi)發(fā)板</b> 測(cè)試IO速度

    CW32快速開(kāi)發(fā)入門(mén)

    CW32快速開(kāi)發(fā)入門(mén)
    的頭像 發(fā)表于 04-24 18:56 ?1838次閱讀
    <b class='flag-5'>CW32</b>快速<b class='flag-5'>開(kāi)發(fā)</b>入門(mén)

    CW32開(kāi)發(fā)者扶持計(jì)劃#CW32 #芯片

    CW32
    CW32生態(tài)社區(qū)
    發(fā)布于 :2023年05月24日 16:56:14

    開(kāi)始報(bào)名!CW32開(kāi)發(fā)者扶持計(jì)劃正式進(jìn)行,將助力中國(guó)的大學(xué)教育及人才培養(yǎng)

    才培養(yǎng),建立以企業(yè)為主體、市場(chǎng)為導(dǎo)向、產(chǎn)學(xué)研深度融合的技術(shù)創(chuàng)新體系。2023年3月,武漢芯源半導(dǎo)體開(kāi)發(fā)者扶持計(jì)劃正式開(kāi)始進(jìn)行,以打造更為豐富的CW32生態(tài)社區(qū)。武漢芯源半導(dǎo)體
    發(fā)表于 03-14 10:28

    開(kāi)發(fā)者扶持計(jì)劃】教師、學(xué)生、工程師均可免費(fèi)參與

    [CW32開(kāi)發(fā)者扶持計(jì)劃] 是CW32生態(tài)社區(qū)面向全球電子愛(ài)好、高校師生、工程師群體發(fā)出的一項(xiàng)
    發(fā)表于 04-27 12:10

    CW32飯盒派開(kāi)發(fā)板試用體驗(yàn)】+初識(shí)CW32飯盒派開(kāi)發(fā)板

    盼星星,盼月亮,終于收到了CW32飯盒派開(kāi)發(fā)板?;叵肫鹉翘齑饛?fù)參加活動(dòng)郵件發(fā)出去的那一刻,就在期盼。 以前也了解過(guò)CW32單片機(jī),這是一款非常優(yōu)秀的32位單片機(jī)。外部資源也豐富。這回的CW32
    發(fā)表于 05-29 15:51

    開(kāi)發(fā)者扶持計(jì)劃CW32-FreeRTOS

    cw32配置好的Free-rtos
    發(fā)表于 04-18 14:22 ?0次下載

    CW32飯盒派開(kāi)發(fā)板溫濕度采集

    CW32飯盒派開(kāi)發(fā)板采集溫濕數(shù)據(jù)并用LCD顯示
    的頭像 發(fā)表于 05-26 19:20 ?1400次閱讀
    <b class='flag-5'>CW32</b>飯盒派<b class='flag-5'>開(kāi)發(fā)板</b>溫濕度采集

    開(kāi)始報(bào)名!CW32開(kāi)發(fā)者扶持計(jì)劃正式進(jìn)行,將助力中國(guó)的大學(xué)教育及人才培養(yǎng)

    武漢芯源半導(dǎo)體積極參與推動(dòng)中國(guó)的大學(xué)教育改革以及注重電子行業(yè)的人才培養(yǎng),建立以企業(yè)為主體、市場(chǎng)為導(dǎo)向、產(chǎn)學(xué)研深度融合的技術(shù)創(chuàng)新體系。2023年3月,武漢芯源半導(dǎo)體開(kāi)發(fā)者扶持計(jì)劃正式開(kāi)始進(jìn)行,以打造更為豐富的
    的頭像 發(fā)表于 03-14 11:35 ?568次閱讀
    開(kāi)始報(bào)名!<b class='flag-5'>CW32</b><b class='flag-5'>開(kāi)發(fā)者</b><b class='flag-5'>扶持</b><b class='flag-5'>計(jì)劃</b>正式進(jìn)行,將助力中國(guó)的大學(xué)教育及人才培養(yǎng)

    cw32和stm32的區(qū)別

    cw32和stm32的區(qū)別 CW32和STM32是兩種常見(jiàn)的單片機(jī),被廣泛應(yīng)用于各種電子設(shè)備中。在本文中,我們將深入探討CW32和STM32之間的區(qū)別和優(yōu)劣勢(shì)。 1. 硬件性能 硬件性能是衡量單片機(jī)
    的頭像 發(fā)表于 08-16 11:15 ?3883次閱讀

    cw32和gd32的區(qū)別

    cw32和gd32的區(qū)別 CW32和GD32是兩種不同的芯片系列,分別由WCH和GigaDevice公司推出,兩有很多不同之處,下面我們來(lái)詳細(xì)介紹。 首先從CW32系列開(kāi)始,
    的頭像 發(fā)表于 08-16 11:15 ?1833次閱讀

    基于CW32熱敏電阻采集溫度應(yīng)用

    基于CW32熱敏電阻采集溫度應(yīng)用
    的頭像 發(fā)表于 10-25 16:45 ?494次閱讀
    基于<b class='flag-5'>CW32</b>熱敏電阻采集溫度應(yīng)用

    CW32的SPI單工模式主從通信介紹

    CW32的SPI單工模式主從通信介紹
    的頭像 發(fā)表于 10-24 15:50 ?724次閱讀
    <b class='flag-5'>CW32</b>的SPI單工模式主從<b class='flag-5'>通信</b>介紹

    基于CW32的物聯(lián)網(wǎng)應(yīng)用

    CW32】基于CW32的物聯(lián)網(wǎng)應(yīng)用
    的頭像 發(fā)表于 11-02 15:55 ?714次閱讀
    基于<b class='flag-5'>CW32</b>的物聯(lián)網(wǎng)應(yīng)用