Jump to content

Проблемы с STM8S903K3T6C


Recommended Posts

Здравствуйте! Решил я попробовать STM8. Ардуино программирую хорошо, а вот STM что-то новое. Приобрел этот мк, сделал отладочную плату сам. Фото приклеплю. Установил STVD, STVP, Cosmic C и SPL. Добавил src и inc файлы, которые этому мк можно засунуть. Те файлы на которые ругалось при компиляции я удалил, нет такой периферии у мк. Пробую сделать простую мигалку как блинк на ардуино. Вот мой код main.c

Спойлер

/* MAIN.C file
 * 
 * Copyright (c) 2002-2005 STMicroelectronics
 */
#include "STM8S.h"

main()
{
    GPIO_DeInit(GPIOB); // prepare Port B for working 
    GPIO_Init (GPIOB, GPIO_PIN_7, GPIO_MODE_OUT_PP_LOW_SLOW);
    GPIO_WriteHigh(GPIOB, GPIO_PIN_7);
    while (1);
}

Компилятор ругался на одну особенность. Сам не разобрался, в примерах в интернете нашел, что можно в файле stm8s_conf.h нужно закомментировать строку "#define USE_FULL_ASSERT    (1) ", так и сделал. В результате скомпилировалось все, прошил. Люди в интернете тоже так делали и работало. Но вот никакие мои светодиоды не мигают, ничего. Пробовал и другие выводы. Тоже ничего.Мерял мультиметром что там на выходе пина. То 0,2В, то 1,5В, то 2В, странно, микроконтроллер будто не работает.Что я делаю не так? В примерах и видео из интернета люди делают и у них все работает. Я за ними повторяю, ничего не работает. Пробовал разное делать, не помогло( У меня два таких мк, второму сделал минимальную обвязку, без светодиодов. Он себя так само ведет. :wall::wall::wall::wall::wall::help:

 

dev_board.jpg

sch.png

Link to comment
Share on other sites

1 час назад, mckay сказал:

Но вот никакие мои светодиоды не мигают, ничего

У SMD светодиодов обычно зелёный торец - анод. У Вас же они припаяны как будто развёрнутыми. GND к светодиодам точно приходит?

Link to comment
Share on other sites

MORNSUN – это не только модули. Собственные микросхемы известного производителя ИП
Производитель популярных модулей электропитания MORNSUN помимо них предлагает также микросхемы ШИМ-контроллеров для AC/DC и DC/DC, микросхемы запуска (стартеры) для этих ШИМ-контроллеров, драйверы интерфейсов RS-485 и CAN и микросхемы изоляторов для гальванической развязки интерфейсов и цифровых сигнальных линий. В некоторых случаях эти изделия превосходят по характеристикам изделия европейских и американских производителей.

Читать статью >>
 

2 часа назад, mckay сказал:

STVD, STVP, Cosmic C и SPL

Установите IAR и избавьтесь от SPL. После этого сразу же все заработает. А еще научитесь пользоваться отладчиком и даташитом, тогда сразу будет видно где и что настроено неправильно.

Link to comment
Share on other sites

Приглашаем на вебинар «Актуальные вопросы о продукции и планах MEAN WELL в России»(13/10/2022)

Приглашаем 13 октября всех желающих присоединиться к вебинару, который будет проводить компания КОМПЭЛ совместно с представителями бренда MEAN WELL. 

Вебинар будет посвящен новинкам продукции, планам MEAN WELL на следующий год, аналогам продукции ушедших из РФ брендов, особенностям работы в текущих условиях, возможностях субдистрибьюции и другим вопросам. Мероприятие пройдет в формате живого диалога.  Подробнее>>

2 часа назад, DedLogoped сказал:

У SMD светодиодов обычно зелёный торец - анод. 

Первый раз про такое слышу.
Обычно - как раз катод (-).

Link to comment
Share on other sites

Литиевые батарейки FANSO EVE Energy для потребительской электроники
В электронных устройствах потребительского сегмента широко применяются различные литиевые батарейки. Наиболее востребованными являются дисковые и цилиндрические элементы питания, а также батареи типа «Крона». Практически любой подобный источник тока можно найти в номенклатуре компании FANSO EVE Energy.

Читать подробнее>>

@_abk_ и @LiVit, поверьте на слово - у меня светодиоды 0805, одни куплены на алиэкспресс, два других цвета куплены на Митинском, у всех зелёная полоска - анод!

Ниже попытался сфоткать пруф, неудобной одной рукой щупами тыкать, а другой телефоном щёлкать:

 

Спойлер

IMG_20220804_131102.thumb.jpg.abb4d61a59141298c624629c217c3535.jpgIMG_20220804_131107.thumb.jpg.8477d602acac917fc43029fc9f3a4ce3.jpg

 

Link to comment
Share on other sites

На макетке земля светодиодов висит на земле конденсаторов с кварца? Если да, то так лучше не делать, перережте дорогу и заземлите в другом месте.

Link to comment
Share on other sites

Значит верить никому нельзя) Припоминаю что то подобное мне попадалось с полоской у анода. 

