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

Если ваш вопрос не влез ни в одну из вышеперечисленных тем, вам сюда.
axillent
Электрический кот
Сообщения: 1040
Зарегистрирован: Вс сен 25, 2011 19:09:33

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

Сообщение axillent »

Автозаполнение по структурас у меня заработало
А можно как то сделать автозаполнение в более широком смысле?
Например как в атмелстудио или эклипсе где заполнение предлогается и по именам функций, по их аргументам и еще много по чему. Достаточно вставить include и предлагается заполнение по все описаниям из хидера даже по макросам и #define

Видимо придется попробовать и так и так (spl и iar) и для себя решить

Почему в spl нельзя stm8s.h поместить в общую папку (не в проект) и включать из любого проекта?
Привык так делать в атмеле, используя скобки <>
Странно, что этот хидер надо править под МК, почему не применены #if #else?
Аватара пользователя
oleg110592
Друг Кота
Сообщения: 3832
Зарегистрирован: Сб сен 10, 2011 17:46:25

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

Сообщение oleg110592 »

GARMIN писал(а):Почему в spl нельзя stm8s.h поместить в общую папку (не в проект) и включать из любого проекта?

да как угодно можно. Править ничего не нужно.
В IAR убогонький редактор, имхо лучше использовать внешний. Использую Sublime text. Sublime text можно превратить в полноценную IDE даже с отладкой GDB. Читал на ELECTRONIX.ru IAR компилятор смогли прикрутить к хорошему редактору (не помню какому). В Sublime text могу компилировать SDCC для STM8 для PIC, GCC AVR, GCC ARM. Отладку GDB пробовал для STM32 - зависло, надо разбираться, лень.
a5021
Друг Кота
Сообщения: 6452
Зарегистрирован: Пт сен 13, 2013 13:11:31

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

Сообщение a5021 »

oleg110592 писал(а):а если использовать не IAR, а например SDCC для STM8, тоже использовать хидер от IAR?

Если у меня будет возможность пользоваться IAR-ом, то мне не зачем смотреть в сторону SDCC и прочих космиков. Если у меня не будет такой возможности, то я прекрасно знаю, как пишется код в стиле ST. Вопрос изначально стоял насчет того, как проще подступиться к изучению программирования под STM8S, а не как с разбегу написать код с максимальной возможностью переносимости на разные платформы. Можно до бесконечности спорить сравнивая иар с другими средами разработки, подчеркивая его сильные или слабые стороны, но по моему глубочайшему убеждению, самым простым и ясным способом начать писать код под STM8 будет использование IAR-а с иаровскими же библиотеками. В прошлый раз я уже показал, почему я думаю именно так. Компактная, простая и наглядная запись кода это первое, что нужно при изучении. Разобравшись с платформой на простом, проще браться за сложное, чем сразу начинать со сложного. По моему, это самоочевидная вещь.

В IAR хидерах почему то до сих пор брешь в векторах

Все там уже на месте. Я уж не помню, когда они это поправили, но в нынешней 2.10 вся таблица правильная.

Забавно что в примерах IAR присутствует #include "stm8s.h".

Я не слышал, чтобы IAR-ы прокляли stm8s.h.

TIM4_CR1_OPM = 1;, а если написать TIM4_CR1_OPM = 100500; что будет?

будет вот такое:

Warning[Pe069]: integer conversion resulted in truncation
Warning[Pa124]: constant value outside range of bit field


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

А STM32 и STM8 выглядит как именно установка бита: TIM4->CR1 |= TIM_CR1_OPM; - имхо нагляднее и переносимо в добавок

Может вследствие утомления подобной наглядностью и начинаются примеры с установкой бита значениями навроде 100500 ? И забудьте вы про переносимость кода на этапе изучения. Код между разными версиями библиотек в рамках одного устройства у ST может оказаться непереносим. Это уж не говоря, как случае упомянутого вами STM32, разыгралась драма, когда столь долго пестуемый переносимый код под SPL внезапно оказался совершенно непереносимым на HAL.

