реклама на сайте
подробности

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> LPC1343 usb memory, Не работают примеры
segment
сообщение Oct 29 2010, 18:58
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 352
Регистрация: 10-08-06
Из: Санкт-Петербург
Пользователь №: 19 471



Балуюсь с LPC1343. Пофиг что не работает симуляция в Keil, зато хотябы прошивать легко через встроенный USB загрузчик. Нашел в интернете несколько примеров реализации USB MSC, простой disk image на 5-6кб в оперативке, вообщем обычный пример. Загружаю, запускаю, обнаруживается новое устройство, все нормально - это носитель. Но винда предлагает перед использованием форматировать его, чего ей не удается и она отключает диск. Стоит Windows 7, на XP не пробовал. Честно говоря примеры простейшие - не ясно что работает не так, примеры не трогал, компилятся без ошибок.
Go to the top of the page
 
+Quote Post
brunql
сообщение Oct 29 2010, 19:23
Сообщение #2





Группа: Участник
Сообщений: 14
Регистрация: 12-09-10
Из: Krasnodar
Пользователь №: 59 434



Цитата(Сега @ Oct 29 2010, 22:58) *
Нашел в интернете несколько примеров реализации USB MSC

топику явно не хватает ссылок на эти самые примеры
и кстати я тоже с lpc1343 балуюсь, пример из поставки Keil (C:\Keil\ARM\Boards\Keil\MCB1000\USBMem) проверял в XP работает
Go to the top of the page
 
+Quote Post
segment
сообщение Oct 29 2010, 19:30
Сообщение #3


Местный
***

Группа: Участник
Сообщений: 352
Регистрация: 10-08-06
Из: Санкт-Петербург
Пользователь №: 19 471



Проверял из LPC13xx_SampleSoftware, C:\Keil\ARM\Boards\Keil\MCB1000\USBMem. Вот сейчас еще раз открыл проект из поставки Keil MCB1000, еще раз перекомпилил - тоже самое. Предлагает отформатировать, но если попытаться сделать это выдается сообщение "Windows не удалось отформатировать диск", если закрыть окно форматирования, то диск пропадает и все. Я не понимаю почему он не хочет его форматировать, память это RAM, запись и чтение свободные..

2brungl:
Есть возможность проверить на Windows 7? Может это у меня что-то не так...
Go to the top of the page
 
+Quote Post
rezident
сообщение Oct 29 2010, 19:42
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



А вы уверены, что в примерах полная поддержка FAT реализована?
Go to the top of the page
 
+Quote Post
segment
сообщение Oct 29 2010, 19:44
Сообщение #5


Местный
***

Группа: Участник
Сообщений: 352
Регистрация: 10-08-06
Из: Санкт-Петербург
Пользователь №: 19 471



я НЕ уверен в этом. По логике это просто буффер в RAM на 6Кб. Если там кривое изображение, то почему винда просто не переформатирует его в нормальный вид? Ведь это простое чтение/запись в буффер..
Go to the top of the page
 
+Quote Post
rezident
сообщение Oct 29 2010, 20:07
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Я конечно мог заблуждаться, но до сих пор я был уверен, что форматирование "заключается в создании (формировании) структур доступа к данным, например структур файловой системы." Цитата из википедии smile.gif Только лишь одна работа USB и поддержка некоторых команд SCSI не позволяют устройству функционировать как логический диск с файловой системой. А процесс форматирования как раз пытается создать файловую систему.
Go to the top of the page
 
+Quote Post
brunql
сообщение Oct 29 2010, 20:38
Сообщение #7





Группа: Участник
Сообщений: 14
Регистрация: 12-09-10
Из: Krasnodar
Пользователь №: 59 434



> Есть возможность проверить на Windows 7?
забыл уточнить XP в виртулаке запущена была. основная ось ubuntu.
вот мой Memory.hex http://exfile.ru/134462
MD5 ee9630ff725205bf8f09e05174933204 Memory.hex

