Например TDA7294

Форум РадиоКот • Просмотр темы - Программирование STM8
Форум РадиоКот
Здесь можно немножко помяукать :)





Текущее время: Чт апр 18, 2024 23:33:14

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 2500 ]     ... , , , 71, , , ...  
Автор Сообщение
Не в сети
 Заголовок сообщения: Re: Программирование STM8
СообщениеДобавлено: Сб фев 18, 2017 00:44:53 
Первый раз сказал Мяу!
Аватар пользователя

Карма: 1
Рейтинг сообщений: 1
Зарегистрирован: Сб фев 06, 2016 14:26:07
Сообщений: 29
Рейтинг сообщения: 0
Код:
__halt()


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Программирование STM8
СообщениеДобавлено: Сб фев 18, 2017 17:32:24 
Первый раз сказал Мяу!

Карма: 1
Рейтинг сообщений: 2
Зарегистрирован: Вт ноя 02, 2010 20:21:53
Сообщений: 35
Рейтинг сообщения: 0
JustRom, спасибо. В иаре это asm("halt");. А как выйти из этого режима изменению уровня на ножке?
Я так понимаю для начала надо настроить прерывание: PA_CR2_bit.C23 =1;?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Программирование STM8
СообщениеДобавлено: Сб фев 18, 2017 17:39:11 
Собутыльник Кота
Аватар пользователя

Карма: 29
Рейтинг сообщений: 645
Зарегистрирован: Сб май 14, 2011 21:16:04
Сообщений: 2694
Откуда: г. Чайковский
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
Вот что написано про команду HALT в документе Programming manual.
Цитата:
The interrupt mask is reset, allowing interrupts to be fetched. Then the
oscillator is stopped thus stopping the CPU and all internal peripherals,
reducing the microcontroller to its lowest possible power consumption. The
microcontroller resumes program execution after an external interrupt or
reset, by restarting the oscillator,and then, fetching the corresponding
external interrupt, which is generally an I/O interrupt, or the reset vector.


Ser-B писал(а):
Я так понимаю для начала надо настроить прерывание: PA_CR2_bit.C23 =1;?
Кроме этого еще есть специальный регистр для внешних прерываний.

_________________
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.


Вернуться наверх
 
PCBWay - всего $5 за 10 печатных плат, первый заказ для новых клиентов БЕСПЛАТЕН

Сборка печатных плат от $30 + БЕСПЛАТНАЯ доставка по всему миру + трафарет

Онлайн просмотровщик Gerber-файлов от PCBWay + Услуги 3D печати
Не в сети
 Заголовок сообщения: Re: Программирование STM8
СообщениеДобавлено: Вт мар 21, 2017 06:42:59 
Друг Кота
Аватар пользователя

Карма: 51
Рейтинг сообщений: 513
Зарегистрирован: Вт дек 25, 2012 14:51:33
Сообщений: 3054
Откуда: Санкт-Петербург
Рейтинг сообщения: 6
Всем привет. Приперло мне тут на STM8L051F3 завести бибикалку. Погуглил примеры - все какая то лажа попадалась. Даже уважаемый DI HALT в своих уроках, об этом девайсе презрительно отозвался, и ничего не привел в пример. Поэтому пришлось как следовает вкурить RM0031, и вот что получилось (код в IAR 100% рабочий):
Цитата:
//----------
// Начальная инициализация бибикалки - без калибровки
// Нагрузка бибикалки высокоомная - вход операционника через RC цепь
// Поэтому на работу сигнала SWIM бибикалка не влияет
//----------
void beeper_init(void)
{
/*
// На работу бипера не влияет
PA_DDR_bit.DDR0 = 1; // 0-й пин порта A на выход
PA_CR1_bit.C10 = 1; // режим push-pull on
CPU_CFG_GCR_SWD = 1; // Отключаем SWIM
*/

// Включаем тактирование BEEP
CLK_PCKENR1_bit.PCKEN16 = 1;

// Выключаем LSI 38кгц
CLK_ICKCR_LSION = 0;

// Сброс предделителя beeper'a
BEEP_CSR2_bit.BEEPDIV = 0x1F;

// Выключить калибровочный таймер
BEEP_CSR1_bit.MSR = 0;

// Калибровочная константа
BEEP_CSR2_bit.BEEPDIV = 0x0F;
// Частота 1 кгц +-1км
BEEP_CSR2_bit.BEEPSEL = 0x00;

// Источник тактирования BEEP - LSI
CLK_CBEEPR_bit.CLKBEEPSEL0 = 1;
CLK_CBEEPR_bit.CLKBEEPSEL1 = 0;

// Включаем LSI 38кгц
CLK_ICKCR_LSION = 1;
SomeDelay(1000);
}

