Емельянов Эдуард Владимирович (eddy_em) wrote,
Емельянов Эдуард Владимирович
eddy_em

Categories:

Лыжи не едут вообще

Пытаюсь, пока делать нечего, набросать базовых сниппетов для работы с STM32F103. Добавил директорию и начал с простого "блинка". Тупо зажечь светодиоды на плате не получилось. Вот такой элементарный код:
int main(void){
    sysreset();
    RCC->APB2ENR |= RCC_APB2ENR_IOPBEN;
    GPIOB->CRH = 0x00000066; // PB8/9 - 2MHz opendrain 
    GPIOB->ODR = 0;
    while(1){}
    return 0;
}

не работает! И если sysreset() убрать, тоже светодиоды на PB8 и PB9 не загораются. А ведь по идее сразу после резета запускается reset_handler, а дальше уже можно вручную sysreset запустить (это то, что запускается в SPL автоматом из стартап-скрипта на ассемблере; я-то по аналогии с STM32F0 сделал на основе opencm3), после чего настроить HSE.

Буду дальше разбираться, что за чертовщина такая!!! Надо бы поискать что-нибудь более-менее подходящее для меня, чтобы не нужно было по чужому коду туда-сюда скакать.
Tags: stm32, рукожопие
Subscribe
promo eddy_em august 17, 2019 12:33 3
Buy for 10 tokens
Юра намедни напечатал корпус для хронометра. Для первого блина получилось неплохо: И еще немного фотографий:
  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

  • 26 comments