新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > SD卡SPI讀寫子程序以及SD卡設置成SPI總線的操作

        SD卡SPI讀寫子程序以及SD卡設置成SPI總線的操作

        作者: 時間:2016-11-27 來源:網絡 收藏
        上節講了SD卡有兩種總線操作方式,我選擇SPI總線方式。這樣我可以利用自己以前的SPI讀寫程序。

        #defineSD_CSp1_1//為SPI的使能端
        #define CLK p1_2//為SPI時鐘輸入
        #define MOSI p1_3//為SPI數據主輸從人端
        #define MISO p1_4//為SPI數據主人從輸端
        #define uchar unsigned char
        ucharSD_SPI_RW(uchar data_byte)//spi通信的讀寫子程序
        {
        uchar bit_ctr;
        for(bit_ctr=0;bit_ctr<8;bit_ctr++)
        {
        if((data_byte & 0x80)!=0)
        MOSI=1;
        else
        MOSI=0;
        data_byte = (data_byte << 1);
        CLK=1;
        asm("NOPnNOPnNOPnNOPn");
        if(MISO!=0)
        data_byte|=0x1;
        else
        data_byte&=0xfe;
        CLK=0;
        asm("NOPnNOPnNOPnNOPn");
        }
        return(data_byte);
        }
        這個函數包含讀寫兩部分在里面,這個有時候要修改延時時間。

        本文引用地址:http://www.104case.com/article/201611/322497.htm


        評論


        技術專區

        關閉
        主站蜘蛛池模板: 庄河市| 呈贡县| 泽普县| 綦江县| 西昌市| 邹平县| 永靖县| 长沙市| 秀山| 海宁市| 台江县| 林西县| 崇阳县| 凤山县| 崇信县| 庆阳市| 襄垣县| 浮梁县| 黎川县| 南安市| 福州市| 江源县| 赣榆县| 武清区| 维西| 洪江市| 丁青县| 桓台县| 重庆市| 麻江县| 尉氏县| 阳江市| 焦作市| 黎城县| 新田县| 额敏县| 全南县| 潮州市| 隆子县| 特克斯县| 泰宁县|