не уверен, что поможет, но может наведет на какие нить мысли (=
dmesg:
[20868.290143] usb 3-3: new full speed USB device using ohci_hcd and address 4
[20868.482022] usb 3-3: configuration #1 chosen from 1 choice
[20868.500258] scsi20 : SCSI emulation for USB Mass Storage devices
[20868.504719] usb-storage: device found at 4
[20868.504723] usb-storage: waiting for device to settle before scanning
[20873.503634] usb-storage: device scan complete
[20873.510162] scsi 20:0:0:0: Direct-Access Keil LPC13xx Disk 1.0 PQ: 0 ANSI: 0 CCS
[20873.513681] sd 20:0:0:0: Attached scsi generic sg3 type 0
[20873.524627] sd 20:0:0:0: [sdc] 12 512-byte logical blocks: (6.14 kB/6.00 KiB)
[20873.530624] sd 20:0:0:0: [sdc] Write Protect is off
[20873.530631] sd 20:0:0:0: [sdc] Mode Sense: 03 00 00 00
[20873.530636] sd 20:0:0:0: [sdc] Assuming drive cache: write through
[20873.566648] sd 20:0:0:0: [sdc] Assuming drive cache: write through
[20873.566666] sdc:
[20873.624699] sd 20:0:0:0: [sdc] Assuming drive cache: write through
[20873.624720] sd 20:0:0:0: [sdc] Attached SCSI removable disk

можно попробовать драйвер удалить и девайс переподключить, и да в XP не форматируется (не удалось завершить форматирование)

Из www.nxp.com/documents/application_note/AN10904.pdf (AN10904 USB HID with the LPC1300 on-chip driver):
Note: This simple connection does not implement NXP Soft-Connect to allow soft
disconnection and connection to the USB bus nor does it implement USB power.
Because of this, the USB connection must be plugged into the PC after the USB
peripheral is initialized. If the USB port is connected before the LPC USB peripheral is
initialized, the pullup resistor will notify the PC that a USB device is present, yet the
microcontroller’s USB peripheral will not respond because it has not been initialized. This
will trigger Windows to generate an error mentioning a malfunctioning USB device.
Unplug and re-plug the device to dismiss the error.

Схема подключения к USB какая?

у меня подключено как здесь: http://www.microbuilder.eu/projects/LPC134...enceDesign.aspx

Сообщение отредактировал brunql - Oct 29 2010, 20:23
Go to the top of the page
 
+Quote Post
klen
сообщение Oct 30 2010, 08:56
Сообщение #8


бессмертным стать можно тремя способами
*****

Группа: Свой
Сообщений: 1 405
Регистрация: 9-05-06
Из: Москва
Пользователь №: 16 912



насколько я понимаю - флешка - тоесть в нашем случае девайс с рамом - ничего про fat и знат ьне должен - его собачче дело - писать и чиать сектор, это с помощью юсб, а вот фат или еще что там - это драйвер фата самой винды поверх нижнего транспортного протокола(у нас это usb) делает. в флеш должна уметь как я сказал пиать и читать сектор и говорить винде какой у не размер сектора. фсе. у меня ткак пример для lpc2148 работает. ну там несколько команд SCSI это понятно - интерфейс.
Go to the top of the page
 
+Quote Post
segment
сообщение Oct 30 2010, 09:43
Сообщение #9


Местный
***

Группа: Участник
Сообщений: 352
Регистрация: 10-08-06
Из: Санкт-Петербург
Пользователь №: 19 471



2brungle:
Выложи пжл в bin формате



Go to the top of the page
 
+Quote Post
brunql
сообщение Oct 30 2010, 11:20
Сообщение #10





Группа: Участник
Сообщений: 14
Регистрация: 12-09-10
Из: Krasnodar
Пользователь №: 59 434



>2brungle:
i am brunql

>Выложи пжл в bin формате
Что-то я в кейле сходу не нашел, как сгенерить бинарник...
Все, что нашел это HEX2BIN http://www.keil.com/download/docs/7.asp, но с ней проблемы:
ERROR: Invalid record type in HEX record 706.
Status: HEX to BIN conversion was not successful.
Вообщем вот, что мне Keil накомпилил: http://exfile.ru/134535
Go to the top of the page
 
+Quote Post
segment
сообщение Oct 30 2010, 11:27
Сообщение #11


Местный
***

Группа: Участник
Сообщений: 352
Регистрация: 10-08-06
Из: Санкт-Петербург
Пользователь №: 19 471



В инете увидел такую же проблему (но с LPC2148) Вот здесь. Внизу страницы.
Цитата
Now, when i connect my LPC2148 board to PC, i get 'Disk in drive is not formatted. Do you want to format it now?'. And if i say, yes. Then it says, 'Disk in drive can't be formatted'. What is its meaning?

Но ответа так и нет, кроме
Цитата
It means no partition structure (Master Boot Record, boot sector etc.) is assigned on your "disk"

И ссылки на примеры.

Project options -> User
Run 1: fromelf --bin ".\Obj\USBMem.axf" --output ".\Obj\USBMem.bin" <<< Здесь свои названия подставляешь


Да, сейчас форматнул твои объектники в bin, залил - та же самая ошибка. Форматировать типа надо. Каким то боком связано с Windows 7... Только вот встроенный USB Bootloader то работает нормально!
Go to the top of the page
 
+Quote Post
brunql
сообщение Oct 30 2010, 11:37
Сообщение #12





Группа: Участник
Сообщений: 14
Регистрация: 12-09-10
Из: Krasnodar
Пользователь №: 59 434



наверно уже сгенерил по Memory.axf, что я скинул, но если нет, то вот Memory.bin http://exfile.ru/134537

а через UART прошивку заливать пробовал? (я через UART прошиваю)

а всякие таймеры, кнопочки, светодиоды работают?

еще у gcc (в кейле вроде не gcc) есть проблемка с бинарниками, может здесь чтото подобное
http://www.microbuilder.eu/projects/LPC134...43CodeBase.aspx
LPCRC - A command-line utility to correct the checksum value of compiled .bin files. This ensures that the files will not be rejected by the USB bootloader. Windows binary and GNU GCC source included.

Сообщение отредактировал brunql - Oct 30 2010, 11:38
Go to the top of the page
 
+Quote Post
segment
сообщение Oct 30 2010, 11:40
Сообщение #13


Местный
***

Группа: Участник
Сообщений: 352
Регистрация: 10-08-06
Из: Санкт-Петербург
Пользователь №: 19 471



Да, я уже по твоей прошивке сгенерил (см обновленный пост выше) -> ошибка осталась.

Через UART нет возможности запустить, плата готовая, без uart.

Цитата(brunql @ Oct 30 2010, 15:37) *
еще у gcc (в кейле вроде не gcc) есть проблемка с бинарниками, может здесь чтото подобное
http://www.microbuilder.eu/projects/LPC134...43CodeBase.aspx
LPCRC - A command-line utility to correct the checksum value of compiled .bin files. This ensures that the files will not be rejected by the USB bootloader. Windows binary and GNU GCC source included.


Да, я в курсе. Это делается второй командой
Run 2: AutoVerifyCode.exe .\Obj\USBMem.bin

Цитата(brunql @ Oct 30 2010, 15:37) *
а всякие таймеры, кнопочки, светодиоды работают?


HID работает, и CDC (соединил пины у микрухи для эхо).
Go to the top of the page
 
+Quote Post
brunql
сообщение Oct 30 2010, 18:35
Сообщение #14





Группа: Участник
Сообщений: 14
Регистрация: 12-09-10
Из: Krasnodar
Пользователь №: 59 434



Цитата
HID работает, и CDC (соединил пины у микрухи для эхо)

Как проверял CDC?
По идее CDC реализует интерфейс UART между приложением PC <-> USB <-> UART (в прошивке)
Какие тут пины можно было соединить? или у тебя трансляция того что приходит c USB в железный UART и обратно?

Насчет USBMem возможно Windows7 работатет с FAT немного не так как XP?
Go to the top of the page
 
+Quote Post
segment
сообщение Oct 30 2010, 18:50
Сообщение #15


Местный
***

Группа: Участник
Сообщений: 352
Регистрация: 10-08-06
Из: Санкт-Петербург
Пользователь №: 19 471



Загрузил прошивку CDC в камень через USB Bootloader, запустил, установил дрова из директории проекта, открыл терминал, посылал символы и получал эхо. Ножки TXD и RXD на микроконтроллере замкнул.
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th July 2025 - 09:57
Рейтинг@Mail.ru


Страница сгенерированна за 0.01515 секунд с 7
ELECTRONIX ©2004-2016