Blackfin入門(mén)教程 SPORT

發(fā)布時(shí)間:2013-10-30 13:22    發(fā)布者:linlinsuo
關(guān)鍵詞: ADI , BLACKFIN
ADSP-BF53x上有兩個(gè)SPORT口,SPORT(synchronous serial ports)接口是ADSP-BF53x上速度最快的串口,其速度可以達到系統時(shí)鐘的1/2, 每一個(gè)SPORT口有兩根接收數據線(xiàn)和兩根傳輸數據線(xiàn),支持全雙工模式傳輸。

  SPORT接口通常用做一些高速的數據傳輸,它支持I2S模式,通常將SPORT接口連接音頻的編解碼器芯片,作為音頻數據輸出接口。

  SPORT時(shí)鐘頻率配置: SPORTx_TCLK frequency = (SCLK frequency)/(2 x (SPORTx_TCLKDIV + 1)) SPORTx_RCLK frequency = (SCLK frequency)/(2 x (SPORTx_RCLKDIV + 1)) SPORT同步信號頻率配置:

  SPORTxTFS frequency = (TSCLKx frequency)/(SPORTx_TFSDIV + 1)

  SPORTxRFS frequency = (RSCLKx frequency)/(SPORTx_RFSDIV + 1) 寄存器 功能 SPORTx_TX_CONFIG SPORTx傳輸配置寄存器 SPORTx_RX_CONFIG SPORTx傳輸配置寄存器 SPORTx_TX SPORTx傳輸寄存器 SPORTx_RX SPORTx接收寄存器 SPORTx_TSCLKDIV SPORTx傳輸時(shí)鐘配置寄存器 SPORTx_RSCLKDIV SPORTx接收時(shí)鐘配置寄存器 SPORTx_TFSDIV SPORTx傳輸同步信號配置寄存器 SPORTx_RFSDIV SPORTx接收同步信號配置寄存器 SPORTx_STAT SPORTx狀態(tài)寄存器 *pSPORT0_TCLKDIV = TCLKDIV; //配置SPORT傳輸接口的時(shí)鐘頻率

  *pSPORT0_TFSDIV = TFSDIV; //配置SPORT傳輸接口的同步頻率

  *pSPORT0_TCR1 = ITFS|TFSR|ITCLK;//配置SPORT傳輸工作模式

  *pSPORT0_TCR2 = 31; //配置SPORT以32Bit數據傳輸

  *pDMA2_PERIPHERAL_MAP = 0x2000; //設置SPORT傳輸接口DMA

  *pDMA2_CONFIG = WDSIZE_32 | DI_EN |FLOW_1; //設置DMA工作模式

  *pDMA2_START_ADDR = (void *)iTxBuffer; //設置DMA 傳輸數據起始地址

  *pDMA2_X_COUNT = 1000; //設置DMA傳輸次數

  *pDMA2_X_MODIFY = 4; //設置DMA每次地址增量變化

  *pDMA2_CONFIG = (*pDMA2_CONFIG | DMAEN); //使能傳輸DMA

  *pSPORT0_TCR1 = (*pSPORT0_TCR1 | TSPEN); //使能傳輸SPORT

  *pSIC_IAR0 = 0xffffffff;

  *pSIC_IAR1 = 0xfffff32f; //配置SPORT DMA中斷等級

  *pSIC_IAR2 = 0xffffffff;

  register_handler(ik_ivg9, Sport0_RX_ISR); //注冊接收中斷

  register_handler(ik_ivg10, Sport0_TX_ISR); //注冊傳輸中斷

  *pSIC_IMASK = 0x00000600; //使能中斷

  EX_INTERRUPT_HANDLER(Sport0_TX_ISR) //傳輸DMA中斷函數

  {

  *pDMA2_IRQ_STATUS = 0x0001; //清楚中斷標志位

  printf("SPORT TX DMA Done!\n"); //打印信息

  *pSIC_IMASK &= ~0x00000400; //關(guān)閉傳輸中斷

  } 代碼實(shí)現了通過(guò)SPORT0接口利用SPORT0 DMA傳輸數據和接收數據,SPORT接口時(shí)鐘和同步信號采用內部由系統時(shí)鐘配置分頻獲取。

  代碼描述了SPORT接口使用DMA傳輸時(shí)常用的配置,沒(méi)有和其他設備做通訊,所以看不到接收的實(shí)際數據。

對于BF60x系列,只能用CCES環(huán)境編譯,CCES中自帶了SPORT驅動(dòng),與VDSP環(huán)境不同的是,CCES提供的驅動(dòng),兼容RTOS;就是說(shuō)CCES中系統自帶的接口驅動(dòng)是操作系統格式接口的;所以這種方式下的驅動(dòng),需要摸索: 如圖中的兩個(gè)merroy,要是獨立的;否則,兩個(gè)HSPORT只能有一個(gè)被配置(重復配置);

本文地址:http://selenalain.com/thread-122561-1-1.html     【打印本頁(yè)】

本站部分文章為轉載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀(guān)點(diǎn)和對其真實(shí)性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問(wèn)題,我們將根據著(zhù)作權人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
午夜高清国产拍精品福利|亚洲色精品88色婷婷七月丁香|91久久精品无码一区|99久久国语露脸精品|动漫卡通亚洲综合专区48页