Link to comment
Share on other sites

1 час назад, DedLogoped сказал:

@_abk_ и @LiVit, поверьте на слово - у меня светодиоды 0805, одни куплены на алиэкспресс, два других цвета куплены на Митинском, у всех зелёная полоска - анод!

Стоп-стоп-стоп, уважаемый!
Вы путаете мягкое с тёплым.
Полоска на торце указывает минус.
А у вас на фотке полоска снизу. Если видим "Т" снизу, то надо смотреть даташит, но скорее всего "пипка" показывает на минус.
На фотке ТС-а вы не можете видеть низ, только торец.
Да и странно это - ориентироваться по знакам снизу светодиода, которые после монтажа просто так не увидишь.

На моей фотке - два одинаковых светодиода, катод у обоих слева.

image.png.a35e569f8f7f531d7a85d0f043ddecb0.png

Был у нас случай, монтажник напаял светодиодов, ориентируясь по знакам снизу... Перепаивал.

Edited by LiVit
Link to comment
Share on other sites

6 часов назад, DedLogoped сказал:

GND к светодиодам точно приходит?

Так я правильно светодиоды запаял. Мультиметром прозвонил, Зелёная полоска с верху должны быть к минусу.

6 часов назад, BARS_ сказал:

Установите IAR и избавьтесь от SPL

IAR может и установлю сегодня. А вот почему избавиться от SPL? Программировать на уровне регистров?

6 часов назад, _abk_ сказал:

Конденсаторы точно 12 пФ?

Маркировка на конденсаторах 120, должно быть 12 пФ, но перед запайкой не измерял. Второй чип я пытался запустить без кварца и конденсаторов, ведет себя так же. Та и тактирование я не настраивал, в примерах из интернета работало без него. А такое чувство, будто мк не запустился просто. На портах какой-то бардак, нет лог 0 или лог 1, плавает туда сюда. 

Вот тут только питание подключил (конденсатора нет), swim, vcap 1uF и reset через 10К на плюс питания. Прошивается, Но ведёт себя так же как и первый. Поставил лог 1 на выводе, а там каша.

IMG_20220804_151434.jpg

Link to comment
Share on other sites

3 минуты назад, mckay сказал:

А вот почему избавиться от SPL?

Глючно, тормознуто, плохо отслеживаемо под отладкой, плохо проверяемо по даташиту.

 

3 минуты назад, mckay сказал:

Программировать на уровне регистров?

Именно так. Настройки у STM элементарные, буквально несколько строк кода.

Например, пот настройка выводов порта и управление ими.

GPIOC->DDR |= 1<<3 | 1<<4;
GPIOC->CR1 |= 1<<3 | 1<<4;

#define OUT1_H GPIOC->ODR |= 1<<3
#define OUT2_H GPIOC->ODR |= 1<<4

#define OUT1_L GPIOC->ODR &= ~(1<<3)
#define OUT2_L GPIOC->ODR &= ~(1<<4)

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

image.png.ee83d7d6e7eb5551e5cadd9784768cad.png

Как видите, все очень просто. Причем даташит у STM очень понятный, наверное лучший, среди МК. А что там ваши SPL понастраивали - вообще неочевидно.

 

4 минуты назад, mckay сказал:

А такое чувство, будто мк не запустился просто.

Что при этом говорит отладчик?

 

4 минуты назад, mckay сказал:

На портах какой-то бардак, нет лог 0 или лог 1, плавает туда сюда. 

Это называется Z-state.

 

P.S.

