Поиск
Показаны результаты для тегов 'stm32f'.
-
Программист микроконтроллеров на постоянку, Москва
SergeyC опубликовал тема в Предлагаю работу
Ищем программиста микроконтроллеров на постоянную работу в офисе, территориально расположенном в Москве рядом с МГУ (м. Ломоносовский проспект), для разработки нового встроенного ПО и поддержки существующего кода, работающего в микроконтроллерах MSP430, PIC18F, STM32F0..4. Необходимо уметь писать свой (и читать чужой) код на языке C, понимать, как в целом устроен микроконтроллер, иметь представление о принципах работы периферии и физических интерфейсах ввода-вывода, иметь навыки отладки системы в целом. Наша компания INWAVE ( https://inwave.ru/about/ ) коммерческая, 10 лет на рынке, мы разрабатываем и производим измерительное оборудование: генераторы, анализаторы, приемники, системы связи (СВЧ и не только), вакансия открыта в связи с расширением штата. Официальное описание вакансии ( https://inwave.ru/vacancies/ ) такое: Требования: Опыт работы: 1–3 года Высшее профильное образование (радиоэлектроника/радиотехника/радиофизика/программирование или смежные области); Опыт программирования на языке С не менее 2 лет; Знание архитектуры STM32, PIC, MSP430; Опыт настройки IDE; Знания в области построения аналоговых и цифровых трактов обработки сигналов; Умение объяснить ассемблерный код; Умение читать электрические принципиальные схемы; Знание интерфейсов RS232/422/485, I2C, SPI, CAN, USB, Ethernet; Умение работать с контрольно-измерительными приборами; Знание английского языка (чтение документации и переписка); Аккуратность. Обязанности: Подбор микроконтроллера под требования ТЗ; Разработка встраиваемого ПО; Отладка, запуск и сопровождение ПО; Оформление и выпуск документации. Желательные навыки: Опыт разработки схем и печатных плат; Работа с ОСРВ/Linux; Знание беспроводных интерфейсов; Представление о типах лицензий (GPL/GNU/MIT и т. п.); На собеседовании показать примеры собственного кода. Условия: Официальное трудоустройство в соответствии с ТК РФ; Полный рабочий день на территории работодателя в шаговой доступности от м. Ломоносовский проспект; Перспектива карьерного роста; Работа в слаженном, дружном коллективе. Корпоративные мероприятия. Ориентировочная вилка ЗП от 110 000 до 170 000 руб, может быть скорректирована по итогам собеседования. Отклики прошу присылать в виде резюме (в свободной форме) на почту [email protected]- 6 ответов
-
- программист
- микроконтроллеры
- (и ещё 5 )
-
Добрый день. Попал недавно в ситуацию аналогичную той, которая случилась когда я работал давным-давно автослесарем, ремонтируя крайслеры. Приехал клиент на Чероки, старом еще, похожим на кирпичь. Я спросил, что у него болит и был оочень удивлён его абсолютно нестандартным ответом. Мужик достал лист А4 весь исписанный убористым почерком и начал "констатировать симптомы". "При повороте налево при скорости от 10 до 20 км/ч дребезг в районе раздатки, при торможении на скорости 40-60 км/ч постукивание заднего моста, на неровной дороге громыхание по всему кузову и т.д. и т.п........". Через минуту, когда моё удивление прошло, и мужик уже добрался до второй трети своих недугов, я его решительно остановил, забрался под машину даже не утруждаясь поднять её на подъёмнике и двумя пластиковыми хомутами закрепил троссики стояночного тормоза. Не обращая внимание на возражения владельца машины что "Он ещё не все неисправности мне описал", отправил его на обкатку. Через пять минут вернулся клиент, ещё более удивлённый, чем до этого был я. Конечно его первый вопрос "А что было то???". А быто просто то, что пластиковые клипсы крепления двух троссов стояночного тормоза к балкам кузова развалились и троссы стучали по кузову, по рычагам. Что касается настоящего времени. Делаю я контактную сварку с управлением по току с помощью n-го кол-ва симисторов, коммутирующих первичку транса. Выбрал для этого китайскую платку с stm32f030f4 rev.A. Ног всего 20, катастрофически нехватает, но 2 я оставил для USART - в дальнейшем хочу прикрутить к сварке еще другие узлы. Программа заливается по stlink через плату stm32vldiscovery. На ней кроме stlink есть stm32f100RB rev.Z. На плате кнопка есть, светодиодиков два, и решил я с неё по USART управлять stm32f030f4 для включения транса просто отправляя байтик. Приборов особых нет, что бы визуализировать передачу на ногу TX USART1 stm32f100RB повесил светодиод, в baud rate register забил 0xFFFF, тактирование APB2 уменьшил на 8 (USART1 сидит на APB2, всё тактируется от HSI 8MHz) и ...... ничего не получил. Даже idle line. Светодиод не засветился. Налетел я на первый косяк с выбором baud rate. Дело в том, что в RM0360 про stm32f030f4, в параграфе про auto baud rate указано минимальное значение для скорости передачи - fCK/65535. Вот я и забил 0xFFFF. После недели плясок с бубном нашёл предельное значение - 0xFFF7. Оно оказалось одинаково для всех чипов которые у меня есть - stm030, stm051, stm100, stm303, stm334. Правда в отличии от stm100 у всех остальных idle line активировалось, но передачи при 0xFFFF не было. Решив этот косяк я напоролся вооще на непонятное мне поведение stm32f100RB в данном коде: movs r10,#0 movs r11,#1 ;Handler mode EXTI0_IRQ_ PROC cpsid i ldr r0,=USART1_DR movs r1,#2_11010111 strh r1,[r0] ldr r0,=GPIOC_BSRR movw r1,#0x200 str r1,[r0] mov32 r2,#0x7A1200 LEDloop subs r2,#1 BNE LEDloop lsl r1,#16 str r1,[r0] ldr r0,=a_EXTI_PR0 str r11,[r0] ;clear interrupt flag in EXTI_PR0 cpsie i BX LR ALIGN ENDP - кнопка на ноге A0 и запускает обработчик внешнего прерывания EXTI0. В нем загорается светодиод, USART1 выталкивает байт, потом цикл считает до 8000000, делая задержку в 3 сек, гаснет светодиод и наконец снимается флаг отложенного прерывания в модуле внешних прерываний и выход из EXTI0. Всё вроде просто, но ! Байт выталкивался дважды! и задержка была 6 сек. Очередные пляски с бубном и, оказывается, что это происходит, когда делитель APB2 больше чем 4. В остальных случаях всё нормально. Тут я встал на путь владелца Черокки, испытал это на разных контроллерах, с прерываниями от разных источников, с разными baud rate, на разных шинах, получил совершенно непохожие результаты и запутался окончательно. Решение было как с пластиковыми хомутами. Подказали мне его на stm community forum, но в какой странной форме "Всем хорошо известно, что необходимо сразу же после входа в обработчик прерывания, стнят флаг этого прерывания в модуле, который его вызвал". Это где же "хорошо известно"??? Я весь референс мануал прчитал и не нашёл "хорошо известных" рекрмендаций!! Ну и напоследок нашёл еще одну ж..у с внешним прерыванием. Необходимо при входе в обработчик не только сразу же снять флаг, но и маскировать это прерывание, иначе, если нет приборной компенсации дребезга контактов, произойдет ложный вызов обработчика, и включить его перед выходом. Вот так: movs r10,#0 movs r11,#1 ;Handler mode EXTI0_IRQ_ PROC cpsid i movs r10,#0 movs r11,#1 ldr r3,=a_EXTI_IMR0 str r10,[r3] ldr r0,=a_EXTI_PR0 str r11,[r0] ;clear interrupt flag in EXTI_PR0 ldr r0,=USART3_DR movs r1,#2_11010111 strh r1,[r0] ldr r0,=GPIOC_BSRR movw r1,#0x200 str r1,[r0] mov32 r2,#0x7A1200 LEDloop subs r2,#1 BNE LEDloop lsl r1,#16 str r1,[r0] str r11,[r3] cpsie i BX LR ALIGN ENDP
- 11 ответов
-
- usart
- handler mode
-
(и ещё 1 )
C тегом: