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

STM8L151 / IAR пустой проект, проблема с HSI

ICKCRСоздаю пустой проект для STM8L151C8T6 компилятор IAR 3.11.4. Стартую с отладчиком STLink, наблюдаю состояние регистра ICKCR - бит HSION = 1, а бит HSIRDY = 0 и привести его в состояние 1 никак не получается, хотя по сбросу оба должны быть в 1. Какой то startup IAR-а неверно инициализирует систему тактирования? Где посмотреть, как исправить? Аналогичную проблему имел в тестовом проекте embOS / STM8L151. Видимо как следствие не стартовал таймер TIM4 -выбраннвй в качестве системного для embOS. Так же в обоих случаях не иогу запустить тактирование от HSE -внешний кварц на 16 МГц. Хтоя в других  примерах, "готовых", переключение тактирования HSI/HSE и обратно затруднений не вызывало. Направьте на путь истинный пжлст...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

4 часа назад, nanorobot сказал:

ICKCRСоздаю пустой проект для STM8L151C8T6 компилятор IAR 3.11.4. Стартую с отладчиком STLink, наблюдаю состояние регистра ICKCR - бит HSION = 1, а бит HSIRDY = 0 и привести его в состояние 1 никак не получается, хотя по сбросу оба должны быть в 1.

С чего бы это? В реф.мануале указано: "Reset value: 0x11"  Т.е.: после RESET должно быть HSIRDY==0. Что Вы и наблюдаете.

Цитата

Какой то startup IAR-а неверно инициализирует систему тактирования?

Стартап IAR-а не инициализирует никакую периферию STM8.

А зачем Вам эти бит и регистр? Я их вообще не использовал. И без них можно выбрать источник тактирования. У меня так:

__ramfunc void CLKinit(u8 cclkRun)
{
  struct CLKinitT {
    u8 src, ckdivr;
  } static t[CLK_M_n] = {
    {CLKSRC_ID_ML, BSIZE_SHIFT_MAX(CLKDIV_ML)},
    {CLKSRC_ID_MH, BSIZE_SHIFT_MAX(CLKDIV_MH)},
    {CLKSRC_ID_MT, BSIZE_SHIFT_MAX(CLKDIV_MT)}};
  u8 i;
  CLK.SWCR = 0;
  asm("NOP");
  asm("NOP");
  CLKinitT const *p = &t[cclkRun];
  if (CLK.SCSR != (i = p->src)) {
    CLK.SWR = i;
    for (CLK.SWCR = B0 | B1; CLK.SWCR & B0; );
  }
  CLK.CKDIVR = p->ckdivr;
  CLK.CRTCR = 0;
}

Т.е. - через регистры CLK.SWR/CLK.SWCR.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...