Перейти к содержанию
    

brunql

Участник
  • Постов

    14
  • Зарегистрирован

  • Посещение

Репутация

0 Обычный

Информация о brunql

  • День рождения 21.11.1991

Информация

  • Город
    Array

Посетители профиля

790 просмотров профиля
  1. Mega16U2, DFU bootloader...

    По аналогии с AT90USB162: 1) Ставим кнопки на HWBE и RST, нажимаем обе отпускаем сначала RST потом HWBE. Устройство должно определиться примерно как ATMEL AT90USB162 DFU. 2) Конденсатор на UCAP и UGND должен быть не меньше указанных в даташите 1мкф 3) Кварц либо 16 Мгц, либо 8 Мгц Хм, как ни странно, но на сайте у них для ATmega16U2 прошивки не выложено. Хотя для предыдущей версии камня - AT90USB162, есть http://www.atmel.com/dyn/resources/prod_do...usb_162v105.zip
  2. Согласно даташиту на ваш контроллер: P2[10]/EINT0 76[6] Note: LOW on this pin while RESET is LOW forces on-chip boot-loader to take over control of the part after a reset. Если в LPC2388 нет USB bootloader-a как в LPC1343, то просто замыкаете на землю P2[10] (76pin) и также RESET, после чего отпускаете RESET через подтяжку. Если есть, то по аналогии с LPC1343 могу предположить, вывод USBVBUS нужно посадить на землю, иначе bootloader будет работать с USB. Не знаю насколько это вам поможет, но в схеме LPC1343 Code Base слева вверху есть простой способ подключения кнопки для старта bootloader-a, и чуть ниже с делителя подается напряжение на USBVBUS, который уже сигнализирует о необходимости запуска USB-bootloader-a при подключении к USB. Bootloader вероятнее всего висит на UART0.
  3. Организация древовидного меню
  4. [сарказм_моде_он] Супер =) Спасибо автору огромное. [сарказм_моде_офф] Только вот пароль ставить на pdf-ку, которую собираетесь свободно распространять... идиотизмом попахивает. Updated: added [сарказм_моде] tags
  5. Flash magic? Makefile для прошивки из консоли: http://electronix.ru/forum/index.php?showt...st&p=832230 Только вот, как его научить кнопки нажимать (RESET, ISP+RESET)? и возможно ли я не знаю.
  6. Хотел предложить RESET подтянуть, но из UG на AVRISP mkII: Reset Line As a part of checking if the ISP target cable is correctly mounted it will, after Vtarget is applied, check if the reset line has the correct voltage and check if it is possible to force this line low. If there is no pull-up resistor on the line, i.e. if the AVRISP mkII detects 0V on reset, then the status LED will blink orange. Насколько мне известно по дефолту тиньки работают на 8Mhz RC c установленным фьюзом CLKDIV8 итого 1Mhz. В usbasp например можно менять частоту SPI банальной перемычкой, как в AVRISP mkII определяется частота работы SPI я не в курсе, вероятно там тоже можно ее уменьшить, после чего убрать CLKDIV8 и радоваться быстрой прошивке. А вообще "Но тут как не пробовал ничего не помогло, отказывается читать и все", может распишете, что конкретно пробовали?
  7. [43227.929744] usb-storage: waiting for device to settle before scanning [43232.921489] usb-storage: device scan complete 5 сек уже неплохо (= Makefile для прошивки LPC с помощью Flash Magic console, in linux (wine) поправить пути и будет для windows. Вообщем мне бы пригодилось пару месяцев назад (= # # Makefile # # brunql: # Flash Magic using in linux (wine) # # using: # make fm # HEX = Memory.hex FM_DEVICE = LPC1343 FM_FREQ_Mhz = 12.000 FM_COM_PORT_NUM = 2 FM_COM_BAUD_RATE = 115200 FM_CONSOLE = wine "/home/brunql/.wine/drive_c/Program Files/Flash Magic/FM.exe" fm: $(FM_CONSOLE) "COM($(FM_COM_PORT_NUM), $(FM_COM_BAUD_RATE)) DEVICE($(FM_DEVICE), $(FM_FREQ_Mhz)) ERASE(DEVICE, PROTECTISP) HEXFILE($(HEX), CHECKSUMS, NOFILL, PROTECTISP)" И сразу вопрос какие есть нативные linux альтернативы Flash Magic-у?
  8. Подключение LPC1343 (USB ISP) в linux: [41504.770178] usb 3-3: new full speed USB device using ohci_hcd and address 65 [41504.969642] usb 3-3: configuration #1 chosen from 1 choice [41504.974135] scsi53 : SCSI emulation for USB Mass Storage devices [41504.974929] usb-storage: device found at 65 [41504.974937] usb-storage: waiting for device to settle before scanning [41509.971342] usb-storage: device scan complete ...22 секунды... [41531.212675] usb 3-3: reset full speed USB device using ohci_hcd and address 65 [41531.415831] scsi 53:0:0:0: Direct-Access NXP LPC134X IFLASH 1.0 PQ: 0 ANSI: 0 CCS [41531.416543] sd 53:0:0:0: Attached scsi generic sg3 type 0 [41531.436826] sd 53:0:0:0: [sdc] 68 512-byte logical blocks: (34.8 kB/34.0 KiB) [41531.442881] sd 53:0:0:0: [sdc] Write Protect is off [41531.442887] sd 53:0:0:0: [sdc] Mode Sense: 03 00 00 00 [41531.442890] sd 53:0:0:0: [sdc] Assuming drive cache: write through [41531.483827] sd 53:0:0:0: [sdc] Assuming drive cache: write through [41531.483835] sdc: [41531.523884] sd 53:0:0:0: [sdc] Assuming drive cache: write through [41531.523907] sd 53:0:0:0: [sdc] Attached SCSI removable disk Что делает linux в эти 22 секунды? или как сделать, чтобы usb device подключался максимально быстро? (причем иногда он подключается сразу, с чем это связано?) Хочется прошивать за пару секунд (время между нажатием заветного сочетания клавиш "прошить контроллер" и запуском прошивки), это реально сделать? если нет то какое минимальное время можно достичь? сколько времени вы тратите на прошивку с помощью JTAG или SWD дебагеров? Сейчас прошиваю по UART: 11kb LPC1343 FM.exe (из под wine) ~20-30сек включая нажатия кнопок (запуск загрузчика и сброс), + 5-10сек на отключение подключение джампера (если с USB device играюсь) итого, если еще зевнуть, около минуты, чтобы просто прошить контроллер в процессе программирования. Thank you for your time.
  9. LPC1343 usb memory

    Как проверял CDC? По идее CDC реализует интерфейс UART между приложением PC <-> USB <-> UART (в прошивке) Какие тут пины можно было соединить? или у тебя трансляция того что приходит c USB в железный UART и обратно? Насчет USBMem возможно Windows7 работатет с FAT немного не так как XP?
  10. Суть проблемы: не работает прошивка LPC1343 по USB в Linux Есть плата LPCXpresso, допаяны miniUSB, LM1117(3.3V), кнопки сброса контоллера, сброса в загрузчик, схема софтового подключения к USB шине (USB_CONNECT) и светодиод сигнализирующий о подключении к USB шине (сброс и USB как здесь: http://www.microbuilder.eu/projects/LPC134...nceDesign.aspx). Через UART прошивается без проблем. Попробую прошить через встроенный USB загрузчик: Скомпилил пример из поставки Keil (C:\Keil\ARM\Boards\Keil\MCB1000\USBMem). Получил .\Obj\Memory.axf. Бинарник делаю так: fromelf --bin ".\Obj\Memory.axf" --output ".\Obj\Memory.bin" Обновление CRC (нужно ли?): lpcrc.exe Memory.bin Подключаю девайс к USB. Пин USB-VBUS подтянут к VCC(4,5V). Сбрасываю девайс в бутлоадер (сажаю кнопкой одновременно через диоды пины RESET и ISP на GND). Определяется 'CRP DISABLD'; dmesg: [29815.920197] usb 3-3: new full speed USB device using ohci_hcd and address 17 [29816.168944] usb 3-3: configuration #1 chosen from 1 choice [29816.174430] scsi19 : SCSI emulation for USB Mass Storage devices [29816.175288] usb-storage: device found at 17 [29816.175297] usb-storage: waiting for device to settle before scanning [29821.170615] usb-storage: device scan complete [29821.176520] scsi 19:0:0:0: Direct-Access NXP LPC134X IFLASH 1.0 PQ: 0 ANSI: 0 CCS [29821.178515] sd 19:0:0:0: Attached scsi generic sg3 type 0 [29821.193999] sd 19:0:0:0: [sdc] 68 512-byte logical blocks: (34.8 kB/34.0 KiB) [29821.198436] sd 19:0:0:0: [sdc] Write Protect is off [29821.198443] sd 19:0:0:0: [sdc] Mode Sense: 03 00 00 00 [29821.198446] sd 19:0:0:0: [sdc] Assuming drive cache: write through [29821.228466] sd 19:0:0:0: [sdc] Assuming drive cache: write through [29821.228485] sdc: [29821.269754] sd 19:0:0:0: [sdc] Assuming drive cache: write through [29821.269762] sd 19:0:0:0: [sdc] Attached SCSI removable disk Удаляю прошивку, которая была, копирую новую и отключаю девайс: rm "/media/CRP DISABLD/firmware.bin" cp Memory.bin "/media/CRP DISABLD/" umount "/media/CRP DISABLD/" Сбрасываю контоллер (RESET на GND кнопкой). Контроллер молчит, хотя должен подключиться к USB. Из чего делаю вывод что прошивка либо криво прошилась, либо совсем не прошилась. Сбрасываю девайс в бутлоадер (RESET и ISP на GND). Копирую то, что записалось: cp "/media/CRP DISABLD/firmware.bin" firmware_device.bin Смотрю в hexedit на firmware.bin и на firmware_device.bin, начала совпадают (чисто визуально), в тексте firmware_device.bin виднеется кусок файла README.TXT, который должен лежать на девайсе (mass storage class): .........................This is a USB Memory Device demonstratio n for..the Keil MCB1000 Board wi th a NXP LPC1343................ Остатки файла firmware_device.bin забиты 0xFF. По мне так все вроде логично, но почемуто не работает. Ну да ладно, прошиваю девайс через UART, чтобы сравнить рабочую версию прошивки с не рабочей, ребутю девайс в USB загрузчик, копирую прошивку: cp "/media/CRP DISABLD/firmware.bin firmware_device_work.bin" Сравниваю MD5 суммы, не совпадают, открываю файлы firmware_device.bin и firmware_device_work.bin в hexedit, сравниваю визуально: первые 1024 байта совпадают (до адреса 0x400), далее некий сдвиг, то что должно быть лежать по адресу 0x0C00 лежит 0x1000, т.е. после 0x400 идут 2kB рабочей прошивки, а у нерабочей 3kB непонятно чего, далее все одинаково. 0x2BF4 - адрес последнего байта рабочей прошивки (залитой по UART), далее все 0xFF 0x3000 - адрес последнего байта НЕ рабочей прошивки (залитой по USB), далее все 0xFF Как правильно заливать прошивку в LPC1343 с помощью встроенного USB загрузчика в linux? В XP прошивается без проблем. Thank you for your time. UPDATE: Гугл помассировал... Такая же проблема: http://www.spinics.net/lists/linux-usb/msg34004.html Решение проблемы: http://www.spinics.net/lists/linux-usb/msg34107.html sudo mdel -i /dev/sdc ::/firmware.bin sudo mcopy -i /dev/sdc firmware.bin ::/ sudo umount /dev/sdc
  11. LPC1343 usb memory

    наверно уже сгенерил по 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.
  12. LPC1343 usb memory

    >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
  13. LPC1343 usb memory

    > Есть возможность проверить на 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
  14. LPC1343 usb memory

    топику явно не хватает ссылок на эти самые примеры и кстати я тоже с lpc1343 балуюсь, пример из поставки Keil (C:\Keil\ARM\Boards\Keil\MCB1000\USBMem) проверял в XP работает
×
×
  • Создать...