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

Troll

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

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

  • Посещение

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


  1. У FreeScale Линейка S08QE Линейка S08D (есть DZ, DV, DN) - эти подороже, в них CAN/LIN.
  2. Здесь страница со списком документации на данный девайс (DataSheet, Reference Manual, Application Note и т. д.)
  3. 128 KB serial FLASH memory - FLASH mirrored into 96 KB RAM - Bootloader loads/initializes RAM at reset. - Accessed via a dedicated SPI 96 KB RAM (device operates from RAM) 80 KB ROM - Bootloader - Device drivers - Fully compliant 802.15.4 MAC All CPU program and data accessed from RAM or ROM Чуть более подробно во вложении, глава 3. второй файл по отладочным комплектам с данным девайсом. MC1322x.pdf BRIEEE802154DKIT.pdf
  4. Serial F-RAM Memory I2C Interface FM24V10 1Mb 1.0mA 3.4MHz 8-Pin SOIC 2.0 - 3.6V FM24V05 512Kb 1.0mA 3.4MHz 8-Pin SOIC 2.0 - 3.6V FM24C512 512Kb 1.5mA 1MHz EIAJ SOIC8 5V SPI Interface FM25H20 2Mb 10mA 40MHz TDFN8 2.7-3.6V FM25V10 1Mb 3.0mA 40MHz 8-Pin SOIC 2.0-3.6V Upon Req. Upon Req. Еще есть флешки AT45xxx AT45xxx Series Devices Description AT45DB011D 1M bit, 2.7-Volt Minimum Serial-Interface Flash with One 264-Byte SRAM Buffer AT45DB021D 2M bit, 2.7-Volt Minimum Serial-Interface Flash with One 264-Byte SRAM Buffer AT45DB041D 4M bit 2.5-Volt or 2.7-Volt DataFlash® AT45DB081D 8M bit, 2.5 or 2.7-Volt Only Serial-Interface Flash AT45DB161D 16M bit, 2.7-Volt Only Serial-Interface Flash with two SRAM Data Buffers AT45DB321D 32M bit, 2.7-Volt Only Serial Interface Flash AT45DB642D 64M bit, 2.7-Volt Dual-Interface Flash with two 1056-Byte SRAM
  5. LPC2131 and TIMER

    А вставить программный фильтр, соответствующий минимальному времени прихода импульсов? Не только наносекундные, а даже микросекундные помехи уберете.
  6. Linux for cortex

    Вы говорите о том, что для M3 подойдет любой пакет исходников, который используется на x86 процессорах?
  7. Linux for cortex

    В каком слысле?
  8. А я решил, что PIO_ISR читается здесь i_status = AT91F_PIO_GetInterruptStatus(AT91C_BASE_PIOA);
  9. Отключать прерывания не нужно. AT91F_AIC_DisableIt_MY(AT91C_BASE_AIC, AT91C_ID_PIOA); После того как вновь включаете, должна быть команда очистки прерываний (не помню точно как регистр называется). вот так, помоему даже красивше: if((200000<=i) && (i<=300000)) regs->PIOA_ODSR = 0x0080001; //Лампочка горит AT91C_BASE_AIC->AIC_EOICR = status; А вот этого уже не нужно. В стартапе уже есть ;- Mark the End of Interrupt on the AIC ldr r14, =AT91C_BASE_AIC str r14, [r14, #AIC_EOICR] if(i_status&[b]0x800000[/b]) AT91F_PIO_InterruptDisable(AT91C_BASE_PIOA,[b]SW3_MASK[/b]); //Прерывание пришло от PA23 Почему бы просто не написать i_status&SW3_MASK И код PIO_copy = regs->PIOA_PDSR; //считываем данные с порта контроллера if(PIO_copy != 0x0) i_PIO=1; if(i_PIO == 1) Можно заменить просто одним условным оператором.
  10. Хрень какая-то... Может объясните, что Вы хотели сказать этой фразой.
  11. Ну да, симметрон возит Болиминовские индикаторы. Если нужна партия (конкретные условия не знаю), то можете сделать заказ на заводе. На выбор разрешение, цвет, подстветка (тип и цвет), интерфейс (есть параллельные, последовательные - i2c, spi, usb), температурный диапазон, напряжение питания и т. п. Опции заказа можете посмотреть по ссылке: http://www.bolymin.com.tw/inquireModify.as...Electronics.asp
  12. У Bolymin целые линейки индикаторов с разными напряжениями и типами подсветок. Графические линейки: BLxxx, BGxxx, BOxxx. Где ххх - нужное Вам разрешение. BL - практически все от 3.3В BG - 3 или 5 В BO - встречаются с рабочим диапазоном 3-5В, просто от 3.3В. Например BO12864E1, BO12864E2, BO12864G. Gizma а Вы в каком городе обитаете? Везде свои магазины.
  13. http://www.phytec.com/products/sbc/ARM-XSc...M11-i.MX35.html - на эту плату есть готовый Линукс. В исходниках и найдете заголовочные файлы.
  14. Обычно это называется цена/значение единицы младшего разряда. В обоих случаях разница dC = 5. И разница в Омах, тоже должна быть одинаковой. У Вас значения температуры это числа со знаком.
  15. ARMов тоже много разных: ARM7, ARM9, ARM9E, Cortex-A8, Cortex-A9, Cortex-M3, ARM11... Посмотрите http://www.phytec.com/products/rdk/index.html. Выпускают большое кол-во отладочных плат для разных платформ (не только АРМ). Ценовые границы тоже разные.
  16. Ну чуть, что так сразу: "Flash, Flash". У ARM линейное адресное пространство. Расположите секцию с Вашей функцией в ОЗУ, копируйте тело функции в ОЗУ и оттуда же выполняйте. Ничем не будет отличаться от функции расположенной во Flash. И не придется переживать за ресурс по количеству циклов записи. Где расположите, там и будут. Можете выделить под необходимые Вам переменные отдельную секцию с определенным адресом и расположить их там. Ключевое слово "__attribute__ ((section("section_name_for_my_variables")))".
  17. Можно, конечно, построить дерево вызова процедур. Но возникают вопросы: - как будете учитывать рекурсивные вызовы? - вызовы прерываний, особенно если у них разные приоритеты?
  18. Можно в процессор один раз записать загрузчик, который будет считывать программу (бинарник) из внешней флеш и выполнять ее. Смотря, что будет делать этот скрипт, если "прочитал-проверил-записал", вполне хватит.
  19. Так для этого надо считать не указатели, а операции со стеком. постом выше, рассказали как определить размер стека и почему этого не надо делать при каждой компиляции. А на этапе отладки всегда можно посмотреть вершину стека и определить похерил ее кто-нибудь или нет.
  20. От какого счастья Вы собрались освободить программиста таким способом?
  21. НЕТ. :maniac: Для хранения всех локальных переменных (переменных объявленных внутри функций) используется стек. Для дефрагментации занятых блоков все указатели (абсолютно все) должны быть видны вашему менеджеру памяти. См. пост №20. Дефрагментация свободных блоков - это уже другая задача. На свободные участки указатели уже не хранят значения, а если такое и случается это уже ошибка программиста. Менеджер памяти хранит списки свободных и занятых блоков и после некоторого количества операций по выделению/освобождению памяти получается, что два и более последовательных блока свободны и их можно объединить в один большой свободный блок. Это и есть дефрагментация свободной памяти. Размер стека определяется программистом и известен на этапе компиляции программы. Почему бы не написать функцию для проверки свободного места, которая будет знать размер стека? и выполняйте ее перед каждым вызовом malloc.
  22. ДА ДА ДА. Краткий и абсолютно точно сформулированный вопрос.
  23. Ничего странного. Просто захотелось узнать по каким параметрам производители заявляют свой проц как цифровой. Почему то считал (наверное еще со студенческой поры), что цифровой это проц с гарвардской архитектурой ядра. Если фоннеймановская архитектура, то это не цифровой. Тот же ARM9 и последующие построены уже по гарвардской архитектуре, но к DSP их как-то не причисляют. Вот и возник вопрос каким же образом отделить одни от других.
  24. Доброго дня. Собственно сам вопрос: "Какой процессор считается цифровым?". Цифровой сигнальный процессор (англ. Digital signal processor, DSP) — специализированный микропроцессор, предназначенный для цифровой обработки сигналов (обычно в реальном масштабе времени). Википедия. По каким параметрам, микропроцессор(-контроллер) относят к цифровым. Быстродействие, архитектура (фоннеймановская/гарвардская), наличие аппаратного умножения/деления, модуля работы с числами с плавающей или фиксированной точкой и т. п.? Ведь никто не будут считать х51(12МГц) DSP процессором, если на нем реализовать функции для обработки сигналов, хотя под указанное выше определение в данном случае он попадает. Итак жду Вашим мнений и комментариев. С уважением.
  25. Совет номер один - поиск по сайту. Эту тему уже исходили вдоль и поперек. Посмотрите тему: "прыгнуть на другой адрес в ROM". Очень подробно разобрали загрузчик. -1. может. Есть регистр сброса. Не знаю как он называется у конкретно Вашего проца (регистры относящиеся к контроллеру сброса). В него пишется нужное значение и все довольны. -2. Память программ, она же flash у АРМов начинается с адреса 0х100000. Туда и надо зашить загрузчик. Исполняемую программу можно записывать на флэш или постоянно подгружать в ОЗУ это уже зависит от Вашей задачи и конкретной реализации.
×
×
  • Создать...