會員登陸
帳號:

密碼:

記住我



忘記密碼?

現在註冊!
網站導航
最新下載
訪問統計 (自2012/5/3)


正在流覽:   1 名訪客





使用SPI讀取SD CARD的範例程式
新會員
註冊日期:
2018/09/25 17:29
所屬群組:
註冊會員
文章: 2
等級: 1; EXP: 2
HP : 0 / 0
MP : 0 / 0
離線
各位好,我是MCU剛入門的新手,使用PIC24FJ256GA705的SPI,配合MPLAB X IDE v5.10的模擬環境。

最近在學習SPI的SD CARD功能,其中寫入的部分我已經學會,但讀取的部分卻一直失敗。
其中,寫入SD CARD的程式碼如下
uint8_t TargetData[] = "Target: ";
// Register the GetTimestamp function as the timestamp source for the library.
FILEIO_RegisterTimestampGet (GetTimestamp);
// switch for SD Card
FILEIO_DriveMount('A', &gSdDrive, &mikroBusA);
FILEIO_Open (&file, "WRITE.TXT", FILEIO_OPEN_WRITE | FILEIO_OPEN_APPEND | FILEIO_OPEN_CREATE);
FILEIO_Write (TargetData, 1, sizeof(TargetData)-1, &file);
FILEIO_Close (&file);
可以產生一個WRITE.TXT的檔案,然後內部寫著"Target: "

另外,關於SD CARD讀取的功能,我的目標是讀取Set_V_A.TXT內的數值(例如:"100"),然後存入MCU的變數unsigned int,並給程式運算使用。
關於SD CARD的sample code,我找到的都是寫入SD CARD的功能,找不到關於讀取的sample code,因此我嘗試將寫入SD CARD的的程式修改為讀取,我的讀取程式碼如下
uint8_t SD_read_buffer[10];
// Register the GetTimestamp function as the timestamp source for the library.
FILEIO_RegisterTimestampGet (GetTimestamp);
// switch for SD Card
FILEIO_DriveMount('A', &gSdDrive, &mikroBusA);
FILEIO_Open (&file, "Set_V_A.TXT", FILEIO_OPEN_CREATE | FILEIO_OPEN_TRUNCATE | FILEIO_OPEN_READ);
FILEIO_Read (SD_read_buffer, 1, sizeof(SD_read_buffer)-1, &file);
FILEIO_Close(&file);
在讀取的過程中,無論我在Set_V_A.TXT內的數值怎麼改(例如:"100"改為"50"),最後得到的unsigned int都是3860的數值,因此想請教是否有其他可以讀取SD CARD的sample code,可以讓我參考與修改自己的程式,感激不盡。

2018/11/21 11:39
轉換PDF檔 列印


Re: 使用SPI讀取SD CARD的範例程式
管理員
註冊日期:
2010/06/30 16:18
來自 CAE, Microchip Technology Inc.
所屬群組:
站務管理者
註冊會員
文章: 1600
等級: 33; EXP: 89
HP : 164 / 822
MP : 533 / 20539
離線
MAL裡面有一些SD Card的相關應用, 希望能幫助你
http://www.microchip.com.tw/Data_CD/M ... _06_windows_installer.exe

附加檔案:



jpg  未命名.jpg (123.72 KB)
7103_5bf61edb9f479.jpg 1084X473 px

2018/11/22 11:13
轉換PDF檔 列印






無法在此發表文章
可以在此觀看文章
無法回覆文章
無法編輯自己的文章
無法刪除自己的文章
無法發起投票調查
無法在此投票
無法上傳附加檔案
無法不經審核直接發表文章

[進階搜尋]


搜尋
Microchip連結

網頁捷徑
2019 Winter Elite 報名
教育訓練
其它網站連結
電話: 02-25000405
產品技術問題產品技術支援專線:0800-717718 台北02-25088600 新竹03-5778366 Ext. 8600 高雄07-2137830 MicrochipDIRECT 專線: 07-2137830
Powered by XOOPS © 2001-2012 The XOOPS Project