GARMIN писал(а):А я добавлю, что со структурами гораздо проще конфигурировать регистры. Это получается в одну команду вместо побитовой установки.

Этот способ без всяких затруднений реализуем и на иаровских хедерах. В определениях есть маски для всех действующих битов. Только это хорошо выглядит в секции инициализации, но если мне по ходу пьесы надо менять содержимое регистров, то смысл тягать такие портянки начинает теряться. Зато битовые поля -- самое то.
Аватара пользователя
oleg110592
Друг Кота
Сообщения: 3832
Зарегистрирован: Сб сен 10, 2011 17:46:25

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

Сообщение oleg110592 »

a5021 писал(а):Если у меня будет возможность пользоваться IAR-ом

Осмелюсь спросить иар вами куплен, лично? Чему нас учит семья и школа?
IAR 2.10.3 вектора смотрел для STM8S003, файл iostm8s003f3.h - тоже самое у.г.:
/*----------
* Interrupt vector numbers
*----------*/
#define AWU_vector 0x03
#define SPI_TXE_vector 0x0C
#define SPI_RXNE_vector 0x0C

Из stm8, считаю, имеет смысл использовать STM8S003F3P6 из за низкой цены, остальные потребности легко перекрывают, в том числе, и по цене STM32. Лучше уж сразу писать переносимый код. Иаровская запись совершенно не наглядная, стмовская удобнее и нагляднее. Это мое имхо и в этой теме не только мое.
a5021 писал(а):Может вследствие утомления подобной наглядностью и начинаются примеры с установкой бита значениями навроде 100500 ?

утомляет лишь только тех, кто использует такие конструкции - начинающий может и так написать: TIM4_CR1_OPM |= 1;. Интересно будет варнинг, ошибка или проскочит, раз уж 100500 с варнингами проскочило (какой начинающий на варнинги смотрит)? Ведь если спросить у гуголя "как в си установить бит", то в ответах обязательно будет присутствовать оператор "|" побитовое ИЛИ (or).
В TIM4_CR1_OPM присутствует и название и регистра и бита - так регистр это или бит может спросить себя начинающий. Лучше б уж типа так: BIT_OPM_REG_TIM4_CR1 - бит OPM регистра TIM4_CR1. :shock:
a5021 писал(а):Код между разными версиями библиотек в рамках одного устройства у ST может оказаться непереносим

SPL и HAL для STM8 и STM32 можно абсолютно не использовать и все у вас получится и все будет переносимо - достаточно только хидера от производителя для успеха :)
a5021 писал(а):Я не слышал, чтобы IAR-ы прокляли stm8s.h.

а зачем в примерах используют, если свой есть?
a5021
Друг Кота
Сообщения: 6452
Зарегистрирован: Пт сен 13, 2013 13:11:31

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

Сообщение a5021 »

oleg110592 писал(а):Осмелюсь спросить иар вами куплен, лично? Чему нас учит семья и школа?

Требуйте уже справку об отсутствии судимости, если больше поговорить не о чем. Еще расскажите, почему вариант с evaluation-версией вы даже не вспоминаете?

IAR 2.10.3 вектора смотрел для STM8S003, файл iostm8s003f3.h - тоже самое у.г.:

Понятия не имею, куда вы там смотрите, но на самом деле все выглядит так:

>dir iostm8s003f3.h
[...]
31.03.2015 14:35 130 991 iostm8s003f3.h
[...]

>type iostm8s003f3.h
[...]

/*----------
* Interrupt vector numbers
*----------*/
#define AWU_vector 0x03
#define CLK_CSS_vector 0x04
#define CLK_SWITCH_vector 0x04
#define EXTI0_vector 0x05
#define EXTI1_vector 0x06
#define EXTI2_vector 0x07
#define EXTI3_vector 0x08
#define EXTI4_vector 0x09
#define SPI_WKUP_vector 0x0C
#define SPI_RXNE_vector 0x0C
#define SPI_CRCERR_vector 0x0C
#define SPI_MODF_vector 0x0C

