Если ваш вопрос не влез ни в одну из вышеперечисленных тем, вам сюда.
Ответить

Re: Программирование STM8

Пт янв 13, 2023 18:45:45

Кто использует STM8S_StdPeriph_Lib , выложите пожалуйста stm8s_clk.h и stm8s_clk.с .
Которыми пользуетесь.

Re: Программирование STM8

Сб фев 04, 2023 21:15:01

Начал изучать ST8S.
Установил STVD+COSMIC. Помигал светодиодом. Ещё пара примеров ...

Мне нужно чтоб МК уснул - Halt и проснулся от AWU.
МК уходит в HALT и не возвращается оттуда ....
Код :
Файл Main:
Код:
#include <iostm8s103.h>
#include "macros_stm8.h" // Макросы для работы с портами
#include "stm8s.h"
//   Светодиоды
#define LED1 B, 5, Low, NoPullUp, NoOpenDrain, NoSpeedLimit, NoIT

// Обработчик прерывания от  AWU  **************************
@far @interrupt void awu_irq_handler (void)
{
  uint8_t St;
  St = AWU_CSR1 ;   
return;
}

// ЗАДЕРЖКА ************************************************
static void delay(uint32_t t) //функция задержки
{
    while(t--) {}
}

//   Инициализация периферии  *******************************
static void init(void)
{         
   //установить коэффициент деления частоты HSI в 00 (без деления)
     CLK_CKDIVR = CLK_CKDIVR & 0b11100111;      
   //      Светодиоды =====
     Pin_Out(LED1);   
    // Настройка AWU =====
     CLK->PCKENR2 = CLK_PCKENR2_AWU;
     AWU->APR = 0x3e;     // /64
     AWU->TBR = 0x0B;  // 1s
     AWU->CSR |= AWU_CSR_AWUEN; // разрешаю работу AWU       
}


main()
{      
   init(); // Инициализируем периферию   
   enableInterrupts(); 
   
   while(1)
   {
     Pin_On(LED1);     // Вкл светодиод
     delay(50000UL); //задержка      
     Pin_Off(LED1);  // Откл светодиод
    
           halt();
    
      Pin_On(LED1);  // Вкл светодиод (можно убрать)   
     delay(50000UL); //задержка      
  }   
}

Файл MAIN.H
Код:
@far @interrupt void awu_irq_handler (void);

Файл stm8_interrupt_vector.c
Код:
#include "main.h"
typedef void @far (*interrupt_handler_t)(void);

struct interrupt_vector {
   unsigned char interrupt_instruction;
   interrupt_handler_t interrupt_handler;
};

@far @interrupt void NonHandledInterrupt (void)
{
   return;
}

extern void _stext();     /* startup routine */

struct interrupt_vector const _vectab[] = {
   {0x82, (interrupt_handler_t)_stext}, /* reset */
   {0x82, NonHandledInterrupt}, /* trap  TLI */
   {0x82, awu_irq_handler}, /* irq0  AWU */
   {0x82, NonHandledInterrupt}, /* irq1  */
   .....
};



Компилируется без ошибок.
При включении мигает 1 раз ... и всё.
При отладке доходит до Halt далее тоже ничего не происходит.

Re: Программирование STM8

Вс фев 05, 2023 09:25:30

Мне нужно чтоб МК уснул - Halt и проснулся от AWU.
МК уходит в HALT и не возвращается оттуда ....

Отбой. Разобрался. Проблема решена.

Re: Программирование STM8

Пн мар 06, 2023 21:20:21

подскажите как прошить новый с али STM8S103K3T6 в паяльнике GLOBAL CXG E60WT программатором SN-LINK V2 (тоже с али), а то в паяльнике приказал долго "жить" пожалуйста подскажите. SN-LINK V2 не видит STM8 пишет Can not conetct to target

Re: Программирование STM8

Пн мар 06, 2023 22:42:36

да фиг знает. надо убедиться, что правильно подключили, что на SWIM_DATA ничего лишнего и что там бегают сигналы... вариант, что приказ долго жить отдан навсегда - тоже не исключается, может, нечего уже прошивать-то... а может и программатор дядюшка Ляо прислал не совсем программаторный... есть живой нормальный микроконтроллер STM8 или 32?

Re: Программирование STM8

Вт мар 07, 2023 21:39:57

подключено платкой QFP32 to DIP DIP32 Converter Adapter Socket PCB SMD 0.8mm, и выводы к STM8 подключены через платку (чип не впаян ещё) 1 вывод- reset: вывод- GND; 6 вывод- "+5V"; 26 вывод- SWIM. К ST-LINK V2 подключены согласно надписи на корпусе, я уже этим ST-LINKом прошивал паяльник всё норм было, потом решил поменять прошивку и перепутал разъём программирования и полярность. других чипов нет, есть ещё один ST-LINK V2.

Re: Программирование STM8

Ср мар 08, 2023 10:41:40

1 вывод- reset: вывод- GND; 6 вывод- "+5V"; 26 вывод- SWIM

на VCAP (пятый пин) нужно еще ставить конденсатор. читайте документацию.

Re: Программирование STM8

Ср мар 08, 2023 13:38:42

Спасибо Вам попробую поставить

Re: Программирование STM8

Чт мар 09, 2023 20:29:38