//----------
// Звуковой сигнал
//----------
void beep(long delay, unsigned char tone)
{
// Сохраняем значение по умолчанию
unsigned char st = BEEP_CSR2_bit.BEEPDIV;

// Изменяем тон звучания
BEEP_CSR2_bit.BEEPDIV = tone;

// Включаем сигнал
BEEP_CSR2_bit.BEEPEN = 1;

// Гудим-с
SomeDelay(delay);

// Выключаем сигнал
BEEP_CSR2_bit.BEEPEN = 0;

// Возвращаем тон по умолчанию
BEEP_CSR2_bit.BEEPDIV = st;
}
Буду рад, если кому-нить пригодится.

_________________
Processor not found. Loaded software emulation ......


Вернуться наверх
 
Выбираем схему BMS для заряда литий-железофосфатных (LiFePO4) аккумуляторов

Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: Программирование STM8
СообщениеДобавлено: Вт мар 21, 2017 22:55:40 
Друг Кота

Карма: 20
Рейтинг сообщений: 228
Зарегистрирован: Пт сен 13, 2013 13:11:31
Сообщений: 6388
Рейтинг сообщения: 0
К слову сказать, STML051F3 и STM151F3 -- это один и тот же камень на идентичном кристалле.


Вернуться наверх
 
Новый аккумулятор EVE серии PLM для GSM-трекеров, работающих в жёстких условиях (до -40°С)

Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре. Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: Программирование STM8
СообщениеДобавлено: Вс мар 26, 2017 21:06:57 
Вымогатель припоя
Аватар пользователя

Карма: -2
Рейтинг сообщений: -32
Зарегистрирован: Вс ноя 01, 2015 13:13:49
Сообщений: 616
Рейтинг сообщения: 3
На сайте СТМ появился STM8CubeMX.


Вернуться наверх
 
 Заголовок сообщения: Re: Программирование STM8
СообщениеДобавлено: Вт мар 28, 2017 22:12:30 
:shock: Бгыыы!!! :))) :))) :))) Щас начнётся... ждём кучу статей по его использованию :)))


Вернуться наверх
   
 
Не в сети
 Заголовок сообщения: Re: Программирование STM8
СообщениеДобавлено: Ср мар 29, 2017 06:54:19 
Друг Кота

Карма: 20
Рейтинг сообщений: 228
Зарегистрирован: Пт сен 13, 2013 13:11:31
Сообщений: 6388
Рейтинг сообщения: 1
В том виде, в каком он сейчас находится, использовать его можно весьма ограниченно. Я так и вовсе не придумал, какую пользу из этого можно извлечь.


Вернуться наверх
 
 Заголовок сообщения: Re: Программирование STM8
СообщениеДобавлено: Ср мар 29, 2017 08:08:03 
А с него польза вообще есть? Кроме разве что картинки с распиновкой периферии.


Вернуться наверх
   
 
Не в сети
 Заголовок сообщения: Re: Программирование STM8
СообщениеДобавлено: Ср апр 05, 2017 17:37:04 
Открыл глаза

Зарегистрирован: Пт сен 09, 2016 23:08:30
Сообщений: 76
Рейтинг сообщения: 0
Добрый день. Помогите пожалуйста, пытаюсь прошить stm8s103f3, но ничего не получается.
Программка примитивнейшая чтобы тупо зажечь светодиод, среда IAR 1.40.1, программатор st-link v2.

#include "stm8s.h"
int main() {
GPIOB->DDR |= (1<<5);
GPIOB->CR1 |= (1<<5);
GPIOB->CR2 |= (1<<5);
GPIOB->ODR |= (1<<5);
while (1) {
asm("nop");
}
}

Прошиваю ST visual programmer, пишет

< File successfully loaded. File Checksum 0x731B
> Programming PROGRAM MEMORY area...
Cut Version and Revision of device: 1.2
< PROGRAM MEMORY programming completed.
> Verifying PROGRAM MEMORY area...
Cut Version and Revision of device: 1.2
< PROGRAM MEMORY successfully verified.

Но ничего в итоге не работает, светодиод не зажигается. Read out protection запрограммировал в off. Поиск решения в гугле ничего не дал, в чем проблема?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Программирование STM8
СообщениеДобавлено: Ср апр 05, 2017 17:50:44 
Собутыльник Кота
Аватар пользователя

Карма: 29
Рейтинг сообщений: 645
Зарегистрирован: Сб май 14, 2011 21:16:04
Сообщений: 2694
Откуда: г. Чайковский
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
А светодиод то у Вас как подключен, катодом или анодом к порту? Сдается мне что анодом на плюс и катодом на порт, тогда GPIOB->ODR &= ~(1<<5); Это дефолтное значения для ODR.

_________________
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Программирование STM8
СообщениеДобавлено: Ср апр 05, 2017 18:00:31 
Открыл глаза

Зарегистрирован: Пт сен 09, 2016 23:08:30
Сообщений: 76
Рейтинг сообщения: 0
Попробовал, не помогло.
Даже если просто на пустой пин подаю "1", то на нем по-прежнему 0 вольт. Контроллер тупо не прошивается почему-то.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Программирование STM8
СообщениеДобавлено: Ср апр 05, 2017 18:10:46 
Собутыльник Кота
Аватар пользователя

