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

CrazyAlex

Свой
  • Постов

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

  • Посещение

Весь контент CrazyAlex


  1. Господа знающие, вопрос все еще актуален. Помогите, плиз, чем можете...
  2. Не хватает соображалки, чтобы правильно сконфигурировать контроллер dma и периферию, чтобы скопировать 512 байт из SSP0 (spi ) в MCI (sd-card) через DMA. Смысл всего этого такой: На SD карту нужно писать лог. Не быстро и небольшими порциями. Для минимизации операций записи стоит FRAM на SPI, т.е. лог пишется во фрам, накопилось 512 байт - переписываем их на карту. Именно внешняя память, а не буфер в памяти, для того чтобы не потерять данные при потере питания. читать/писать в SSP через DMA умею. читать/писать в MCI через DMA умею. а вот как соеденить вместе, не могу сообразить. работать через две операции не хотелось бы... Покажите, плиз, кусок кода на эту тему или ответьте на вопросы: 1. Кого правильнее назначить FlowControl'ом? 2. Нужно ли выставлять биты Enable в MCI_DATA_CTRL и SSP0DMACR и в каком порядке? 3. Как правильнее отследить завершение транзакции (по чьему прерыванию: dma, mci или ssp)?
  3. Спасибо огромное всем кто откликнулся. Напомнили мне пару вещей, которые надо бы использовать в программах. Я в свою очередь с"катализировал" работу мысли у народа. :) А ларчик открывался просто: глючный (полуубитый) преобразователь 232-485 от ADAM. поставил новый такой же и все стало ОК. Еще раз всем спасибо.
  4. Спасибо всем за участие, попробую ответить, может натолкнет на что-то еще. to Dog Pawlowa Проверял терминалкой, в порт уходит нужное число байт. Смотрел, все остается как было, ничего не портится. to Александр Куличок Передача по TXint (по опустошению ВСЕХ регистров, участвующих в передаче) осуществляется столько раз сколько записано в UDR, т.е. после записи последнего байта, прерывание вызовется последний раз, и поскольку больше обращения к UDR не было, то и прерывание больше не возникнет. В readhr1 и sethr1 осуществляется первая запись в UDR которая и вызывает первое прерывание Uart1TXint(). to Laksus Ноги такой работы с уартом растут из моего опыта работы с 51. Хотя изначально в Меге я использовал прерывание по UDRE, мне не понравилось. что надо разрешать/запрещать прерывания и я "ушел" на TXC. Мне лично оно кажется более логичным. Пробовал, не помогает. Мысль интересная,попробую проверить. В общем то, расчет был на то что кто-нибудь сталкивался с подобным. Дело в том что ImageCraft трудно отнести к нормальным компиляторам :-), но за неимением гербовой... А эту структуру они сами настоятельно рекомендуют использовать. В модбасе сначала идет младший байт срс, а потом старший. Не помню как это правильно называется, навскидку вспоминается "экспоненциальное слаживание" и "скользящее среднее". В данном случае получается усреднение по 256 выборкам (почти среднее, математики оспорят, но меня устраивает). Еще раз хочу обратить внимание, что на все запросы чтения ответ идет правильный, и на отдельные запросы записи тоже. Битые ответы, идут на строго фиксированные запросы, т.е. на 511 - все ок, на 512 - битый. и еще на некоторые другие запросы (78, 1101).
  5. Думаю что ждать его будет мега. Если помотреть исходники, то видно, что все это в прерывании. Но все равно спасибо за участие.
  6. проблема с уарт Mega64

    не могу понять в чем дело: устройство: Мега->485->Adam->PC софт: iccAVR6.31a, AVRstudio, jtag ice mk2 (не совсем софт), на PC самописный модбас-мастер (проверен временем), а также терминалка. протокол модбас RTU, чтение регистров (03) идет на ура, запись (06) в регистр значение 511 - все отвечает правильно. запись значения 512 - вместо ответа какая-то хрень, число байт хрени совпадает с числом байт в ответе. причем эта самая хрень каждый раз разная. хотя запрос один и тот же. смотрю в авр студии. пакет приходит, регистр меняется на нужное значение, формируется в буферном массиве frame1 ответ (правильный ответ). Портится на этапе UDR1=frame1[0], UDR1=frame1[outbytecnt]. т.е. в UDR1 или пишется что-то не то, или в нем самом портится..., т.е. PC принимает совсем не то что я записываю в UDR. Если поставить точку останова на UDR1=frame1[0], и потом по шагам, то все отвечает нормально. Исходники прилагаю. Уже мозг сломал. Подскажите кто-нибудь где копать??? m64uart.ZIP
  7. Спасибо за помощь. Натолкнула на мысль фраза о повторных граблях. Уже было такое очень давно, поэтому забыл. В разделе настроек препроцессора нужно было добавить VECTORED_IRQ_INTERRUPTS. Блин!!!
  8. dac.zipПлата olimex H2138, софт Rowley CrossStudio 1.6 build 3, использую wiggler или mt-link. Проект изначально взят с 2214. на нем работал. Проверил настройки, вроде все соответствует 2138. Пытаюсь запустить на 2138 - вылетаю в dabort_handler или в irq_handler или в reset_wait Выглядит это примерно так. Ставлю точку останова в прервании таймера, тогда при отладке по шагам ходит по кругу: -> прерывание //((CTL_ISR_FN_t)VICVectAddr)(); ldr r4, =0xFFFFF030 ldr r3, [r4] mov lr, pc bx r3 -> прерывание Если точку останова убираю, запускаю, приостанавливаю - стоит на dabort_handler Гляньте, кому не сложно, плиз. Подскажите где я не прав. Или приветствуется работающий пример...
  9. Впервые применили данный девайс. С памятью работаю нормально, а часы упорно не поддаются. На одном устройстве часы шли в 3 раза быстрее и в регистрах часов была чушь (например в регистре 02h были числа типа 0x2f). На втором устройстве часы вообще не тикают. На первом осцилографом не смотрел (не было), на втором с частотой все нормально. Может кто сталкивался помогите, плиз. в архиве мои исходники. проц - cygnal 020 I2C.zip
  10. Особо по надежности ничего сказать не могу-выборка мала, но: Результаты: Партия из 10 устройств (F124) работает 1 год без какого либа участия человека. Никаких нареканий нет. Условия работы не слишком приятные: питание так себе, помехи. Правда из периферии используются только оба уарта и все (работает как конвертер протоколов). Впечатления: Очень приятно работать. Единственно на что стоит обратить внимание, это на переключение страниц. Несколько раз наступал на эти грабли, пока не привык.
  11. Имеет смысл посмотреть на кристаллы серии AT89C51RC2/RD2/ED2. Они несколько подороже, но побогаче начинка и программируются через последовательный порт. Нужно только скачать Flip с сайта Atmel и спаять шнур, 3 провода и две перемычки. Работали с ними - достаточно приятно.
  12. AVR Studio и COM3,4

    Странно. Можно поподробнее? Что говорит студия? Как ведут себя другие программы (любая терминалка)? Драйвера стоят? У меня студия работает с JtagICE через усб<->RS232 на ком5. Не вижу принципиальной разницы с вашей ситуацией.
  13. LCD GSM

    Раз уж возникла такая тема, может кто подскажет... Есть желание поработать с телефоном Sony J-Х. Там на борту кристалл на базе ARM7, народ под него пишет программы, но под родной "осью". Хотелось бы написать с нуля, причем нужны не телефонные функции, а дисплей, клавиатура, ком-порт. Соответственно нужна пр. схема. Может кто подскажет ссылки или любую другую информацию?
  14. Не сталкивался ни разу. на одной машине 2х256, на другой 4х256. На обе 98 встает из под ДОСа без всяких вопросов, ну и работает соответственно тоже без вопросов (задачи: оцифровка и кодирование видео). Только не проверял модули обьемом больше 256, с ними могут быть проблемы, хотя интуиция подсказывает, что не должно быть.
  15. Вышел в свет кейл 2.20 для ARM. >Keil CARM Version 2.20 is now available. This update adds support for function >inlining and cross function inlining. The linker removes unused >functions. Compiler warnings are enhanced and several minor problems are >corrected. Список изменений во вложении. Качать как обычно с http://www.keil.com/demo/eval/arm.htm P.S. Ставится поверх 2.11 без вопросов. P.P.S. Там же: ARTX-ARM Version 1.01 Update Version 1.01 of the ARTX Advanced RTOS for ARM is now available. This update includes TCP/IP support and new configurations for LPC2000, AT91SAM7Sxx, STR71x, and ADuC702x devices. The kernel-aware debugging dialog has been enhanced with accurate Stack Load display. what_new.zip
  16. Не пробовал. Пока временно отошел от АРМ, нет времени убить полностью и начисто поставить.
  17. ARM HERCROM из телефона Sony Jxx

    Есть идея использовать телефоны Sony J-серии в качестве универсального пульта/отладочной платы/всего на что хватит фантазии. Есть память, клава, индикатор, ком порт. Стоит копейки. На борту стоит камень Hercrom100. судя по описаниям это АРМ7+DSP+что то еще. Вот этот самый арм и хотелось бы использовать. Но не нашел на него документацию. Поделитесь кто-нибудь файлами, ссылками, опытом, чем угодно и по камню и по телефону в этом контексте. Как "шить", куда цеплять отладчик, в общем любая информация приветствуется
  18. Насколько я знаю, на pcmcia-ком порт драйвера не нужны. бук его видит как нормальный аппаратный, причем полный-все 9 ног. Хотя, могу и ошибаться, подтвердите или опровергните, буду благодарен.
  19. Вышел в свет кейл 2.11 для ARM. Список изменений во вложении. Качать как обычно с http://www.keil.com/demo/eval/arm.htm P.S. Ставится поверх 2.00 без вопросов. what_new.zip
  20. Конечно интересно. А только под Linux, под Win нельзя?
  21. Как результат? Нашли что нибудь? Тоже интересует этот вопрос.
  22. Почта действиельно снова ходит. :a14: :bb-offtopic: другая проблема появилась. Не могу прикрепить файл: размер 12 Мб, расширение zip, rar. Человек просит помочь, а не получается. При нажатии "прикрепить" выкидывает в "не могу найти страницу" и путь http://forum.electronix.ru/index.php?. Подскажите в чем дело, плиз. Очень нужна, моя сломалась. :) Буду знать. Спасибо.
  23. Здесь все вроде нормально у lpc2214 идут вектора а затем флеш, т.е. без ремапа все ОК. Такое ощущение, что кроссворкс совсем не стирает флеш. По крайней мере если через утилиту от филипса все стереть, то кросворк зашивает нормально. Что подразумевается под задержками шины? В кроссворк нашел только одну настройку: JTAG clock divider. Влияет на скорость, но не влияет на прошиваемость.
  24. Олимекс+Кроссворкс

    В теме "uCOS-II LPC 2124 port, Порт для 2124 (из 2129)" писали: Вот и возник вопрос: Плата Olimex LPC-H2214. Не получается залить код во внутреннюю flash. Кросворк пишет: Executing reset script FLASHReset() Loading target script file C:\Program Files\CrossWorks for ARM 1.3\targets\Philips_LPC210X\Philips_LPC210X_Target.js Downloading Loader.exe to Macraigor Wiggler (20 Pin) Programming completed in 282 ms — 13,163 bytes/sec Programming 3.6 KB of at 0x40000000 Download complete Downloading test2.elf to Macraigor Wiggler (20 Pin) Erasing entire FLASH memory completed in 2.6 s Programming completed in 484 ms — 10,818 bytes/sec Programming 4.6 KB of at 0x0 Programming 512 bytes of at 0x1274 Download complete Verifying test2.elf on Macraigor Wiggler (20 Pin) Verifying completed in 78 ms — 67,128 bytes/sec verifying section : size 0x1274, addr 0x0 Verify failed Executing reset script FLASHReset() Loading target script file C:\Program Files\CrossWorks for ARM 1.3\targets\Philips_LPC210X\Philips_LPC210X_Target.js Может кто подскажет...
  25. Прошивание LPC2124

    Господа, помогите плиз. Иар 4.20а full, взятый с местного фтп. Плата Olimex с 2214. пример с их сайта. Пытаюсь зашить во флеш. Выдает ошибку: "Data outside flash". Интуитивно решил что дело в проблеме "144". Пробую подсунуть вышеозначенный файл от lamerok, пишет: "Failed to setup programm arguments for "c:\...\FlashPhilipsLPC2124.d79" Symbols __argc, __argv and __argvbuf uncorrectly defined." Что делать?
×
×
  • Создать...