Кстати, питается МК через стабилизатор на 3,3В. Этот самый стабилизатор, случайно, не с али заказан?

Link to comment
Share on other sites

44 минуты назад, LiVit сказал:

Полоска на торце указывает минус.
А у вас на фотке полоска снизу

Возможно, спорить не буду. Не сталкивался со светодиодами с маркировкой торца.

26 минут назад, mckay сказал:

Так я правильно светодиоды запаял. Мультиметром прозвонил

Значит мои подозрения отпадают :)

Link to comment
Share on other sites

1 час назад, BARS_ сказал:

Кстати, питается МК через стабилизатор на 3,3В. Этот самый стабилизатор, случайно, не с али заказан?

СТабилизаторы да с али, но очень хорошо себя показали уже в нескольких других устройствах (один и тот же заказ), кристал я не вскрывал не смотрел. Но питание по другому сейчас. Я взял с программатора 3,3В, на разъем программирования, который на плате сделал. Это напряжение идет на VDD микроконтроллера. А еще получается, что оно из разъема идет на выход 3,3В стабилизатора. Может плохо сделал, но получается что можно и 3,3В питать от разъема программирования и когда от микро юсб, будет 3,3В на мк подаваться (и на контакте раъема программирования будет дополнительный контакт 3,3В).

Я тут что подумал, была у меня проблема с мк ESP8266, когда я брал напряжение 3,3В напрямую со стабилизатора. Там стабилизатор был крошечный и все писали что он не справляется, поэтому я брал 5В напрямую и понижал до 3,3В тем же стабилизатором из китая. Это я к чему. Может попробовать на программаторе взять 5В, но подать его через стабилизатор, чтобы было 3,3В? Но вообще этот МК и от 5В может.

1 час назад, BARS_ сказал:

Что при этом говорит отладчик?

Еще не делал отладку. Я только вчера сел программировать. В интернете то все просто, а когда сам начинаешь делать, то оказывается что не все так просто как ты думал

Link to comment
Share on other sites

@vavaav Статья хорошая, только компилятор другой, среда разработки другая, надеюсь разберусь. Жду продолжения! Когда продолжение?) И какая программа будет? Может блинк как на ардуино?) Стандартно и банально, но как тут еще легким способом понять, что твоя программа работает и с микроконтроллером все в порядке

Link to comment
Share on other sites

@mckay Блинк будет в нескольких вариациях для сравнения. Отладчик будет, можно будет посмотреть как отрабатывает программа. Вот чего небудет так это ардуино, только C

Edited by vavaav
Link to comment
Share on other sites

15 часов назад, mckay сказал:

СТабилизаторы да с али, но очень хорошо себя показали уже в нескольких других устройствах

Значит повезло, у меня ода партия выдавала на выходе пилу и МК работать что-то не хотел:D

 

15 часов назад, mckay сказал:

Может попробовать на программаторе взять 5В, но подать его через стабилизатор, чтобы было 3,3В?

Да если 3,3В стабильные, то можно их и оставить. Кстати, на С8 напряжение появляется?

 

15 часов назад, mckay сказал:

Еще не делал отладку.

А с нее как раз и надо начать. В отличии от ардуйни тут не требуется сидеть и пол дня думать, почему что-то не работает. Можно залезть "в душу" к МК и все увидеть. А если написать вот это, то должны засветиться все 4 диода:

// Настройка портов
GPIOB->DDR |= 1<<7 | 1<<6;
GPIOB->CR1 |= 1<<7 | 1<<6;

GPIOC->DDR |= 1<<1;
GPIOC->CR1 |= 1<<1;

GPIOE->DDR |= 1<<5;
GPIOE->CR1 |= 1<<5;

// Выходы в высокое состояние
GPIOB->ODR |= 1<<7 | 1<<6;
GPIOC->ODR |= 1<<1;
GPIOE->ODR |= 1<<5;

 

Link to comment
Share on other sites

9 часов назад, _abk_ сказал:

Стесняюсь спросить: а программа в МК точно залита? Что-то ни слова об этом не было...

Да, была запрограммирована. Через STVP программировал:
 

> 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.

 

7 часов назад, BARS_ сказал:

Значит повезло, у меня ода партия выдавала на выходе пилу и МК работать что-то не хотел:D

