新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > SPI接口基礎上的各種串行通信工作方式配置及驅動編程

        SPI接口基礎上的各種串行通信工作方式配置及驅動編程

        作者: 時間:2012-10-10 來源:網絡 收藏

          圖4中2號機SPI通信和UART通信皆為Slaver方式,由于SPI、UART共用一個中斷,會導致通信工作過程不正常,嚴重時SPI和UART通信皆無法正常進行。上述協議無法滿足需要。為此,在基本協議的基礎上,構造高級的協議。

          高級協議:主機和從機皆用定時器進行SPI數據幀的收發,定時器是SPI通信的發動機,通信是由主機定時器發動。從機僅被動收發,為了保證SPI收發雙方數據包的字節相位匹配,必須設置數據包收發緩沖區,收發緩沖區字節個數應當是數據包的N倍。同時,數據包中設置若干包標示字節,通常為頭字節、尾字節,以便主從機在接收數據時可以動態的進行字節相位的校準,保證數據接收的可靠性。高級協議構造示意圖如圖5所示。


        圖5中,SPI通信數據包為8個字節,包標識字節為0x0d、0x0c。SPI通信發動采用PCA定時器模式,讀者也可以采用定時器T1和T2實現SPI通信發動。參考程序如下:

        數字通信相關文章:數字通信原理


        通信相關文章:通信原理




        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 珠海市| 玛沁县| 神农架林区| 鄂温| 澄江县| 宣城市| 满城县| 浑源县| 莱阳市| 建湖县| 江门市| 晋宁县| 凯里市| 榆中县| 买车| 区。| 六盘水市| 康乐县| 嵩明县| 大悟县| 合肥市| 阿拉善盟| 格尔木市| 会同县| 抚宁县| 筠连县| 佳木斯市| 教育| 日喀则市| 弋阳县| 青龙| 常山县| 龙川县| 福贡县| 文成县| 南康市| 益阳市| 尼勒克县| 安国市| 南汇区| 尤溪县|