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

BlackOps

Свой
  • Постов

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

  • Посещение

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


  1. спасибо. проблемы были не с с-параметрами а со спектральным анализом полной системы. и выходит так что когда источник имеет широкую частоту то этот фильтр с импортированными параметрами работает правильно в симуляции
  2. Ну да так и есть. Поэтому когда говорится что Analog input bandwidth = 1ГГц, то пытатся оцифровать какой нибудь сигнал превышающий 1ГГц по частоте вообще смысла нет. А насчет SFDR, просто странно что не показывается почти во всех даташитах какое он значение имеет на частотах приближающихся к лимиту Analog input bandwidth. т.е. если SFDR падает настолько сильно скажем уже на 600МГц, то в некоторых случаях толку от того что сэмпл-холд может пропустить сигнал до 1ГГц нету.
  3. STM32F4 , SAM4S

    Pat, Adnega, Artem ,спасибо большое, да я соглашусь стоит всетаки может изучить этот стм32ф4, особенно если он массово доступен, и по нему уже проделана определенная работа. А с новым чипом и новые заморочки.
  4. Вот смотрю я например на некоторые дешевые АЦП, порядка 30-50 баксов. И говорится у них например в даташите что имеет 1ГГц полосу, или например 750МГц входную полосу для сигнала. Но когда я пролистываю даташит дальше и смотрю на типичные характеристики работы, то вижу что они приводят графики и параметр SFDR только до 200-300МГц если скажем АЦП имеет полосу 750МГц, и до 450МГц для АЦП с полосой 1000МГц, итд.. И видно что уже на тех частотах на графике SFDR снижается, скажем до 70дБ итд. для АЦП ADS5474 например, у которого входная полоса сигнала до 1.4ГГц параметр SFDR проверенный эксперементально приводится до 999МГц (что может и объясняет кстати что он стоит раз в 10 дороже других вышеперечисленных),но и на этой частоте параметр SFDR уже упал до 46дБ. Так выходит что подавать на АЦП сигнал за пределами того что указано в типичных тестах в даташитах не стоит? т.к. наверняка SFDR будет очень низким? т.е. выходит что ориентироватся мне нужно не на цифры указанные в заголовках даташита для понта про максимальную полосу пропускания АЦП, а скорее на реальные приведенные тесты? Просто разница иногда очень большая, максимальная полоса пропускания 1ГГц, а в тестах больше 450МГц не показывается как падает SFDR. может поделитесь у кого какой опыт реальной сборки и тестирования в этом плане с какими именно моделями АЦП?
  5. Genesys 2012.01

    Делаю простейший тест, есть фильтр от MiniCircuits, с центровой частотой 4440МГц, обрезает с 4200МГц по 4700МГц, данного фильтра в библиотеки Genesys нету. Скачал s-параметры, создал простой тест, с источником широкополосным, и 2-х портовой моделью, загрузил s-параметры в модель. Но фильтр почемуто не обрезает входную частоту как надо, если я например Чебышева гружу стандартную модель с теми же параметрами, то она фильтрует нормально. Полагаю чтото нетак с загрузкой S-параметров, я такой тест проделывал в Ансофт Дизайнере, после экспериментов с интерполированием получилось, а сдесь вроде как перепробовал все варианты, не выходит. прикрепляю простой тест проект. внутри параметры фильтра, даташит и сам проект. Кто может подсказать в чем еще может быть проблема? test1.zip
  6. STM32F4 , SAM4S

    Атоллик вроде не против, он ведь свою Lite версию бесплатно дает использовать, а внутри нее есть ГДБ сервер, ну так если пакет дают использовать бесплатно а там ГДБ сервер, то кто сказал что нельзя его использовать отдельно? А ФПУ вроде как пока не нужно, но было бы неплохо, для некоторых проектов в будущем пригодится. Частота в раёне 100Мгц тоже пока устроит >150МГц не нужно пока. т.е. выходит я могу использовать вот это: http://www.atmel.com/products/microcontrol.../arm/sam3u.aspx 96МГц, ФПУ нет, но все остальное что нужно имеется. Единственное что, нужно будет мне вот эту штуку купить да? http://www.atmel.com/tools/ATMELSAM-ICE.aspx?tab=overview Этот дебаггер стоит 100 зеленых рублей. Альтернативы кстати есть получще к данному дебаггеру? Он и будущие чипы САМ4С будет поддерживать кстати. А те дебаггеры и софт с ограничением.. не хочу я это. Поэтому основной выбор сейчас между stm32f4/1/0 и SAM3/4S
  7. STM32F4 , SAM4S

    ну вроде как делают, но ведь Атмель вроде как готовую среду разработки дает, устанавливается разом без проблем. Плюс если не ошибаюсь Атмель еще имеет хорошие драйвера под всю свою периферию? которые легко интегрировать в свой проект под любой чип, и сразу все работает. Да и багов меньше? Ну а поставки, мне пока самый навороченный проц не нужен, когда будет М4 буду его использовать, пока сойдет М3, а он у них имиеется, можно купить прямо сейчас. Но с другой стороны, у меня уже лежит на столе стм32ф4, где я осилил уже почти кое как SPI, I2C, PWM. И под него среду бесплатную себе под Win7 тоже настроил: Eclipse + gnuARM + Atollic GDB server так теперь незнаю, забросить этот стм32ф4, купить атмелевский чип, и побыстрому его освоить, или уже стоит продолжать с этим стм32ф4, т.к. серьeзных багов там уже больше пока быть не может, тем более раз основные периферийные устройства работают пока?
  8. STM32F4 , SAM4S

    разбираюсь с боем с stm32f4, и поглядываю на sam4s, который хоть еще и не вышел. На данный момент можно просто купить сам3с посмотреть как его периферия работает, а потом на его мест когда будет готов сам4с поставить они совместимы по ножкам. Я просто смотрю и вижу что слишком уж много багов и неясностей в этом стм32ф4, а в случае с Атмелом все просто и проблем куда меньше, хоть и он слабее по скорости. Чтобы вы посоветовали для общих различный проектов, Атмеловские сам3/4 или стм32ф1/4/0 ?
  9. I2C, stm32f4

    Жесть! я знаю что для i2c он висит на AF4 а не AF5! И даже в комментах своих прописал, но всеравно не проставил! ВОбщем, исправил это, посмотрел на Ваш код, сделал еще пару исправлений в своем коде, и заработало. спасибо большое
  10. I2C, stm32f4

    незнаю, это правда что в этих чипах аппаратный глюк есть на модуле i2c? Кто нибудь сдесь использовал данный чип с i2c? как его запустить (без использования этой стандартной библиотеки) ?
  11. I2C, stm32f4

    вот я прикрепляю снимок с осциллографа, верхний график SDA нижний SCL. т.е. Мастер модуль вроде как пытается сгенерить старт пока клок=1, хоть и с большим опозданием, но клок так и не становится активным, почемуто всевремя прижат к нулю. и SDA идет вверх. пробовал тоже самое просто после того как включил мастер модуль, т.е. без посылки СТАРТа и чего либо. тоже самое. Может чтото не так сконфигурировано всетаки? Может еще чтото там должно быть? перепроверил уже почти все комбинации пина: пуш-пулл, пулл-даун пуш-пулл, пулл-ап, опэн-дрэйн, пулл-ап, опэн-дрэйн, пулл-даун картина одна и таже на осциллографе. какая комбинация там вообще должна быть? мне кажется чтото не так с клоком, он просто не тикает, но почему? ведь все же настроено правильно. я пробовал снизить клок периферии (ну и соответственно подправить параметры инициализации I2C), та же фигня.
  12. I2C, stm32f4

    кстати с GPIO тоже есть вопросы. мне кажется он в начале не совсем был правильно настроен. вот как он настроен сейчас: в коментах для удобства привожу в какой режим какой пин ставлю uint32_t config_gpio_all(void) { //============================================================================= // GPIOB configuration //============================================================================= // enable GPIOB clock ((RCC_TypeDef *)(RCC_BASE))->AHB1ENR |= RCC_AHB1ENR_GPIOBEN; // Configure GPIOB module // Alternate Function for SPI2, I2C1 ((GPIO_TypeDef *)(GPIOB_BASE))->MODER |= (GPIO_MODER_MODER13_1 | // Alternate Function GPIO_MODER_MODER15_1 | // Alternate Function GPIO_MODER_MODER9_1 | // Alternate Function, I2C1, SDA GPIO_MODER_MODER8_1 ); // Alternate Function, I2C1, SCL // Output type for SPI2, I2C1 ((GPIO_TypeDef *)(GPIOB_BASE))->OTYPER |= (GPIO_OTYPER_OT_8 | // Open-Drain, I2C1, SCL GPIO_OTYPER_OT_9); // OPen-Drain, I2C1, SDA // Speed type for SPI2, (I2C1 is LOW Speed, 2MHz) ((GPIO_TypeDef *)(GPIOB_BASE))->OSPEEDR |= (GPIO_OSPEEDER_OSPEEDR13_1 | GPIO_OSPEEDER_OSPEEDR15_1); // Push/Pull for I2C1, SPI2 ((GPIO_TypeDef *)(GPIOB_BASE))->PUPDR |= ( GPIO_PUPDR_PUPDR8_1 | // Pull-Down, I2C1, SCL GPIO_PUPDR_PUPDR9_1 // Pull-Down, I2C1, SDA ); // Alternate Function pin connection for I2C1, SPI2 ((GPIO_TypeDef *)(GPIOB_BASE))->AFR[1] |= ((5 << ((13 - 8) << 2)) | // SPI2 SCK, AF5 (5 << ((15 - 8) << 2)) | // SPI2 MOSI, AF5 (5 << ((8 - 8) << 2)) | // I2C1 SCL, AF4 (5 << ((9 - 8) << 2)) ); // I2C1 SDA, AF4 return 0; } но всеравно не работает. Не ставится тот бит после активации события СТАРТ. и еще, копаюсь тут в интернете, и вижу что почти аналогичная проблема (застой после активации старта) вроде как часто всплывает, и все пишут по разному у кого как сработало. немного не ясно.
  13. I2C, stm32f4

    Я генерирую старт устанавливая бит8 в регистре CR1, затем проверяю бит0 в регистре SR1, нот тот бит так и не устанавливается. Вот привожу ниже фрагменты основного кода. генерирую клоки, системный 168МГц, АПБ1 - 42МГц: static uint32_t pll_start(uint32_t N, uint32_t M, uint32_t P) { RCC_CR_HSEON_bb = 1; // enable HSE clock flash_latency(168000000ul); // configure Flash latency for given frequency RCC->PLLCFGR = (M << RCC_PLLCFGR_PLLM_bit) | (N << RCC_PLLCFGR_PLLN_bit) | ((P/2-1) << RCC_PLLCFGR_PLLP_bit) | RCC_PLLCFGR_PLLQ_DIV9 | RCC_PLLCFGR_PLLSRC_HSE; // configure PLL factors, // always divide USB clock by 9 RCC->CFGR = RCC_CFGR_PPRE2_DIV2 | // APB2 - divide by 2 RCC_CFGR_PPRE1_DIV4 | // APB1 - divide by 4, RCC_CFGR_HPRE_DIV1; // AHB - no prescaler, while (!RCC_CR_HSERDY_bb); // wait for stable clock RCC_CR_PLLON_bb = 1; // enable PLL while (!RCC_CR_PLLRDY_bb); // wait for PLL lock RCC->CFGR |= RCC_CFGR_SW_PLL; // change SYSCLK to PLL // wait for switch while (((RCC->CFGR) & RCC_CFGR_SWS) != RCC_CFGR_SWS_PLL); return 1; } тут я настраиваю ножки (для SPI2 и I2C1 который не работает): #include <stdint.h> #include "inc/stm32f4xx.h" uint32_t config_gpio_all(void) { //============================================================================= // GPIOB configuration //============================================================================= // enable GPIOB clock ((RCC_TypeDef *)(RCC_BASE))->AHB1ENR |= RCC_AHB1ENR_GPIOBEN; // Configure GPIOB module // Alternate Function for SPI2, I2C1 ((GPIO_TypeDef *)(GPIOB_BASE))->MODER |= (GPIO_MODER_MODER13_1 | GPIO_MODER_MODER15_1 | GPIO_MODER_MODER9_1 | GPIO_MODER_MODER8_1 ); // Output type for SPI2, I2C1 ((GPIO_TypeDef *)(GPIOB_BASE))->OTYPER |= (GPIO_OTYPER_OT_8 | GPIO_OTYPER_OT_9); // Speed type for SPI2, I2C1 ((GPIO_TypeDef *)(GPIOB_BASE))->OSPEEDR |= (GPIO_OSPEEDER_OSPEEDR13_1 | GPIO_OSPEEDER_OSPEEDR15_1 | GPIO_OSPEEDER_OSPEEDR9_1 | GPIO_OSPEEDER_OSPEEDR8_1 ); // Push/Pull for I2C1, SPI2 ((GPIO_TypeDef *)(GPIOB_BASE))->PUPDR |= 0x00; //((GPIO_TypeDef *)(GPIOB_BASE))->IDR |= RCC_AHB1ENR_GPIOBEN; //((GPIO_TypeDef *)(GPIOB_BASE))->ODR |= RCC_AHB1ENR_GPIOBEN; //((GPIO_TypeDef *)(GPIOB_BASE))->BSRRL |= RCC_AHB1ENR_GPIOBEN; //((GPIO_TypeDef *)(GPIOB_BASE))->BSRRH |= RCC_AHB1ENR_GPIOBEN; //((GPIO_TypeDef *)(GPIOB_BASE))->LCKR |= RCC_AHB1ENR_GPIOBEN; //((GPIO_TypeDef *)(GPIOB_BASE))->AFR[1] |= (0x500000 | 0x50000000); // Alternate Function pin connection for I2C1, SPI2 ((GPIO_TypeDef *)(GPIOB_BASE))->AFR[1] |= ((5 << ((13 - 8) << 2)) | // SPI2 SCK, AF5 (5 << ((15 - 8) << 2)) | // SPI2 MOSI, AF5 (5 << ((8 - 8) << 2)) | // I2C1 SCL, AF4 (5 << ((9 - 8) << 2)) ); // I2C1 SDA, AF4 return 0; } тут я инициализирую I2C1: #include <stdint.h> #include "inc/stm32f4xx.h" #include "i2c.h" uint32_t config_i2c_all(void) { //============================================================================= // I2C1 Related configuration //============================================================================= // enable I2C1 clock ((RCC_TypeDef *) (RCC_BASE))->APB1ENR |= RCC_APB1ENR_I2C1EN; // 1) configure I2C_CR2 ((I2C_TypeDef *) (I2C1_BASE)) -> CR2 |= (I2C_CR2_FREQ_5 | I2C_CR2_FREQ_3 | I2C_CR2_FREQ_1); // APB1 clock is 42MHz // 2) Configure Clock Control Register, I2C_CCR // // 100KHz, APB1clk=42MHz, T_high = T_low = (1/42MHz)*210 = 5us ((I2C_TypeDef *) (I2C1_BASE)) -> CCR = 0xd2; // d210 // 3) Configure I2C_TRISE, Rise Time register ((I2C_TypeDef *) (I2C1_BASE)) -> TRISE = 0x2b; // d42 (42 + 1) // 4) enable I2C1 peripheral ((I2C_TypeDef *) (I2C1_BASE)) -> CR1 |= (I2C_CR1_PE); return 0; } вроде как все просто, стандартный режим, 100КГц, соответственная инициализация, но он во время дебага застревает на первом цикле где я читаю SR1 чтобы проверить бит SB == 1 //============================================================================= // generating START //============================================================================= ((I2C_TypeDef *) (I2C1_BASE)) -> CR1 |= I2C_CR1_START; //============================================================================= // Check if start bit is set, and writing Slave Address to the DR register //============================================================================= // Read SR1, check if SB == 1 while ( !(((tmp0 >> 0) & 0x01) == 1) ) { tmp0 = ((I2C_TypeDef *) (I2C1_BASE)) -> SR1; } tmp0 = 0; // clear Клок периферии настроен на 42МГц. Это я точно знаю, проверяю даже осциллографом на выходах SPI, там делитель на 8 стоит, и у меня клок 5.25МГц. А вот I2C даже не запускается, и тут пока проблема не в самом протоколе, а именно в том что само событие СТАРТ не генерируется. В референс мануале например пишется на странице 580 последовательность: 1) загрузить CR2 частотой, и я кладу туда 101010 = 42, т.к. частота периферийного клока 42МГц. 2) сконфигурировать CCR, и я кладу туда: 210, т.к. (1/42МГц) * 210 = 5 микросекунд, что и нужно для 100КГц скорости 3) запрагроммировать TRISE значением на 1МГц больше чем значение частоты в регистре CR2, в моем случае это 42 + 1 = 43 4) и наконец включить сам модуль I2C Ну и все, после этого как генерируеш старт то бит SB в регистре SR1 должен быть проставлен, но он по прежнему ноль. что там может быть еще не так?
  14. да я вижу это куда более чем пайка. а так да, там есть такой же в корпусе, на 20 баксов дороже но ничего. спасибо!
  15. я чтото слышал что в этой печи некоторые детали внутри сделаны из дешевых материалов вместо металла, и стоит вонь во время работы. правда у некоторых продавцов на ебае спросил, они говорят вроде как нет такой проблемы. незнаю, может уже на производстве уладили и клепают нормальные. сам эту печь не пользовал. а двусторонние платы я паяю в простой печи, главное сначала сторону с относительно тяжелыми элементами последней паять, и не вижу причин почему не возможно будет паять двусторонние платы в этой. вобщемто ничего не нужно делать просто одна сторона второй раз греется, и ничего не отлипает
  16. Вот прикрепляю даташит радио Микшера. 1мм х 1мм, на последней странице написано в кратце про процесс крепления, и тем не менее немного неясно как именно прикреплять эти тонкие провода? И где их вообще найти? Пок не вижу ничего в нете. Есть какие предложения? hmc260.pdf
  17. приложение немного специфическое. хоть это и радио сигнал, но в данном именно приложении после некоторой коррекции он будет "повторяющимся". а так да, это для осциллографов.
  18. Кстати, тогда такой еще вопрос: Является ли легальным использовать сам GDB сервер от бесплатной облегченной версии Атоллика? т.е. использовать для того чтобы делать девайсы которые продаеш, с и без исходного кода? Я глянул в лицензию, там вроде как ничего не говорится про это явно..
  19. Agilent ADS + Cadence Virtuozo 6.14, как организуется связка? Я пока тока начал изучать это дело, но уже вижу в разных местах в нете что это практикуется, кто нибудь пробовал делать такое? Скажем иметь индуктор реализованный в каком то ките в Виртуозо, а потом его симулировать в АДС? Вот я например такой линк нашел: http://www.home.agilent.com/agilent/produc...c=eng&cc=US это вроде как элемент для Кэденс Виртуозо, для симуляции планарных поверхностей, но я не могу понять этот в АДС входит или как? Это аддон? и еще один нюанс, возможно ли запускать Кэденс скажем в виртуалБоксе, а потом через сеть соединять его с тем же АДС который на основной машине на Винде стоит? Как вообще это дело организуется все, куда еще желательно посмотреть? Кто нибудь такое проделывал?
  20. я считаю надо добавить следующую фичу: когда в сХематике выбираеш элемент помимо того что в разводке экран центруется на тот элемент, сам элемент должен выделятся т.е. ярким становится, а то если фокус не близкий то не сразу понятно какой именно элемент на плате если вокруг него много одинаковых. эта фича будет крайне полезна.
  21. нет. мне кажется я всетаки был прав, я не применяю субдискретизацию, вот метод о котором я говорю: http://www.picotech.com/education/oscillos...e-sampling.html Таким методом я поднимаю скорость преобразования, могу поднять его в несколько раз. И таким образом ЭФФЕКТИВНАЯ скорость преобразования у меня уже будет не 400МГц как у АЦП, а такая в сколько раз я ее поднял вышепоказанным методом. Но при этом естесственно полоса самого АЦП остается 1.4ГГц. таким образом, к примеру если эффективная скорость преобразования поднялась скажем в 6ГГц, то я могу преобразовать сигнал который имеет полосу 1.4ГГц максимум (чтобы не превысить полосу пропускания самого АЦП). И изначально мне просто интересен был уровень SFDR который будет на этих частотах.
  22. у меня один вопрос небольшой. предположим есть задача реализовать некую непростую систему управления, имеется stm32f405 с 1МБ Флэш памятью, АРМ с 168Мгц частотой, и блоком FPU. Предположительно будут работать две группы: группа 1 занимается разводкой платы с сенсорами, приводами и разъемами к рулям управления итд., группа 2 разрабатывает алгоритмы управления и планирует писать программу управления на С++. Есть два варианта: Вариант 1: Разработать плату, подключить все устройства. Написать функции доступа к различным блокам, рулям, сенсорам через периферию. А затем, достать второй дебаггер, дать его группе 2 и начать дальше вместе с этой группой разрабатывать систему управления и подключать ее к своим функциям доступа к периферии. Вариант 2: Разработать плату, подключить все устройства к ней как в варианте 1, но потом, организовать скажем УАРТ соединение с компом т.е. написать программу на Визуал С++ для работы с УАРТ, ну а там группа 2 пристроит к ней программу управления на С++ и запускать ее будет на компе, т.е. программа управления на компе управляыет платой и устройствами подключенными к ней и читает ее сенсоры. Ну а после того как скажем все отлажено, совместно с группой 2 портировать всю их программу на stm32f405 Я просто думаю не возникнет ли каких граблей в случае с вариантом 2 при портировании написанного кода на С++ с компа на stm32f405Ну чтото вроде, их программа окажется слишком замороченной и выйдет проблем много если попытатся запустить ее как есть на stm32f405 ? С одной стороны вроде С++ он портируемый, но с другой стороны, не возникнет ли проблем каких с памятью или еще чем? Программу или алгоритм управления можно написать например полностью независимым от низкого уровня функций которые с периферией на чипе общяются, сенсорами, рулями итд. Так как лучше поступить, какой вариант выбрать более правильней будет?
  23. Атоллик тоже был бесплатным, и в один день разослал всем мейл что все типа, халява кончилась. Так что если планируется использование бесплатного софта, то лучше пусть он бдует 100% бесплатным. СТ вроде как не придумала. я вот что сейчас сделал, вместо CodeSourcery я установил на линукс прокомпилированный GCC Tools for ARM Processors, и этот пак тоже естесственно содержит gdb а самое главное это то, что он поддерживает аппаратный FPU на семейстев stm32f4, взял вот отсюда: https://launchpad.net/gcc-arm-embedded ну а потом в качестве сервера всетаки решил успользовать как и прежде Тексан. работает вроде как.
  24. в этом варианте надо скачивать вроде бесплатный Atollic TrueSTUDIO, всеравно хотелось бы избежать этих пакетов. второй вариант в этом линке использовать Тексан. но он для Линукса. так выходит под Win7 тока OpenOCD и этот труе студио, других бесплатных опций нет. кстати, получилось его запустить, мне пришлось удалить родной драйвер от ст-линка и поставить lib-usb32. запустился опеноцд и законектился. но потом проблемы: 1. в папке собранного проекта набираю: arm-none-eabi-gdb stm32f4_blink_led.elf 2. затем это: target extended 3. затем пробую разные команды простые но вот он мне что выдает: C:\Users\blackops\Desktop\stm\stm32f4_blink_led-1.2.2-120323\stm32f4_blink_led-1 .2.2-120323\out>arm-none-eabi-gdb stm32f4_blink_led.elf GNU gdb (Sourcery G++ Lite 2010.09-51) 7.2.50.20100908-cvs Copyright © 2010 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "--host=i686-mingw32 --target=arm-none-eabi". For bug reporting instructions, please see: <https://support.codesourcery.com/GNUToolchain/>... Reading symbols from c:\users\blackops\desktop\stm\stm32f4_blink_led-1.2.2-12032 3\stm32f4_blink_led-1.2.2-120323\out\stm32f4_blink_led.elf...done. (gdb) target extended localhost:3333 Remote debugging using localhost:3333 Remote 'g' packet reply is too long: 0000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000010 00000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000 (gdb) load You can't do that when your target is `exec' (gdb) run Starting program: c:\users\blackops\desktop\stm\stm32f4_blink_led-1.2.2-120323\s tm32f4_blink_led-1.2.2-120323\out\stm32f4_blink_led.elf Don't know how to run. Try "help target". (gdb) info registers The program has no registers now. (gdb) continue The program is not being run. (gdb) p/x *(uint32_t *) 0x40020400 Cannot access memory at address 0x40020400 (gdb) в чем же тут проблема? в линуксе я например этими командами после запуска ст-линка мог смотреть регистры, грузить и запускать программу, как правильнее это сделать в случае с опеноцд? мануал особо не помог по этому поводу. а вот распечатка из другово окна где запускался опенОСД: C:\openocd060\bin-x64>openocd-x64-0.6.0-dev-120529191006.exe -f board/stm32f4dis covery.cfg Open On-Chip Debugger 0.6.0-dev-00599-ga21affa (2012-06-20-09:22) Licensed under GNU GPL v2 For bug reports, read http://openocd.sourceforge.net/doc/doxygen/bugs.html 1000 kHz srst_only separate srst_nogate srst_open_drain Info : clock speed 1000 kHz Info : stm32f4x.cpu: hardware has 6 breakpoints, 4 watchpoints Info : accepting 'gdb' connection from 3333 Info : stm32f4x errata detected - fixing incorrect MCU_IDCODE Info : device id = 0x10006413 Info : flash size = 1024kbytes Warn : acknowledgment received, but no packet pending undefined debug reason 6 - target needs reset Info : dropped 'gdb' connection Info : accepting 'gdb' connection from 3333 Warn : acknowledgment received, but no packet pending undefined debug reason 6 - target needs reset Info : dropped 'gdb' connection
  25. вот тут описан тулчейн который поддерживает и компиляцию для чисел с плавающей запятой: http://freddiechopin.info/en/articles/34-n...pc1769#comments также тут говорится что openocd 0.6.0 поддерживает st-link/v2 в режиме SWD. скачал, решил под Винду поставить, собираю проекты нормально. теперь хочу законектится, подключаю плату stm32f4discovery и вот вобщем результат: C:\openocd060\bin-x64>openocd-x64-0.6.0-dev-120529191006.exe -f board/stm32f4dis covery.cfg Open On-Chip Debugger 0.6.0-dev-00599-ga21affa (2012-06-20-09:22) Licensed under GNU GPL v2 For bug reports, read http://openocd.sourceforge.net/doc/doxygen/bugs.html 1000 kHz srst_only separate srst_nogate srst_open_drain Info : clock speed 1000 kHz Error: open failed in procedure 'transport' in procedure 'init' C:\openocd060\bin-x64> Подскажите в чем здесь может быть проблема? У кого уже получалось запустить openocd с SWD и st-link/v2?
×
×
  • Создать...