Думаю, если я сейчас закажу новые такие, то придут плохие) А я вот не проверял что у моих на выходе, осцилограф меня покинул, ну работают нормально, некоторые даже случайные КЗ выдерживали, грелись но не умирали, потом нормально дальше работали, но я их заменял, мало ли...

7 часов назад, BARS_ сказал:

А если написать вот это, то должны засветиться все 4 диода:

Мне немного сложно с этим( Я все делал как в интернете написано (всему этому в интернете верить нельзя), там человек показывает у него работает, а у меня не работает. Один добрый человек мне сейчас помогает, но что-то у меня не выходит. Может с микроконтроллером что-то не так) Плату я сделал плохую, но попытался ее сделать лучше, питание нормальное, программируется. А вот моя программа что-то не заставляет его работать как я напрограммировал. Может у меня в коде или проекте или еще где-то ошибки, не знаю. STVD говорит 0 ошибок, 0 варнингов

Link to comment
Share on other sites

1 час назад, mckay сказал:

Может с микроконтроллером что-то не так)

Для исключения этого варианта и предназначены самые простые программы, типа помигать светодиодиком. Они позволяют проверить базу: исправность микросхемы и работоспособность программатора.

Хм, вы и пытаетесь помигать им, оказывается. Только странно пытаетесь.

1 час назад, mckay сказал:

Может у меня в коде или проекте или еще где-то ошибки, не знаю. STVD говорит 0 ошибок, 0 варнингов

Отладка - это процесс осознания программистом того, что программа работает именно так, как он написал.

Edited by Огонёк
Link to comment
Share on other sites

Join the conversation

You are posting as a guest. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.

  • Сообщения

    • да бес разницы. для 0,4киловара опухнешь 1206 байянить))) тем боле, что площадь поверхности как была 1206 так и осталась. путь палочно-фекальных технологий ведет к неминучей бабовне. у cbb-61/81 киловар немеряно по сравненью с smd-хламом 1206 и ценник соотвесвено или wima mkp_10. но дело хозяйское... 
    • Загадочная фраза. Что значит "обойти"? Куда "подать напряжение +15 с 12 - 14 выводов" (между этими точками трансформатора вообще импульсное напряжение)? Где вы обрываете, где замыкаете? Ну а не разбираясь, что там вы куда пеподключаете, естественный вопрос: Вы исправность Q7 и Q11, С56, С11 и всех резисторов обвески этого каскада задержки подачи напряжения на нагрузку проверили?
    • BoosterRing v4.2 Для сходных параметров: Uвх=12В, Uвых=28В, Iвых=0.3A, f=125kHz, размах пульсаций тока в дросселе 100% (это ведь соответствует граничному режиму?) выходит Lmin в 2 раза больше, если сравнивать с онлайн калькуляторами для 34063: https://radio-hobby.org/modules/calculation/mc34063 https://www.gmsystems.com/switching-reg-calculator-for-mc-34063-or-mc33063.html https://bsvi.ru/dc-dc-na-mc34063/ Где результат более правильный? Есть ли возможность вручную указать число проводов в обмотке? Парочка предложений: 1. Пыржик "Использовать желаемый диаметр провода" было бы лучше поставить слева от "Диаметр провода". Если он не проставлен - просто затенять поле ввода. 2. Окошко "Внимание. Расчеты прерваны." Если перемещаться курсором вверх-вниз в списке сердечников, то нужно лишний раз жать Enter на каждое предупреждение. Было бы удобнее вынести текст предупреждения в основное окно программы. Есть ошибка - появился красный текст. Нет ошибки - поле пустое.  
    • Во-первых, это лютый колхоз, пыхнет в любой момент (вот честно, руки бы оторвать. Без обид.). Во-вторых, эта понижайка 100% дает конские пульсации. Ну и в-третьих, вы сами написали, что от сетевого БП работает нормально. Выводы напрашиваются сами собой.
    • Да нормально, у меня типа такого в машине собран, только я от него смарт заряжаю, а так ГУ с андроидом стоит и ЯН на нём.))
    • http://openprog.altervista.org/OP_eng.html вот программатор много поддерживаемых мк и памяти usb интерфейс .пробуйте .
    • У меня есть регистратор. Так вот, собрал в одну коробочку бп(в прикуриватель) от регика и свой на базе понижающей платы для навика. Что не так?  
×
×
  • Create New...