新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > STM8 SPI 例程 通信出錯

        STM8 SPI 例程 通信出錯

        作者: 時間:2016-11-10 來源:網絡 收藏
        這個STM8SPI通信也夠奇葩的,跟STM32有大區別。光判斷發送空和接收空的標志還不行,還必須判斷忙標志位,而且讀數的時候要等忙標志完畢才能讀,廢話少說上代碼:

        這是一段發2字節收2字節的代碼,注意如果第二個字節接收才有效的話,也需要發送第二個字節才能提供時鐘進行接收:

        本文引用地址:http://www.104case.com/article/201611/317109.htm
        1. GPIO_WriteLow(GPIOA,GPIO_PIN_3);
        2. while(SPI_GetFlagStatus(SPI_FLAG_TXE)==RESET){}
        3. SPI_SendData(0x80|0x75);
        4. while(SPI_GetFlagStatus(SPI_FLAG_BSY)==SET){}
        5. while(SPI_GetFlagStatus(SPI_FLAG_RXNE)==RESET){}/*¸Ã×Ö½Ú¶ªÆú*/
        6. ret1=SPI_ReceiveData();
        7. while(SPI_GetFlagStatus(SPI_FLAG_TXE)==RESET){}
        8. SPI_SendData(0x75);
        9. while(SPI_GetFlagStatus(SPI_FLAG_BSY)==SET){}
        10. while(SPI_GetFlagStatus(SPI_FLAG_RXNE)==RESET){}
        11. ret2=SPI_ReceiveData();
        12. GPIO_WriteHigh(GPIOA,GPIO_PIN_3);



        關鍵詞: STM8SPI通信出

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 南丹县| 大姚县| 信宜市| 饶平县| 从江县| 安平县| 安乡县| 金塔县| 常宁市| 青神县| 元氏县| 肥西县| 泰兴市| 延吉市| 襄樊市| 梁平县| 龙州县| 岳阳县| 封丘县| 娄底市| 旌德县| 嵊泗县| 黔东| 彭水| 潢川县| 达尔| 贵定县| 虞城县| 微博| 沈丘县| 多伦县| 昭觉县| 翼城县| 鱼台县| 独山县| 彰武县| 淮滨县| 安乡县| 册亨县| 韩城市| 稷山县|