Карма: 29
Рейтинг сообщений: 645
Зарегистрирован: Сб май 14, 2011 21:16:04
Сообщений: 2694
Откуда: г. Чайковский
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
С диодом то определились как включен?

Выполните по шагам программу и поглядите реальное состояние регистров порта, можно в референсе поглядеть их реальные адреса, не исключено что есть ошибки в файле описаний регистров.

В IAR есть вот такой файл #include "iostm8s103f3.h"

Код будет вроде такого:
Код:
       PB_DDR=MASK_PB_DDR_DDR5;
        //PB_ODR=MASK_PB_ODR_ODR5;
        PB_CR1=MASK_PB_CR1_C15;  //пушпул
        PB_CR2=MASK_PB_CR2_C25;  //10MHz


Добавлено after 1 minute 49 seconds:
Lww писал(а):
Даже если просто на пустой пин подаю "1", то на нем по-прежнему 0 вольт. Контроллер тупо не прошивается почему-то.
В смысле?

_________________
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Программирование STM8
СообщениеДобавлено: Ср апр 05, 2017 18:25:49 
Открыл глаза

Зарегистрирован: Пт сен 09, 2016 23:08:30
Сообщений: 76
Рейтинг сообщения: 0
Вроде бы анодом на порт.
Я не особо понимаю, но кажется не меняются.

Попробовал Ваш код с #include "iostm8s103f3.h", теперь в симуляторе байты порта меняются, но физический МК по-прежнему молчит.


Вложения:
цунц.png [20.03 KiB]
Скачиваний: 244
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Программирование STM8
СообщениеДобавлено: Ср апр 05, 2017 18:42:15 
Вымогатель припоя
Аватар пользователя

Карма: -2
Рейтинг сообщений: -32
Зарегистрирован: Вс ноя 01, 2015 13:13:49
Сообщений: 616
Рейтинг сообщения: 0
Lww писал(а):
МК по-прежнему молчит.

И правильно делает. Значит ещё не сгорел. Читать референс и даташит надо до, а не после.
Цитата:
In the open-drain output column, "T" defines a true open-drain I/O (P-buffer, weak pull-up, and protection diode to VDD are not implemented).

РВ5 - true open-drain I/O !!!!!!!!!!!!


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Программирование STM8
СообщениеДобавлено: Ср апр 05, 2017 19:20:10 
Открыл глаза

Зарегистрирован: Пт сен 09, 2016 23:08:30
Сообщений: 76
Рейтинг сообщения: 0
Перекинул на С5 - по прежнему не работает, 0 вольт на пине.

Добавлено after 27 minutes 6 seconds:
Вот чудеса. После нескольких перетыканий питания и ребута программатора оно все таки заработало. Правда странно как-то. Пока не переткнешь питание программа не заработает. В стм32 помогал обычный ресет кнопкой либо автоматически после прошивки, а тут нет.
Всем большое спасибо.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Программирование STM8
СообщениеДобавлено: Чт апр 06, 2017 08:52:45 
Опытный кот
Аватар пользователя

Карма: 16
Рейтинг сообщений: 166
Зарегистрирован: Вс дек 02, 2012 16:58:33
Сообщений: 826
Откуда: Уже не город Белых гор
Рейтинг сообщения: 1
Конденсатор 1 мкф подключён к ножке Vcap?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Программирование STM8
СообщениеДобавлено: Пн апр 10, 2017 14:27:38 
Нашел транзистор. Понюхал.
Аватар пользователя

Зарегистрирован: Пн янв 24, 2011 01:51:48
Сообщений: 197
Откуда: Украина, Киев
Рейтинг сообщения: 0
кому не сложно напишите простейший blink для STM8S003. светодиод на PA3, тактирование от внутреннего генератора. нужна не сама программа а hex файл прошивки.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Программирование STM8
СообщениеДобавлено: Пн апр 10, 2017 16:02:25 
Друг Кота
Аватар пользователя

Карма: 32
Рейтинг сообщений: 482
Зарегистрирован: Сб сен 10, 2011 17:46:25
Сообщений: 3832
Рейтинг сообщения: 1
RusikOk писал(а):
простейший blink для STM8S003. светодиод на PA3, тактирование от внутреннего генератора. hex файл прошивки.

->
Вложение:
Blink.zip [507 байт]
Скачиваний: 222


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Программирование STM8
СообщениеДобавлено: Пн апр 10, 2017 16:17:52 
Нашел транзистор. Понюхал.
Аватар пользователя

Зарегистрирован: Пн янв 24, 2011 01:51:48
Сообщений: 197
Откуда: Украина, Киев
Рейтинг сообщения: 0
oleg110592 писал(а):
RusikOk писал(а):
простейший blink для STM8S003. светодиод на PA3, тактирование от внутреннего генератора. hex файл прошивки.

->
Вложение:
Blink.zip

благодарю! но не моргает! а тактирование от внутреннего источника?


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 2500 ]     ... , , , 71, , , ...  

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 15


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y