Ответы пользователя по тегу Микроконтроллеры
  • Как остановить выполнение кода в pic16?

    В прерываниях нужно взводить флаги, а уже в основной программе их анализировать и делать задержку
    В самом простом случае:
    uint8_t FlagTextChanged;
    
    void interrupt isr(){
      if(INTF){
            ...
            Lcd_Write_String("Hello");
            FlagTextChanged = 1;
        }
        if(RBIF){
            if(RB7){
                ...
                Lcd_Write_String("RB7");
                FlagTextChanged = 1;
            }
            RBIF = 0;
        }
    }
    
    void main(){
      FlagTextChanged = 0;
      while (1){
        ...
        if (FlagTextChanged){
    	  FlagTextChanged = 0;
    	  __delay_ms(1000);  	
    	}
      }
    }
    Ответ написан
    Комментировать
  • Как научиться изящно и грамотно программировать МК?

    Сначала моделировать структуру кода, продумать взаимодействие обособленных частей - "карандашом на бумажке" в виде блок-схем, независимых "виртуальных машин", и только после того, как будет понятна вся структура будущего устройства, начинать писать код. А дальше только практика; и есть код, написанный несколько месяцев назад, кажется ужасным, значит, вы на верном пути)
    Главное - не торопиться сразу кодить.
    Ответ написан
    Комментировать
  • Можно ли на с++ написать прошивку для микроконтроллера?

    Можно, но проблема в том, что фишки С++ отъедают достаточно много памяти - для настольных приложений, например, пара килобайт может быть не критична, а вот на микроконтроллерах ценится каждый байт.
    Ответ написан
    Комментировать