Из stm8, считаю, имеет смысл использовать STM8S003F3P6 из за низкой цены, остальные потребности легко перекрывают, в том числе, и по цене STM32.

Я тоже большей частью так считаю, но с оговорками. Иногда может оказаться, что пятивольтовые МК лучше соответствуют условиям задачи и/или эксплуатации. Временами у меня возникает мысль, что стм8 совершенно незаслуженно обделен вниманием разработчиков, т.к. кроме 8S есть еще и 8L, которые тоже могут во многих местах смотреться не плохо. Я пользую и те и другие и третьи, и считаю, что хорошо, когда есть из чего выбирать. AVR-ами, кстати, тоже иной раз совершенно не брезгую.

Лучше уж сразу писать переносимый код.

Да что вы заладили? Миф это. Нет никакого переносимого кода. У STM32 разные семейства имеют одинаковую периферию, которая инициализируется по разному. Вы с одного STM32 на другой STM32 умахаетесь код переносить, но вот для STM8 нужно писать прежде всего во имя переносимости и никак иначе? Ну давайте я сейчас напишу этот ваш псевдо-переносимый пример для stm8s003 в простейшем виде, а вы перенесете его на stm32f030. Посмотрим, там хоть одна строка кода будет совпадать, когда оно заработает в перенесенном виде.

Иаровская запись совершенно не наглядная, стмовская удобнее и нагляднее. Это мое имхо и в этой теме не только мое.

Я вам пример с компактной и наглядной записью привел. Весь остальной субъективизм к делу не пришьешь.

a5021 писал(а):(какой начинающий на варнинги смотрит)?

Возражение ни о чем. Какой-то, может, и смотрит, а какой-то нет. Или вы их всех поименно знаете?

SPL и HAL для STM8 и STM32 можно абсолютно не использовать и все у вас получится и все будет переносимо :)

Что переносимо? Там ни один бит в регистрах может не совпадать. Что вы с этой переносимостью, как с иконой? Править, один хрен, придется столько, что на этом фоне будет совершенно все равно, как там манипуляции с битами выглядели изначально. Нет никакой переносимости. Забудьте.
Аватара пользователя
oleg110592
Друг Кота
Сообщения: 3832
Зарегистрирован: Сб сен 10, 2011 17:46:25

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

Сообщение oleg110592 »

a5021 писал(а):Еще расскажите, почему вариант с evaluation-версией вы даже не вспоминаете?

вспоминаете
no power debug functionality

зачем он такой начинающему?
a5021 писал(а):Вы с одного STM32 на другой STM32 умахаетесь код переносить

Мы живем в разный измерениях - у меня нормально переносится - порты, таймеры, часы и много чего прочего практически одинаково настраивается, а для STM8 все очень похоже, только упрощено. Конечно просто копипаст не получится (например у STM32f030 периферии поменьше), но правки минимальны.
цитата с этого форума (не моя):
Есть железозависимый код... и есть железонезависимый код... Железозависимый код - да, требует корректировки... железонезависимый код - как правило полностью переносим на любую платформу... с небольшими правками или без оных... что в условиях АСМа просто неосуществимо...
Вот поэтому... в последнее время юзаю только STM8 и STM32... уровень переносимости кода STM8 <--> STM32 очень высок, даже с учётом железа... к тому же... отпадает весь унылый зоопарк ПИК/АВР... за ненадобностью...
Перенос и адаптация кода это повседневка... независимо... АРМ/неАРМ...
Для успешного переноса просто нужно понимать суть происходящего... что прога делала и как... Без этого - что перенос, что написание нового сводится к тыканию наугад... что и приводит к печальному результату...

