|
Algorithm Builder + SD card |
|
|
|
May 15 2007, 14:12
|

Частый гость
 
Группа: Участник
Сообщений: 178
Регистрация: 31-10-06
Из: Яблунець
Пользователь №: 21 821

|
Помогите организовать обмен данными ATMega8535 c SD Card. Нужно сначала записать данные в SD с ПК через RS-232, а потом читать в порт с частотой 8000 Гц (на ЦАП) или читать обратно в ПК. Читать и писать 512 байт получается, а больше облом. Исходный код на AB 5.00 прилогаю. (Есть робочий проєкт роботы ATMega8535 c LCD Siemens S65, могу выложить)
|
|
|
|
|
 |
Ответов
|
May 16 2007, 08:39
|

Частый гость
 
Группа: Участник
Сообщений: 178
Регистрация: 31-10-06
Из: Яблунець
Пользователь №: 21 821

|
Цитата(hd44780 @ May 16 2007, 16:24)  за доки спасибо.
Вы наверное работаете с картой по SPI? Если да, то правильно, за раз читает/пишет 1 сектор. Если хотите больше - как-то эмулируйте его родной интерфейс либо ищите контроллеры со свроенной поддежкой карт. SD подключил к SPI. Читать и писать один сектор(512 байт) получается, но мне нужно ~44кБ. Проблема в том что я не могу организовать запись данных в SD. Для моих нужд хватает Меги8535, так что использовать контроллеры со свроенной поддежкой карт не имеет смысла.
|
|
|
|
|
May 16 2007, 20:09
|
Участник

Группа: Свой
Сообщений: 70
Регистрация: 3-03-05
Пользователь №: 3 029

|
Цитата(hd44780 @ May 16 2007, 23:15)  Да, на SPI только по 1 сектору. Ограничение интерфейса. Увы ... Проверял, так и есть. Таки нет. В файле Simplified Physical Layer Specification.PDF на стр.115 команды для чтения блока (файлег берется на сайте ассоциации SD ) CMD17 - READ_SINGLE_BLOCK читает один блок. CMD18 - READ_MULTIPLE_BLOCK читает последовательность блоков пока на карту не будет передана команда STOP_TRANSMISSION Другое дело что в МК памяти очень мало и накладные расходы на организацию передачи двух блоков по 512 байт будут может и больше чем вызов двух команд на чтение одного блока.
|
|
|
|
|
May 17 2007, 02:17
|

Частый гость
 
Группа: Участник
Сообщений: 178
Регистрация: 31-10-06
Из: Яблунець
Пользователь №: 21 821

|
Цитата(pitman @ May 17 2007, 04:09)  Таки нет. В файле Simplified Physical Layer Specification.PDF на стр.115 команды для чтения блока (файлег берется на сайте ассоциации SD )
CMD17 - READ_SINGLE_BLOCK читает один блок. CMD18 - READ_MULTIPLE_BLOCK читает последовательность блоков пока на карту не будет передана команда STOP_TRANSMISSION
Другое дело что в МК памяти очень мало и накладные расходы на организацию передачи двух блоков по 512 байт будут может и больше чем вызов двух команд на чтение одного блока. Мне не нужно хранить в памяти данны, просто нужно каждый байт данных писать сразу в порт (с частотой 8000 Гц)
|
|
|
|
Сообщений в этой теме
Alex_1811 Algorithm Builder + SD card May 15 2007, 14:12 yarunt (Есть робочий проєкт роботы ATMega8535 c LCD Sieme... May 16 2007, 02:11 Alex_1811 Цитата(yarunt @ May 16 2007, 10:11) (Есть... May 16 2007, 02:21  yarunt Молодца! Мне понравилось ,но 16 битные регистр... May 16 2007, 02:53   hd44780 Если не секрет, вы питали схему от 3.3 вольта или ... May 16 2007, 03:19    Alex_1811 Цитата(hd44780 @ May 16 2007, 11:19) Если... May 16 2007, 03:39     hd44780 Цитата(Alex_1811 @ May 16 2007, 09:39) Пи... May 16 2007, 06:06      Alex_1811 Цитата(hd44780 @ May 16 2007, 14:06) Поня... May 16 2007, 08:08     pitman Цитата(Alex_1811 @ May 17 2007, 12:17) Мн... May 17 2007, 18:43  yarunt Цитата(Alex_1811 @ May 16 2007, 15:39) SD... May 16 2007, 09:40   SergeiCh Цитата(yarunt @ May 16 2007, 20:40) Да ..... May 16 2007, 10:00
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|