隨著能源需求的日益增長(zhǎng),科技的日趨智能化,復(fù)雜高效的多機(jī)控制,已日趨成為人們生產(chǎn)生活必然趨勢(shì)。中科昊芯順應(yīng)時(shí)代要求,推出適用于高精度工業(yè)自動(dòng)化運(yùn)動(dòng)控制的新版HXS320F28034數(shù)字信號(hào)處理器DSP,其LIN模塊LIN總線收發(fā),以28位寄存器可編程實(shí)現(xiàn)228種不同波特率,以匹配多種20kbps以下總線傳輸需求,從而更加高效地助力于工程師,可實(shí)現(xiàn)1片主DSP,與16片從DSP間的控制指令收發(fā),廣泛應(yīng)用于電動(dòng)汽車、智能家居等高復(fù)雜度控制領(lǐng)域。



自平頭哥半導(dǎo)體有限公司的劍池集成開發(fā)環(huán)境(簡(jiǎn)稱“CDK”)支持HX2000系列芯片調(diào)試以來,本期以USB_LIN通信收發(fā)實(shí)例講解LIN網(wǎng)絡(luò)通信功能。
HX2000系列LIN總線通信格式如下,可通過SCIGCR1[LINMODE]配置,選擇SCI/LIN模式;通過SCIGCR1[CLK_MASTER],選擇主/從機(jī)模式;通過SCIGCR1配置,選擇所需的傳輸格式參數(shù);通過配置MBUFMODE位,選擇多緩沖模式;通過編程BRSR寄存器,配置傳輸波特率;通過SCIGCR1[SWnRST]使能,復(fù)位釋放LIN總線模塊;通過SCIFORMAT[LENGTH]配置,實(shí)現(xiàn)1~8字節(jié)的總線通信傳輸,過程為:

PC端通過LIN收發(fā)器,向DSP發(fā)送無條件幀頭,DSP通過LINID[RECEIVEID]接收有效幀ID,將通過SCISETINT[SETIDINT]觸發(fā)ID有效中斷:根據(jù)該ID所對(duì)應(yīng)的幀屬性,確定主機(jī)的傳輸狀態(tài);若為主機(jī)發(fā)送,則通過SCIGCR1[RXENA]使能打開接收線,由LINRDx寄存器,通過GPIO定義的LINRX引腳,接收來自LIN收發(fā)器發(fā)送的幀數(shù)據(jù);若為主機(jī)接收,需延遲一段幀時(shí)隙,以完成同步幀、ID有效幀接收操作后,由DSP的LINTDx寄存器,通過SCIGCR1[TXENA]使能打開發(fā)送線,通過GPIO所定義的LINTX引腳,發(fā)送數(shù)據(jù)給LIN收發(fā)器,通過LIN收發(fā)器向PC端發(fā)送數(shù)據(jù)。
由此設(shè)計(jì)USB_LIN通信收發(fā)實(shí)例:采用LIN、LIN傳輸芯片與USB_LIN轉(zhuǎn)換模塊,通過USB_LIN網(wǎng)絡(luò)調(diào)試軟件,向CPU發(fā)送任意一組數(shù)據(jù),CPU接收所發(fā)送的數(shù)據(jù),硬件連接如下圖所示:

基于以上分析,在CDK上開發(fā)LIN通信程序,代碼包括:LIN的GPIO配置、初始化參數(shù)配置、LIN幀頭ID接收中斷判斷服務(wù)程序,LIN總線發(fā)送與接收程序,主程序調(diào)用執(zhí)行。主要代碼如下:
intmain(void) { /*系統(tǒng)時(shí)鐘初始化*/ InitSysCtrl(); /*LIN的GPIO引腳配置*/ InitLinaGpio(); /*LIN_LIN功能參數(shù)配置*/ LIN_LIN_init();/ /*關(guān)中斷*/ InitPieCtrl(); /*清中斷*/ IER=0x0000; IFR=0x0000; /*初始化中斷向量表*/ InitPieVectTable(); EALLOW; /*ID有效掩碼匹配中斷,用于判斷主機(jī)的傳輸狀態(tài)*/ PieVectTable.LIN1INTA=&LIN1_isr; EDIS; /*打開CPU的IER中斷*/ IER|=M_INT9; /*打開PIE對(duì)應(yīng)的中斷*/ PieCtrlRegs.PIEIER9.bit.INTx4=1; /*打開全局中斷*/ EINT; /*LIN中斷及ID配置*/ LIN_interrupt_init(); /*ID掩碼發(fā)送,用于生成幀頭*/ LinaRegs.LINID.bit.IDBYTE=LIN_ID; while(1) { /*LIN發(fā)送*/ receive_data=LIN_trans(); } return0; }
CDK上開發(fā)LIN通信收發(fā)程序,編譯結(jié)果為:

編譯通過后,就可以開始調(diào)試了,調(diào)試結(jié)果為:

調(diào)試后,可通過USB_LIN網(wǎng)絡(luò)通信軟件,查看發(fā)送與接收到的數(shù)據(jù)如下圖:

關(guān)于昊芯
“智由芯生 創(chuàng)享未來”,昊芯是數(shù)字信號(hào)處理器專業(yè)供應(yīng)商。作為中國(guó)科學(xué)院科技成果轉(zhuǎn)化企業(yè),瞄準(zhǔn)國(guó)際前沿芯片設(shè)計(jì)技術(shù),依托多年積累的雄厚技術(shù)實(shí)力及對(duì)產(chǎn)業(yè)鏈的理解,以開放積極的心態(tài),基于開源指令集架構(gòu)RISC-V,打造多個(gè)系列數(shù)字信號(hào)處理器產(chǎn)品,并構(gòu)建完善的處理器產(chǎn)品生態(tài)系統(tǒng)。產(chǎn)品具有廣闊的市場(chǎng)前景,可廣泛應(yīng)用于工業(yè)控制及電機(jī)驅(qū)動(dòng)、數(shù)字電源、光伏、儲(chǔ)能、新能源汽車、消費(fèi)電子、白色家電等領(lǐng)域。
-
dsp
+關(guān)注
關(guān)注
560文章
8234瀏覽量
365760 -
寄存器
+關(guān)注
關(guān)注
31文章
5604瀏覽量
129674 -
usb
+關(guān)注
關(guān)注
60文章
8422瀏覽量
283254 -
網(wǎng)絡(luò)
+關(guān)注
關(guān)注
14文章
8217瀏覽量
93831 -
數(shù)字信號(hào)
+關(guān)注
關(guān)注
2文章
1056瀏覽量
49059 -
LIN
+關(guān)注
關(guān)注
4文章
233瀏覽量
41923 -
平頭哥
+關(guān)注
關(guān)注
0文章
74瀏覽量
10071 -
中科昊芯
+關(guān)注
關(guān)注
5文章
85瀏覽量
5943
發(fā)布評(píng)論請(qǐng)先 登錄
使用USB-8476 LIN2.1的通信問題
【應(yīng)用筆記】基于芯海CS32F03x UART外設(shè)軟件模擬LIN從機(jī)與LIN總線通信
基于CAN/LIN混合網(wǎng)絡(luò)的電梯通信系統(tǒng)
綜合CAN和LIN通信功能的TPMS系統(tǒng)設(shè)計(jì)和應(yīng)用
昊芯HX2000系列芯片助力電機(jī)安全在線調(diào)試保護(hù)
芯教程丨平頭哥助力中科昊芯HX2000系列芯片專題SCI串口通信(二)AutoBaud自動(dòng)波特率
芯力特LIN收發(fā)器芯片SIT1021總線DC/AC參數(shù)完全符合LIN標(biāo)準(zhǔn)
芯教程|平頭哥助力昊芯HX2000系列芯片電機(jī)過流跳閘保護(hù)專題(二)EPWM_DC數(shù)字比較
芯教程|平頭哥助力昊芯HX2000系列芯片電機(jī)過流跳閘保護(hù)專題(三)比較器超閾值檢測(cè)
芯教程丨平頭哥助力昊芯HX2000系列芯片CAN網(wǎng)絡(luò)通信
芯教程|平頭哥助力昊芯HX2000系列芯片專題SCI串口通訊奇偶校驗(yàn)(二)SCI增強(qiáng)FIFO
芯教程|平頭哥助力昊芯HX2000系列芯片LIN本地網(wǎng)絡(luò)互連
芯教程丨昊芯HX2000系列芯片助力電機(jī)安全在線調(diào)試保護(hù)
昊芯HX2000系列芯片 以USB_LIN通信收發(fā)實(shí)例講解LIN網(wǎng)絡(luò)通信功能
評(píng)論