Почитайте на досуге AN2945 Application note STM8S and STM32™ MCUs: a consistent 8/32-bit product line for painless migration (для безболезненного перехода). Оттуда например:
Изображение
p/s/ Хидера нормального в иаре тоже не нашел (точно измерения разные). В какой папке иара находится правильный хидер? Искал в папке c:\Program Files (x86)\IAR Systems\Embedded Workbench 7.0_STM8\stm8\inc\
Изображение
a5021 писал(а):кроме 8S есть еще и 8L

недавно сравнивал (нужна для одного проектика дешевая 20 ножка с получше ацп, дма желательно):
STM8L051F3P6 Микроконтроллер серии STM8L
Микроконтроллер - [TSSOP-20]: Ядро: STM8, 8-бит: FLASH: 8 КБайт: EEPROM: 256 Байт: RAM: 1 КБайт: 2 таймера 16 бит, АЦПканалов: 10: АЦПразр: 12

STM32F030F4P6 Микроконтроллер серии STM32F0
48 МГц, 16 Кбайт Flash, 4 Кбайта SRAM, 4 таймера 16 бит, 11 каналов 12-битного АЦП, по 1 интерфейсу SPI, I2C и USART

цена почти одинакова (у нас), выбор очевиден
a5021
Друг Кота
Сообщения: 6452
Зарегистрирован: Пт сен 13, 2013 13:11:31

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

Сообщение a5021 »

oleg110592 писал(а):no power debug functionality
зачем он такой начинающему?

Как-то вы все реже и реже попадаете в ноты. Прочтите уже, что такое power debug и уясните, что отладка режимов энергосбережения начинающему нужна еще меньше, чем переносимость между платформами.

Мы живем в разный измерениях - у меня нормально переносится - порты, таймеры, часы и много чего прочего практически одинаково настраивается, а для STM8 все очень похоже, только упрощено.

Что-то я не хочу в ваше измерение. У вас там мистические события происходят. Только не смотря на описываемые вами чудеса, в реальной жизни не переносится код, скажем, с f100 на f030 без серьезной правки. Хоть часы, хоть таймеры с АЦП. Разная там периферия. Совсем разная. STM-ы не сумев в SPL-е, теперь в HAL-е начали городить абстракцию, чтобы уйти от аппаратных различий. Только теперь получается еще хуже. Говорить о переносимости с stm8 на stm32 вообще не серьезно. Плохо все у вас там в вашем измерении.

Есть железозависимый код... и есть железонезависимый код... Железозависимый код - да, требует корректировки... железонезависимый код - как правило полностью переносим на любую платформу... с небольшими правками или без оных... что в условиях АСМа просто неосуществимо...

Речь про АСМ vs С. Здесь-то оно каким боком к нашему разговору? Тем более, что тут же и написано, что код работы с железом все равно править.

Вот поэтому... в последнее время юзаю только STM8 и STM32... уровень переносимости кода STM8 <--> STM32 очень высок, даже с учётом железа.

И чего тут удивительного? Я куски кода дергаю не только между этими двумя упомянутыми, бывает и в какой-нибудь CoveVisionAVR затащу или вообще в Arduino IDE. Заимствования из ардуиновских библиотек часто идут в обратном направлении. Только это не переносимость, а, скорее, портирование. Всю работу с железом, один фиг, писать отдельно.

Почитайте на досуге AN2945 Application note STM8S and STM32™ MCUs: a consistent 8/32-bit product line for painless migration (для безболезненного перехода).

Зачем эти заметки шестилетней давности? STM-ы похоже забросили свою SPL чтобы через HAL попробовать как-то сгладить несовместимость внутри старшего (STM32) семейство, а вы мне подбрасываете тут какие-то древние агитки про то, как замечательно похожи stm8 и stm32. Мне то все равно, я знаю, что кроме, как на картинках, такое сходство больше нигде и не просматривается, но вас же и новички тут читать будут, которым вы толкаете откровенную дезу. Да, какая-то периферия работает схожим образом, да некоторые регистры называются похоже. Но одним и тем же кодом даже ногами подрыгать не получится, если взять код одного и запустить на другом. Из всей этой переносимости маркетинговая шелуха сыплется, как из худого мешка.