попробовал не получается, не видит пишет нет подключения, пробовал ST Visual Programmer и STM32 ST-Link utility, не помогает. Прошил всё работает паяльник хорошо, спасибо всем Вам за советы. Спасибо огромное Proton78 за архив с прошивкой здесь на сайте, спасибо большое всем.

Re: Программирование STM8

Пн мар 13, 2023 13:17:24

Всем доброго дня.
Господа подскажите, как в ST Visual Develop можно блинк разогнать до 50 кГц?
на stm8s103 без внешнего кварца.
Если между вкл, выкл пина поставить: delay(1), получается очень большая задержка.
Если убрать delay(1), получается очень мало.
Может надо какую библиотеку поставить?
Играюсь на iostm8s103.h

Re: Программирование STM8

Вт мар 14, 2023 07:09:59

Всем доброго дня.
Господа подскажите, как в ST Visual Develop можно блинк разогнать до 50 кГц?
на stm8s103 без внешнего кварца.
Если между вкл, выкл пина поставить: delay(1), получается очень большая задержка.
Если убрать delay(1), получается очень мало.
Может надо какую библиотеку поставить?
Играюсь на iostm8s103.h

В обработчике прерывания от любого таймера поставить что-то типа GPIO_WriteReverse(GPIOE, GPIO_PIN_5); (это для S105, в S103, возможно, другой порт и другой пин), затем включить прерывание по переполнению счётчика, задать параметры счётчика и всё будет точно и с любой возможной частотой.

Re: Программирование STM8

Ср мар 15, 2023 09:23:36

достаточно было любой таймер в режиме ШИМ настроить со скважностью 50%.

Re: Программирование STM8

Чт апр 27, 2023 01:15:24

Пытаюсь разобраться с даташитами на STM8L152. И сразу возникает куча вопросов.
1. Если в параметрах LCD драйвера задать duty 2, будут ли доступны COM2 и COM3 в качестве GPIO?
2. Возможна ли работа ШИМ в Active Halt режиме (низкочастотный кварц включён)? Или нужно обязательно держать ядро запущенным? Использование BEEP не особо удобно.
3. Самое главное. Можно ли сделать, чтобы разбросанные по всему чипу пины (PC0, PC1, PA2, PA3, PA6, PD1, PF0, PF1) генерировали одно и то же внешнее прерывание, а не несколько различных? Нужно будить чип из active halt по нажатию кнопок, подвешенных на эти пины, а потом уже обрабатывать каждое нажатие. Собрать их в один порт не получится, нужно 36 (если не 38) сегментных линий на дисплей.

И вообще, кому-нибудь здесь приходилось делать устройства на этом чипе с ЖК дисплеем?

Re: Программирование STM8

Чт апр 27, 2023 01:25:34

1. Да.
2. Нет. Active-halt mode: In Active-halt mode, the main oscillator, the CPU and almost all peripherals are stopped.
Only oscillator or the LSE crystal is running to drive the SWIM, beeper, IWDG, RTC and LCD if enabled.
3. Никто не запрещает вектора прерываний направить на одну функцию.

И вообще да, многим приходилось, этим чипам сто лет в обед.

Добавлено after 51 second:
RM0031 Reference manual STM8L050J3, STM8L051F3, STM8L052C6, STM8L052R8 MCUs and STM8L151/L152, STM8L162, STM8AL31, STM8AL3L lines - это основной документ

Re: Программирование STM8

Чт апр 27, 2023 12:29:59

Нет. Active-halt mode: In Active-halt mode, the main oscillator, the CPU and almost all peripherals are stopped.
Only oscillator or the LSE crystal is running to drive the SWIM, beeper, IWDG, RTC and LCD if enabled.

Понятно, придётся делать как на AVR. Бипер не очень подходит, там программируемый делитель только на 5 бит, мне желательно как минимум 8 (а лучше 16).
3. Никто не запрещает вектора прерываний направить на одну функцию.

Тоже можно, лишь бы частые беспорядочные нажатия на кнопки не приводили к проблемам с прерываниями.

RM0031

Уже нашёл, пытаюсь разобраться. Похоже, эта машина на голову выше тех AVR :-D

Re: Программирование STM8

Сб апр 29, 2023 12:29:49

Кому-нибудь в последнее время удавалось зарегистрировать Cosmic? Похоже, что в связи с известными событиями они всё прикрыли. Или есть ломаная версия?

Re: Программирование STM8

Сб апр 29, 2023 13:10:35

я регистрировал. но меня достала мерзкая среда ST и поставил IAR. Отладчик у IAR в миллион раз лучше. После точки менюшка выпадает.

Re: Программирование STM8

Сб апр 29, 2023 13:14:14

Пытаюсь зарегистрировать через web (прямо в приложении) - просто ничего не происходит, через почту - никакого ответа нет. Насчёт IAR попробую, если найду правильный.

Re: Программирование STM8

Сб апр 29, 2023 13:18:30

Ответ через почту приходит иногда в течение пары дней. Через веб сбои бывают, это да. Правильный IAR на Сахаре точка нет

Re: Программирование STM8

Сб апр 29, 2023 13:25:05

Правильный IAR на Сахаре точка нет

Честно, не пойму, где это, кроме рутрекера ничем раньше не пользовался, а там только древний 1.4.0.
И ещё, возможно ли скомбинировать STVD-STVP + SDCC?
Ответить