NetDuino + Ethernet Shield: Как написать на SD -карту?

StackOverflow https://stackoverflow.com/questions/7824133

  •  27-10-2019
  •  | 
  •  

Вопрос

Я пробовал несколько примеров программ для записи данных на SD -карту, установленную на Ethernet Щит, но никто не сработал. Размер SD -карты 4 ГБ и отформатирован как FAT32.

Щит Ethernet - следующее:

(Куплен на Amazon - Arduino Ethernet Shield)

Enter image description here

И это пример кода, который не работает при создании приложения NetDuino (не NetDuino Plus приложение) (Fienst Line бросает исключение):

public static void Main()
{
    StorageDevice.MountSD("SD1", SPI_Devices.SPI1, Pins.GPIO_PIN_D10);

    string[] directories = System.IO.Directory.GetDirectories(@"\");
    Debug.Print("directory count: " + directories.Length.ToString());

    for (int i = 0; i < directories.Length; i++)
    {
        Debug.Print("directory: " + directories[i]);
    }

    string[] files = System.IO.Directory.GetFiles(@"\SD1");
    Debug.Print("file count: " + files.Length.ToString());

    for (int i = 0; i < files.Length; i++)
    {
        Debug.Print("filename: " + files[i]);
        FileStream fs = new FileStream(files[i], FileMode.Open, FileAccess.Read, FileShare.None, 512);
        StreamReader sr = new StreamReader(fs);
        Debug.Print("contents: " + sr.ReadToEnd());
    }
}

Есть ли пример рабочей программы?

Решение:

Благодаря Крису и Джеймсу мне удалось написать на SD -карту и прочитать из нее. После того, как все собрало, Я написал статью, если кто -то еще сталкивается с теми же проблемами.

Это было полезно?

Решение

В последнем ревизии Arduino Ethernet Shield используется заголовок «ICSP» (3x2, 6-контактный заголовок с правой стороны доски) для связи. Входные/выходные данные, идущие на вашу SD -карту, проходят через эти булавки.

Мы включили эти же заголовки в NetDuino для совместимости; Чтобы использовать этот щит, вы захотите припаять соответствующий заголовок на свой Netduino. Тогда тебе будет хорошо идти!

Кстати, NetDuino Plus имеет интегрированную сеть MicroSD и Fast Ethernet ... что также может быть простым решением. http://www.netduino.com/netduinoplus/

Крис (Secret Labs LLC)

Другие советы

Я нашел ссылку на этой странице форума http://forums.netduino.com

«В настоящее время вам нужно будет разместить перемычку между D10 и D4, чтобы заставить SD-карту работать-хотя это не потребуется для производства v4.1.1 Firwmare (который позволит вам указать линию SD Card Select) . "

Что заставляет меня думать, что вам нужно использовать D4 вместо D10 для SD -карты. Я нашел некоторые другие ссылки на той же странице, которая упомянула D10, является PIN -код SS для Ethernet. Прошивка, доступная на их странице загрузки, в настоящее время составляет всего 4,1,0, поэтому вам, вероятно, понадобится перемычка. Я не могу проверить это, но ссылка на форум должна быть хорошей отправной точкой.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top