p/s/ Хидера нормального в иаре тоже не нашел (точно измерения разные). В какой папке иара находится правильный хидер? Искал в папке c:\Program Files (x86)\IAR Systems\Embedded Workbench 7.0_STM8\stm8\inc\

Там и находится. Сравнивайте дату, размер. Разбирайтесь. Я не знаю, почему у вас старый файл оказался на месте новых библиотек.

недавно сравнивал (нужна для одного проектика дешевая 20 ножка с получше ацп, дма желательно

Тут кто-то говорил, что STM8 это всегда лучше, чем что-бы то ни было? В описанных вами условиях даже выбора никакого нет. Но стоит тут добавить требования по максимальному времени работы от батарей, как весь лоск STM32F0 ощутимо потускнеет. Разные задачи бывают. В одних может одно семейство блеснуть, в других другое. И ваш пример это не более, чем иллюстрация частного случая.
axillent
Электрический кот
Сообщения: 1040
Зарегистрирован: Вс сен 25, 2011 19:09:33

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

Сообщение axillent »

возникла у меня идея для пробы сделать простой проектик для чпу станка
суть такая - станок на выход контроллера перед заменой инструмента выдает импульсы количеством соотвествующим номеру инструмента (в общем случае от 1 до 254)
МК получив первй импульс по прерыванию переходит в режим счета в переменную типа volatile до тех пор пока не возникнет длительная пауза
Тогда МК фиксирует (копирует в другую переменную) полученное число и выдает его в динамическом отображении на три цифры семисегментного индикатора
Соотвественно кроме прерывания по входу нужен будет еще обработчик прерываний таймера для индикатора
генератор встроенный
нужны 7+3+1 пинов (7 сегментов, три цифры, один вход)
вроде stm8s103f3p6 отлично подходит под задачу

нет ли у кого примера проекта с исходниками плюс-минус похожий?
чтобы не совсем с нуля разбираться с STM8
все таки парадигма у него заметно отличается от AVR
на AVR бы такую задачу сходу написал

п.с. по цене изучал вопрос, мне тоже показалось, что stm8s выигрывает у STM32F0 только в 20-ти ногих корпусах до 8К, выше по цене сравниваются
a5021
Друг Кота
Сообщения: 6452
Зарегистрирован: Пт сен 13, 2013 13:11:31

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

Сообщение a5021 »

Самое близкое, что может иметь что-то общее с вашей задумкой и что есть у меня для stm8s103f3 -- это дисплей на семисегментных индикаторах. Мне как-то больше года назад потребовался трехразрядный семисегментный дисплей с I2C интерфейсом, каковой и был по-быстрому сделан на stm8s103f3. После того, как он отработал в соответствии с задумкой при наладке другой самоделки, он оказался не нужен и просто валялся в куче всяких других электронных полуфабрикатов, сделанных мной для тех или иных целей и большей частью не используемых. В конце прошлого лета он мне как-то попался в очередной раз на глаза и мне подумалось, что совсем зря, что этот индикатор валяется без дела и я решил сделать из него комнатный термометр. С прицелом, что, как i2c индикатор он мне еще может пригодиться, через директивы условной компиляции к исходникам был прицеплен еще и код для работы с 1-wire и ds18b20. Получилось довольно странное устройство с малообъяснимым сочетанием выполняемых функций, если не знать истории его создания. Чтобы меня сходу не обвинили в сумасшествии, я вынужден описать всю историю подробно. :)

Устройство умеет:

