基于FPGA的SPI總線(xiàn)在軟件接收機上的應用
3.2 模塊設計
3.2.1 分頻模塊
由于SPI總線(xiàn)協(xié)議要求的SCK時(shí)鐘頻率與FPGA時(shí)鐘頻率不一致,所以對基帶時(shí)鐘進(jìn)行分頻。本文中,基帶時(shí)鐘頻率為40 MHz,SPI總線(xiàn)時(shí)鐘頻率為1 MHz,故需要進(jìn)行40倍分頻。
3.2.2 發(fā)送數據模塊
在片選信號拉低之前,時(shí)鐘信必須為低電平。當片選信號拉低后,SCK開(kāi)始工作,然后寫(xiě)八位地址,接著(zhù)寫(xiě)32位數據;發(fā)送操作結束后,片選信號拉高,SCK=0。代碼如下:
3.2.3 接收數據模塊
當片選拉低后,SCK=0,同時(shí)寫(xiě)八位地址并且使SDA為高阻,再讀32位數據;當片選拉高時(shí),CS=1,SCK=0,此外,在片選信號拉低之前,SCK必須為低電平。代碼如下:

評論