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

dosikus

Members
  • Постов

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

  • Посещение

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

  1. Принцип решения подобной задачи http://forum.easyelectronics.ru/viewtopic.php?f=35&t=31222 http://www.martinhubacek.cz/arm/improved-stm32-ws2812b-library
  2. Еще раз - аппаратно и одновременно. А ваш ответ весьма показателен - я уже писал о осознании периферии у STM32...
  3. Что из этой фразы не понятно? Ну ради бога разжую: На 16ти линиях порта по датчику, работа идет одновременно с каждым датчиком и аппаратно... Стоит ради приличия хотя бы сравнить код генерируемый калокубом и вменяемый код...
  4. Угу, а превращать все эти плюшки в ардуино подобное, это высший пилотаж. Дык что сочувствовать можно вам...
  5. Сперва наверное надо читать и думать, не так ли ? Вопрос был о одновременной работе с 16 линиями 1wire... О usb видимо ссылка так и не читана. К чему сей бред? Не иначе фриртос запустил? :)))))))) Ничего , скоро щенячий восторг пройдет...
  6. А я и не вам писал, пока вы не влезли . Может с себя начнете ?
  7. Калокубо-филам рекомендую сперва осознать о чем речь и только затем вбрасывать на вентилятор. Ну и тема к размышлению : накалокубьте работу с 16 1wire датчиками одновременную и аппаратную. И уж коли для вас калокуб только конфигуратор а остальной код в ваших "творениях" - софтовое ногодрочерство - надо было вам на пЫк/avr оставаться... ДА ну? http://mcu.goodboard.ru/viewforum.php?id=19
  8. Не то слово. Присмотрись к ним в плане связки с DMA и другой периферией. Например DMA burst http://mcu.goodboard.ru/viewtopic.php?id=31 И да - калокуб совершенно не нужен и более того -вреден, читайте RM ...
  9. artos5, соединить физически пин RESET с соответствующим пином прошивальщика , в опциях прошивальщика выбрать connect under reset. Обычное дело когда портят дефолтные настройки пинов SWD. В 103их нет LEVEL2 залочить их нельзя. Изумительный бред...
  10. Примеры черезжопной реализации ногодрыгом ты прекрасно осветил в своих бложках, это нынче модно - нихрена не умея учить и поучать других. А теперь вменяемые реализации. -16 канальная аппаратная и одновременная работа с устройствами 1wire . -16 канальный аппаратный SPI с общей тактовой -Частотомер основанный на reciprocal counter - полностью аппаратный - Аппаратный драйвер LED на 8 разрядов - Аппаратный драйвер WS2812 с одновременной работой с 16ю каналами Все они имеет параллельные автономно-аппаратные процессы. Такие мелочи как аппаратная работа с модбас RTU и ASCII - даже не буду озвучивать . Так же как и 4х канальный генератор синуса. Статус-левел звиздабол - оставь себе, ты имеешь его заслуженно . Ну и советую - сперва думать, перед тем как заниматься писаниной ...
  11. К чему тогда ваши реплики в защиту калокуба? В том плане, что вы совсем не в теме?
  12. artos5, тыканье в калокубе и вменяемая конфигурация периферии, совершенно не равнозначные вещи, вам с этим жить...
  13. Весьма показательное заявление. Подобное заявление простительно аурдинщику или выходцу с avr, привыкшему кодить в CVAVR визардвми и копипастом, но не тому кто взялся учить нубов. И просто глупо считать stm32 -ожЫревшей 8ми биткой и перетаскивать на них решения с тех же 8ми биток. "Инитка" как вы выразились, а нормальным языком - конфигурация периферии, в STM32 является основным в проекте. Более того - архитектура STM32 позволяет создавать проект с полностью автономными параллельными процессами , для пользователей же калокуба сии плюшки просто напросто закрыты/ замазаны несооуразными конструкциями г.кода. Та организация прерываний в калокубе, чем так восхищается mail_robot, просто неприемлема в вменяемом коде. artos5, обсирать ваше божество действительно не зачем. Кто умней просто-напросто не будет использовать эту гадость, ну а нубы нахватавшись граблей, любезно расставленых индусами и так яростно рекламируемые вами, уткнутся в тот же тупик что и адепты аурдуньи. Может это вам не стоит практиковать двойные стандарты? Я уже указал на реплику mail_robot, что не стоит поливать грязью незнакомых ему людей. И может я услышу наконец-то более весомые аргументы кроме - " не тронь наше божество"? Периферия STM32 очень удачно организована , и не стоит портить знакомство с ней облегчалками-тыкалками . Изучайте железо и все будет замечательно...
  14. Во первых сперва почитай кого ты в говнокодерстве обвиняешь, а во вторых причем здесь бездумнонатыканнаяхрень в калокубе????
  15. Здесь не хватало скорости в прерывание из-за SPL http://www.microchip.su/showpost.php?p=231953&postcount=162 Ну а тем кто пользует калокуб можно только посочувствовать , эта гадость из любого чипа сделает тормоз...
  16. Вы какую-то бессознательную чушь несете, DP и DM подключаются без согласователей уровней , чаще просто через резисторы ~30 Ом, ну и супрессоры Питание от VUSB через LDO . На миландравской отладке вАААще напрямую https://www.google.ru/url?sa=t&rct=j&q=&esrc=s&source=web&cd=12&cad=rja&uact=8&ved=0ahUKEwixyumf57fTAhWsbZoKHXZsAik4ChAWCCcwAQ&url=https%3A%2F%2Fldm-systems.ru%2Ff%2Fdoc%2Fcatalog%2FLDM-K1986BE92QI-H%2FLDM-K1986BE92QI.pdf&usg=AFQjCNHN4s81N03BBKM3GJqIc68TgR1qYg&sig2=G-1QQr3LY_hw6fMZKa-yUg
  17. Что сие означает? Как вы это проверяете? Что за IDE? Например Keil - запускаете дебаг , ставите бряк на строку if(USART1->SR & USART_SR_RXNE) Запускаете процесс, жмете кнопку на клаве когда окно putty в фокусе - должно сработать прерывание.
  18. Вы проверили эхо? У меня так же все работает и с прерываниями и с DMA , так что ваша реплика -ниАчем ...
  19. Сперва Кстати какой адаптер и какая терминальная программа? И здесь крайне желательно наличие лог. анализатора - сокращает подобные танцы с бубном до минимума...
  20. А к чему ваши правки ? Подсказываю метод проверки : Создаем проект с моим и неправленным кодом , тактовая чипа должна быть 72МГц если тактовая иная правим здесь #define USARTCLK 72000000UL Подсоединяем через адаптер UART -USB к ББ и добиваемся устойчивого приема на стороне ББ отправляемых нами строк . И только потом пробуем отправить с ББ и брякнуться в прерывании. Да, сперва проверяем адаптер UART -USB замкнув RX и TX адаптера( без подсоединения отлаживаемой платы) и проверяя эхо в терминальной программе. А у нас в квартире газ...
  21. Причем сброс флага записью 0 рекомендован только при multibuffer communication, а сие доступно только при работе с DMA .
  22. BARS_, Читаем внимательно - то что нужно выделил Да для сброса RXNE не надо читать SR , но сбрасывается он чтением DR а также может быть сброшен записью 0 . BARS_, я удивлен тобой , разве можно читать документацию частями???? Nicollo, ваша проблема решается элементарно - выкашивается на SPL и все прекрасно работает. #define USARTCLK 72000000UL #define BAUDRATE 115200UL void USART1_IRQHandler (void) { if(USART1->SR & USART_SR_RXNE) { UsartBuf =USART1->DR; } } void UsartInit(void) { RCC->APB2ENR |=RCC_APB2ENR_USART1EN | RCC_APB2ENR_IOPAEN; GPIOA->CRH &=~ (GPIO_CRH_CNF10 |GPIO_CRH_CNF9|GPIO_CRH_MODE10); GPIOA->CRH |= GPIO_CRH_CNF10_0 |GPIO_CRH_CNF9_1 | GPIO_CRH_MODE9; USART1->CR1 |= USART_CR1_TE |USART_CR1_RE |USART_CR1_RXNEIE; USART1->BRR =(USARTCLK+BAUDRATE/2)/BAUDRATE; USART1->CR1 |=USART_CR1_UE; NVIC_SetPriority(USART1_IRQn,15); NVIC_EnableIRQ(USART1_IRQn); } void USART_write (char data) { while(!(USART1->SR & USART_SR_TXE)); USART1->DR=data; } void USART_WR_String(const char *s) { int i = 0; while (s [i] != 0) { USART_write (s[i++]); } }
  23. Где что вы читали ? Кто вообще эту хрень выдвинул? Читайте RM , а не кухаркины статьи RXNE сбрасывается чтением SR с последующим чтением DR . Причем чтение SR происходит при проверке флага. И не надо лепить горбатого - все проверенно и работает BARS_, ту да же - читать RM .
  24. Sancta, сравните простыню калокуба и тот код что я привел в той ветке - ТоварищЪ точно так же натыкал ничего не понимая. Ну где , я вас спрашиваю пресловутый "низкий " порог вхождения?
×
×
  • Создать...