- принимать данные на заданный i2c адрес, трактуя их по предопределенной логике, как команды или данные;
- выводить полученный двоичных код в виде цифр на индикатор;
- зажигать по команде любые сегменты в произвольных комбинациях;
- управлять яркостью свечения каждого разряда отдельно;
- мигать цифрами и точкам по команде в нужных сочетаниях;
- выводить на пин динамика звуковой сигнал требуемой длительности и тональности;
- мониторить пин кнопки, чистить его от дребезга (т.к. вместо кнопки обычно была отвертка замыкающая контакты) и считать нажатия (используется для смены собственного i2c адреса устройства);
- что-то там еще было, но уже не вспомню.

Если при включении девайс не видит сигнала на шине i2c, то пробует обнаружить устройства 1-wire. Если находит, то включается в режим термометра, если нет, то ждет нажатия кнопки. Если и этого не происходит, то встает в ожидание чего-нибудь из вышеперечисленного.. Все изменения настроек (адрес, якркость, положение десятичной точки и всякая другая ерунда) сохраняются во внутренней энергонезависимой памяти и при последующих включениях используются для начальной инициализации.

От этого устройства есть схема, исходный код и есть чертеж разведенной платы. Схема и плата в протеусе (найти бы только их еще), код в иаре. Весь код самописный, без использования библиотек, только на иаровских заголовках. Код крайне небрежный, т.к. писалось это очень быстро и без всякой мысли когда-либо выставлять его на обозрение. Код не самый простой и без знания всей логики управления понять его может оказаться сложно. Комментарии крайне скупые.

Ноги у МК используются так:

Код: Выделить всё

/*
PA1     --      Pin 5           ----  (External Pull-Up)
PA2     --      Pin 6           ----
PA3     --      Pin 10         SEG_C

PB4     --      Pin 12         SCL
PB5     --      Pin 11         SDA

PC3     --      Pin 13         ANODE_1         TIM1_CH3
PC4     --      Pin 14         ANODE_2         TIM1_CH4
PC5     --      Pin 15         SEG_A
PC6     --      Pin 16         SEG_F
PC7     --      Pin 17         ANODE_3         TIM1_CH2

PD1     --      Pin 18         SEG_E / SWIM
PD2     --      Pin 19         SEG_D
PD3     --      Pin 20         SEG_B
PD4     --      Pin 1           BEEPER
PD5     --      Pin 2           SEG_DP
PD6     --      Pin 3           SEG_G
*/


Т.к. плата прикидывалась в нескольких вариантах, то не могу утверждать, что нижеследующая картинка точно соответствует вышеприведенной распиновке, но выглядело оно как-то так:

Изображение

Если кому-то вышеописанное может показаться интересным, могу выложить.
Вложения
2015-05-18_045209.jpg
(96.8 КБ) 6544 скачивания
Аватара пользователя
oleg110592
Друг Кота
Сообщения: 3832
Зарегистрирован: Сб сен 10, 2011 17:46:25

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

Сообщение oleg110592 »

a5021 писал(а):Как-то вы все реже и реже попадаете в ноты

— Слышал я «Битлз», не понравилось. Картавят, фальшивят... Что людям в них нравится?!
— А где ты их слышал?
— Да мне Мойша напел…
Изображение
a5021 писал(а):Что-то я не хочу в ваше измерение. У вас там мистические события происходят. Только не смотря на описываемые вами чудеса, в реальной жизни не переносится код, скажем, с f100 на f030 без серьезной правки.

И слава богу - без вас наш мир будет чище :) . F100 vs F030 хитрый ход, но не все так плохо. Использую F0 F3 F4 периферия практически одинакова.
a5021 писал(а):Там и находится. Сравнивайте дату, размер. Разбирайтесь. Я не знаю, почему у вас старый файл оказался на месте новых библиотек.

Поставил последний, самый свежий ИАР для стм8, дата сегодняшняя, а воз и ныне там...
axillent
Электрический кот
Сообщения: 1040
Зарегистрирован: Вс сен 25, 2011 19:09:33

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

Сообщение axillent »

Буду признателен если выложите, мне будет пример полезен

