隨著能源需求的日益增長,科技的日趨智能化,復雜高效的多機控制,已日趨成為人們生產生活必然趨勢。中科昊芯順應時代要求,推出適用于高精度工業自動化運動控制的新版HXS320F28034數字信號處理器DSP,其LIN模塊LIN總線收發,以28位寄存器可編程實現228種不同波特率,以匹配多種20kbps以下總線傳輸需求,從而更加高效地助力于工程師,可實現1片主DSP,與16片從DSP間的控制指令收發,廣泛應用于電動汽車、智能家居等高復雜度控制領域。
自平頭哥半導體有限公司的劍池集成開發環境(簡稱“CDK”)支持HX2000系列芯片調試以來,本期以USB_LIN通信收發實例講解LIN網絡通信功能。
HX2000系列LIN總線通信格式如下,可通過SCIGCR1[LINMODE]配置,選擇SCI/LIN模式;通過SCIGCR1[CLK_MASTER],選擇主/從機模式;通過SCIGCR1配置,選擇所需的傳輸格式參數;通過配置MBUFMODE位,選擇多緩沖模式;通過編程BRSR寄存器,配置傳輸波特率;通過SCIGCR1[SWnRST]使能,復位釋放LIN總線模塊;通過SCIFORMAT[LENGTH]配置,實現1~8字節的總線通信傳輸,過程為:
PC端通過LIN收發器,向DSP發送無條件幀頭,DSP通過LINID[RECEIVEID]接收有效幀ID,將通過SCISETINT[SETIDINT]觸發ID有效中斷:根據該ID所對應的幀屬性,確定主機的傳輸狀態;若為主機發送,則通過SCIGCR1[RXENA]使能打開接收線,由LINRDx寄存器,通過GPIO定義的LINRX引腳,接收來自LIN收發器發送的幀數據;若為主機接收,需延遲一段幀時隙,以完成同步幀、ID有效幀接收操作后,由DSP的LINTDx寄存器,通過SCIGCR1[TXENA]使能打開發送線,通過GPIO所定義的LINTX引腳,發送數據給LIN收發器,通過LIN收發器向PC端發送數據。
由此設計USB_LIN通信收發實例:采用LIN、LIN傳輸芯片與USB_LIN轉換模塊,通過USB_LIN網絡調試軟件,向CPU發送任意一組數據,CPU接收所發送的數據,硬件連接如下圖所示:
基于以上分析,在CDK上開發LIN通信程序,代碼包括:LIN的GPIO配置、初始化參數配置、LIN幀頭ID接收中斷判斷服務程序,LIN總線發送與接收程序,主程序調用執行。主要代碼如下:
intmain(void) { /*系統時鐘初始化*/ InitSysCtrl(); /*LIN的GPIO引腳配置*/ InitLinaGpio(); /*LIN_LIN功能參數配置*/ LIN_LIN_init();/ /*關中斷*/ InitPieCtrl(); /*清中斷*/ IER=0x0000; IFR=0x0000; /*初始化中斷向量表*/ InitPieVectTable(); EALLOW; /*ID有效掩碼匹配中斷,用于判斷主機的傳輸狀態*/ PieVectTable.LIN1INTA=&LIN1_isr; EDIS; /*打開CPU的IER中斷*/ IER|=M_INT9; /*打開PIE對應的中斷*/ PieCtrlRegs.PIEIER9.bit.INTx4=1; /*打開全局中斷*/ EINT; /*LIN中斷及ID配置*/ LIN_interrupt_init(); /*ID掩碼發送,用于生成幀頭*/ LinaRegs.LINID.bit.IDBYTE=LIN_ID; while(1) { /*LIN發送*/ receive_data=LIN_trans(); } return0; }
CDK上開發LIN通信收發程序,編譯結果為:
編譯通過后,就可以開始調試了,調試結果為:
調試后,可通過USB_LIN網絡通信軟件,查看發送與接收到的數據如下圖:
關于昊芯
“智由芯生 創享未來”,昊芯是數字信號處理器專業供應商。作為中國科學院科技成果轉化企業,瞄準國際前沿芯片設計技術,依托多年積累的雄厚技術實力及對產業鏈的理解,以開放積極的心態,基于開源指令集架構RISC-V,打造多個系列數字信號處理器產品,并構建完善的處理器產品生態系統。產品具有廣闊的市場前景,可廣泛應用于工業控制及電機驅動、數字電源、光伏、儲能、新能源汽車、消費電子、白色家電等領域。
-
dsp
+關注
關注
546文章
7671瀏覽量
345202 -
寄存器
+關注
關注
30文章
5167瀏覽量
118227 -
usb
+關注
關注
59文章
7521瀏覽量
260060 -
網絡
+關注
關注
14文章
7289瀏覽量
87761 -
數字信號
+關注
關注
2文章
829瀏覽量
47296 -
LIN
+關注
關注
4文章
193瀏覽量
39999 -
平頭哥
+關注
關注
0文章
63瀏覽量
8964 -
中科昊芯
+關注
關注
5文章
73瀏覽量
5069
發布評論請先 登錄
相關推薦
MM32F5270 UART實現LIN通信
![MM32F5270 UART實現<b class='flag-5'>LIN</b><b class='flag-5'>通信</b>](https://file1.elecfans.com/web2/M00/BA/F2/wKgZomWWfCeAau_kAAAQ04EU_xQ588.png)
使用USB-8476 LIN2.1的通信問題
LIN通信能直接進行嗎?
汽修示波器測量汽車LIN總線信號及波形分析
【應用筆記】基于芯海CS32F03x UART外設軟件模擬LIN從機與LIN總線通信
綜合CAN和LIN通信功能的TPMS系統設計和應用
![綜合CAN和<b class='flag-5'>LIN</b><b class='flag-5'>通信</b><b class='flag-5'>功能</b>的TPMS系統設計和應用](https://file1.elecfans.com//web2/M00/A5/5D/wKgZomUMOBaAQxWAAAAsFPe6g7Q069.jpg)
NCV7425:局部互連網絡(LIN)收發器
![NCV7425:局部互連<b class='flag-5'>網絡</b>(<b class='flag-5'>LIN</b>)<b class='flag-5'>收發</b>器](https://file1.elecfans.com//web2/M00/A6/1C/wKgZomUMO8SAZ721AAAMQn7fDvc087.jpg)
LIN入門基礎之LIN 2.1講解資料下載
![<b class='flag-5'>LIN</b>入門基礎之<b class='flag-5'>LIN</b> 2.1<b class='flag-5'>講解</b>資料下載](https://file.elecfans.com/web1/M00/E7/B9/pIYBAGBhbwmALY16AAFbxxOwxx8078.png)
芯教程丨平頭哥助力中科昊芯HX2000系列芯片專題SCI串口通信(二)AutoBaud自動波特率
![芯教程丨平頭哥助力中科昊芯<b class='flag-5'>HX2000</b><b class='flag-5'>系列</b><b class='flag-5'>芯片</b>專題SCI串口<b class='flag-5'>通信</b>(二)AutoBaud自動波特率](https://file.elecfans.com/web2/M00/0D/A0/poYBAGEDcRyAJzPIAAA6J3gEhpQ488.jpg)
芯教程丨平頭哥助力中科昊芯HX2000系列芯片專題SCI串口通信(三)FIFO中斷通信
![芯教程丨平頭哥助力中科昊芯<b class='flag-5'>HX2000</b><b class='flag-5'>系列</b><b class='flag-5'>芯片</b>專題SCI串口<b class='flag-5'>通信</b>(三)FIFO中斷<b class='flag-5'>通信</b>](https://file.elecfans.com/web2/M00/40/13/poYBAGJrifOAHrt_AADsXZ_x3z4373.png)
評論