У вас я вижу там транзисторы, я вот думаю для индикатора на две небольшие цифры просто к портам МК прицепить
В поисковике видел пару таких устройств
Индикатор с общим катодом, два вывода можно как open drain и еще семь с p-buffer через резисторы
Так же можно с stm8?
Аватара пользователя
GARMIN
Держит паяльник хвостом
Сообщения: 952
Зарегистрирован: Вс дек 02, 2012 16:58:33
Откуда: от туда
Контактная информация:

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

Сообщение GARMIN »

Можно. У меня так и сделано:
Изображение
Изображение
К тому же резисторов три, а не восемь, так как индикация посегментная, а не поразрядная.
Аватара пользователя
oleg110592
Друг Кота
Сообщения: 3832
Зарегистрирован: Сб сен 10, 2011 17:46:25

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

Сообщение oleg110592 »

можно, для посегментной индикации не надо и транзисторов
Изображение
axillent
Электрический кот
Сообщения: 1040
Зарегистрирован: Вс сен 25, 2011 19:09:33

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

Сообщение axillent »

Что то не понимаю, если резистор ставить в общую цепь (в общий катод в моем варианте) то как обеспечить равную яркость при разных комбинациях сегментов?
Имеется в виду, что за один такт отображения высвечивается только один сегмент одной цифры и всего для двух цифр нужно 14 тактов?

На мега 8 я делал по разрядную индикацию с током не более 5ма на сегмент, для 8ми сегментов это не более 40ма через общий вывод, как раз в рамках максимальных значений
Аватара пользователя
oleg110592
Друг Кота
Сообщения: 3832
Зарегистрирован: Сб сен 10, 2011 17:46:25

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

Сообщение oleg110592 »

да высвечивается один сегмент, современные китайские индикаторы, даже самые дешевые светятся очень ярко
axillent
Электрический кот
Сообщения: 1040
Зарегистрирован: Вс сен 25, 2011 19:09:33

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

Сообщение axillent »

GARMIN писал(а):Можно. У меня так и сделано

В чем моделька сделана?

где можно посмотреть размер кода и в идеале еще и расход ram и eeprom в iar?
Аватара пользователя
GARMIN
Держит паяльник хвостом
Сообщения: 952
Зарегистрирован: Вс дек 02, 2012 16:58:33
Откуда: от туда
Контактная информация:

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

Сообщение GARMIN »

Модель в Altium designer.
Для индикации размер кода небольшой, меньше килобайта.
Весь проект около 5к, там ещё RMS вольтметр и управление внешним устройством.
Аватара пользователя
GARMIN
Держит паяльник хвостом
Сообщения: 952
Зарегистрирован: Вс дек 02, 2012 16:58:33
Откуда: от туда
Контактная информация:

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

Сообщение GARMIN »

axillent писал(а):Что то не понимаю, если резистор ставить в общую цепь (в общий катод в моем варианте) то как обеспечить равную яркость при разных комбинациях сегментов?
Имеется в виду, что за один такт отображения высвечивается только один сегмент одной цифры и всего для двух цифр нужно 14 тактов?

Не 14 тактов, а 8. Один резистор на один разряд.
axillent
Электрический кот
Сообщения: 1040
Зарегистрирован: Вс сен 25, 2011 19:09:33

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

Сообщение axillent »

GARMIN писал(а):Не 14 тактов, а 8. Один резистор на один разряд.

как 8 получается?
если за раз я вывожу один сегмент, а сегментов 14 (две цифры по семь)

GARMIN писал(а):Модель в Altium designer.

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

GARMIN писал(а):Для индикации размер кода небольшой, меньше килобайта.

если не секрет, буду признателен за исходники, можно лично с обещанием не распространять.
Аватара пользователя
oleg110592
Друг Кота
Сообщения: 3832
Зарегистрирован: Сб сен 10, 2011 17:46:25

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

Сообщение oleg110592 »

axillent писал(а):где можно посмотреть размер кода и в идеале еще и расход ram и eeprom в iar?

Изображение
Ответить

Вернуться в «Разные вопросы по МК»