Например TDA7294

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

Текущее время: Чт сен 04, 2025 21:40:35

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


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



Начать новую тему Ответить на тему  [ Сообщений: 3623 ]     ... , , , 142, , , ...  
Автор Сообщение
Не в сети
 Заголовок сообщения: Re: Мигать светодиодом. ARM или не-ARM?
СообщениеДобавлено: Вт апр 24, 2018 07:03:15 
Друг Кота
Аватар пользователя

Карма: 32
Рейтинг сообщений: 482
Зарегистрирован: Сб сен 10, 2011 17:46:25
Сообщений: 3832
Рейтинг сообщения: 0
или блинк на CMSIS

Было раньше в теме, продублируем
мигание на STM32F103C8T6, пин PC13, Keil:
Спойлер
Код:
#include "stm32f10x.h"

volatile uint32_t msTicks;                                 // counts 1ms timeTicks
extern void Delay (uint32_t dlyTicks);
/*----------
 * SysTick_Handler:
 *----------*/
void SysTick_Handler(void)
{
    msTicks++;
}

/*----------
 * Delay: delays a number of Systicks
 *----------*/
void Delay (uint32_t dlyTicks)
{
    uint32_t curTicks;

    curTicks = msTicks;
    while ((msTicks - curTicks) < dlyTicks)
    {
        __NOP();
    }
}

int main(void)
{
    RCC->APB2ENR |= RCC_APB2ENR_IOPCEN;
    GPIOC->CRH |=  GPIO_CRH_MODE13_1;
   
   SysTick_Config(8000000UL / 1000);    // SysTick 1 msec interrupts
   
    while (1)
    {
        GPIOC->ODR ^=(uint16_t)(1<<13);
        Delay(1000);
    }
}

Program Size: Code=244 RO-data=268 RW-data=4 ZI-data=1028

в Протеусе работает:
Изображение
CMSIS используется Keilовский, подключается просто галочкой:
Изображение


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Мигать светодиодом. ARM или не-ARM?
СообщениеДобавлено: Вт апр 24, 2018 11:09:38 
Друг Кота
Аватар пользователя

Карма: 1
Рейтинг сообщений: 179
Зарегистрирован: Пн окт 11, 2010 19:00:08
Сообщений: 3379
Рейтинг сообщения: 0
Lublu_megy писал(а):
Уже давно прикупил STM32F103C8T6. Скачал Keil (ломанул), с мучениями поставил CMSIS, а как блинкать светодиодом на PC13 так и неразобрался
Все намного проще. Ничего ломать не нужно и отдельно ставить CMSIS и SPL тоже не требуется. http://purebasic.mybb.ru/viewtopic.php?id=575#p7256

СпойлерИзображение
Вложение:
Proteus.jpg [49.2 KiB]
Скачиваний: 126


Вложения:
Blink.7z [169.44 KiB]
Скачиваний: 286
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Мигать светодиодом. ARM или не-ARM?
СообщениеДобавлено: Вт апр 24, 2018 11:57:26 
Друг Кота
Аватар пользователя

Карма: 30
Рейтинг сообщений: 156
Зарегистрирован: Пн июл 28, 2008 22:12:01
Сообщений: 3604
Рейтинг сообщения: 0
Lublu_megy, http://mcu.goodboard.ru/viewtopic.php?id=15


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Мигать светодиодом. ARM или не-ARM?
СообщениеДобавлено: Ср апр 25, 2018 17:10:33 
Первый раз сказал Мяу!

Зарегистрирован: Вт дек 12, 2017 16:52:57
Сообщений: 31
Откуда: Вам широту и долготу скинуть?
Рейтинг сообщения: 0
Program Size: Code=244 RO-data=268 RW-data=4 ZI-data=1028
Program Size: Code=848 RO-data=268 RW-data=4 ZI-data=1636
Изображение

в Протеусе работает:
Изображение
CMSIS используется Keilовский, подключается просто галочкой:
Изображение
У меня тоже, но ничего не понятно.

Добавлено after 6 minutes 47 seconds:
Lublu_megy писал(а):
Уже давно прикупил STM32F103C8T6. Скачал Keil (ломанул), с мучениями поставил CMSIS, а как блинкать светодиодом на PC13 так и неразобрался
Все намного проще. Ничего ломать не нужно и отдельно ставить CMSIS и SPL тоже не требуется. http://purebasic.mybb.ru/viewtopic.php?id=575#p7256

СпойлерИзображение
Вложение:
Proteus.jpg
Вы издеваетесь? STDPeriph?? Смотрим и наслаждаемся:

_________________

ааааааааааааааааааааааааа็аааааааааааааааааааааааа็аааааааааааааааааааааааа, I love this.ааааааааааааааааааааааааа็аааааааааааааааааааааааа็аааааааааааааааааааааааа



Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Мигать светодиодом. ARM или не-ARM?
СообщениеДобавлено: Ср апр 25, 2018 18:07:11 
Друг Кота
Аватар пользователя

Карма: 30
Рейтинг сообщений: 156
Зарегистрирован: Пн июл 28, 2008 22:12:01
Сообщений: 3604
Рейтинг сообщения: 0
Lublu_megy, не стоит верить дурачкам с инетпомойки.

Ни кто в здравом уме не будет лепить на арм софтовый ногодрыг.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Мигать светодиодом. ARM или не-ARM?
СообщениеДобавлено: Ср апр 25, 2018 18:41:43 
Первый раз сказал Мяу!

Зарегистрирован: Вт дек 12, 2017 16:52:57
Сообщений: 31
Откуда: Вам широту и долготу скинуть?
Рейтинг сообщения: 0
Lublu_megy, Ни кто в здравом уме не будет лепить на арм софтовый ногодрыг.
Понимаю, но меня всё подталкивают "Чё ты как слоупок на Arduino сидишь?" или "STM мощнее, переходи на него".

_________________

ааааааааааааааааааааааааа็аааааааааааааааааааааааа็аааааааааааааааааааааааа, I love this.ааааааааааааааааааааааааа็аааааааааааааааааааааааа็аааааааааааааааааааааааа



Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Мигать светодиодом. ARM или не-ARM?
СообщениеДобавлено: Ср апр 25, 2018 21:40:35 
Друг Кота

Карма: 38
Рейтинг сообщений: 618
Зарегистрирован: Пн апр 06, 2015 11:01:53
Сообщений: 3092
Откуда: москва, уфа
Рейтинг сообщения: 0
терпеть ненавижу видео по техническим вопросам. Серьезно, неудобно ж нифига. Код где-нибудь целиком есть, работу коего сей орел "измерял"? Конкретно интересует настройка тактирования) И способ дрыгоножества на атмеге. Оно явно не строгий аналог GPIO_Set/ResetBits.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Мигать светодиодом. ARM или не-ARM?
СообщениеДобавлено: Ср апр 25, 2018 22:54:15 
Друг Кота
Аватар пользователя

Карма: 1
Рейтинг сообщений: 179
Зарегистрирован: Пн окт 11, 2010 19:00:08
Сообщений: 3379
Рейтинг сообщения: 0
Lublu_megy писал(а):
Вы издеваетесь? STDPeriph??
Чем вам SPL не понравилась? Это всего лишь библиотека для конфигурации периферии от производителя МК. :)

Lublu_megy писал(а):
Понимаю, но меня всё подталкивают "Чё ты как слоупок на Arduino сидишь?" или "STM мощнее, переходи на него".
Нужно иметь свое мнение, а не вестись на чужое, иначе потеряете индивидуальность. Другими словами, нужно думать своей головой и самостоятельно принимать решения, а не беспрекословно делать что говорят другие.

arkhnchul писал(а):
терпеть ненавижу видео по техническим вопросам.
Видео бывает разным. Когда его снимает человек, в теме, то такое видео бывает полезным. Но когда за дело берется "новичок", сам толком не разобравшийся в предмете обсуждения, тогда нередко в его объяснениях бывают ошибки.

arkhnchul писал(а):
Код где-нибудь целиком есть, работу коего сей орел "измерял"?
Вы по видео учитесь работать с МК, в т. к. разрабатывать для них программы? Кто-же так делает? Читайте документацию от производителя и статьи в сети. Только учтите что в статьях могут быть ошибки, особенно если их написали "новички".

arkhnchul писал(а):
Конкретно интересует настройка тактирования)
Досикусу привет! :) http://mcu.goodboard.ru/viewtopic.php?id=11
http://we.easyelectronics.ru/GYUR22/pro ... rzhka.html
https://alex-exe.ru/radio/stm32/stm32-oscillator-spl/
http://www.avislab.com/blog/stm32-clock_ru/
https://ergoz.ru/programmirovanie-stm32 ... iya-stm32/
http://stm32.chrns.com/post/149086504894/clocksystem
http://ziblog.ru/2011/12/07/stm32l-ndas ... obzor.html
http://www.nis-embedded.com/stm32/stm32 ... les/clocks


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Мигать светодиодом. ARM или не-ARM?
СообщениеДобавлено: Ср апр 25, 2018 23:33:42 
Друг Кота

Карма: 38
Рейтинг сообщений: 618
Зарегистрирован: Пн апр 06, 2015 11:01:53
Сообщений: 3092
Откуда: москва, уфа
Рейтинг сообщения: 0
Вы по видео учитесь работать с МК, в т. к. разрабатывать для них программы?

я?) нет.
arkhnchul писал(а):
Конкретно интересует настройка тактирования)
Досикусу привет! :) ... кучка ссылок ...

в смысле, применительно к показанному "тесту производительности ногодрыга".


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Мигать светодиодом. ARM или не-ARM?
СообщениеДобавлено: Чт апр 26, 2018 09:56:13 
Друг Кота
Аватар пользователя

Карма: 1
Рейтинг сообщений: 179
Зарегистрирован: Пн окт 11, 2010 19:00:08
Сообщений: 3379
Рейтинг сообщения: 0
arkhnchul писал(а):
в смысле, применительно к показанному "тесту производительности ногодрыга".
Нет, применительно к ссылке http://mcu.goodboard.ru/viewtopic.php?id=11


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 - краткий результат исследования применимости.
СообщениеДобавлено: Чт апр 26, 2018 12:45:26 
Собутыльник Кота
Аватар пользователя

Карма: -22
Рейтинг сообщений: -41
Зарегистрирован: Вс окт 02, 2016 07:34:45
Сообщений: 2976
Рейтинг сообщения: 0
Ибо прошло больше года, и хотя за это время отнюдь не однажды возникала потребность в использовании STM32, всякий раз находилось более простое, надежное и дешевое техническое решение.

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

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


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Мигать светодиодом. ARM или не-ARM?
СообщениеДобавлено: Чт апр 26, 2018 13:47:38 
Друг Кота
Аватар пользователя

Карма: 30
Рейтинг сообщений: 156
Зарегистрирован: Пн июл 28, 2008 22:12:01
Сообщений: 3604
Рейтинг сообщения: 0
Понимаю, но меня всё подталкивают "Чё ты как слоупок на Arduino сидишь?" или "STM мощнее, переходи на него".


И что не так? Тот же I2C, что пытается изобразить автор видео, в stm32 аппаратный. Более того, легко реализуется полностью автономная работа - прием/передача буферов без участия юзер кода , что в авр а тем более в ардунье просто невозможно.
Пора бы уже забыть тяжелое наследие авр...

Софтовый ногодрыг- сродни гребле ломами на лодке, супротив катера с мотором...


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Мигать светодиодом. ARM или не-ARM?
СообщениеДобавлено: Пт апр 27, 2018 08:32:36 
Друг Кота
Аватар пользователя

Карма: 32
Рейтинг сообщений: 482
Зарегистрирован: Сб сен 10, 2011 17:46:25
Сообщений: 3832
Рейтинг сообщения: 0
Мигание на STM8S003:

Спойлер
Код:
#include "stm8s.h"

#define LED_GPIO_ODR GPIOA->ODR
#define LED ((uint8_t)(1<<2))

__IO uint16_t  ms = 0;

INTERRUPT_HANDLER(TIM2_UPD_OVF_IRQHandler, 13) // Прерывание таймера
{
    TIM2->SR1 &= ~TIM2_SR1_UIF; // Очистка флага прерывания по обновлению
    if(ms != 0) ms--;
}

void delay_ms(uint16_t set_ms) // Задержка мс
{
    ms = set_ms;
    while(ms);
}

void main( void )
{
    CLK->CKDIVR = 0; //Делитель частоты = 1
   
    GPIOA->DDR |= (uint8_t) (1<<2); // Ножка конфигурируется на вывод
    GPIOA->CR1 |= (uint8_t) (1<<2);  //Выход типа Push-pull
    GPIOA->CR2 |= (uint8_t) (1<<2);  // Скорость переключения - до 10 МГц.

    TIM2->SR1 &= ~TIM2_SR1_UIF; // Очистка флага прерывания по обновлению
    TIM2->PSCR = 0x06; // //Предделитель на 2^6=64 16000000/64 = 250000 Hz
    TIM2->ARRH = 0; ///Значение перезагрузки 250000/250 = 1000 Гц
    TIM2->ARRL = 250;
    TIM2->IER |= TIM2_IER_UIE; // Прерывание по обновлению счетного регистра азрешено
    TIM2->CR1 |= TIM2_CR1_URS | TIM2_CR1_CEN ; // Прерывание по переполнению разрешено и таймер запущен
    asm("rim");
    while(1)
    {
        LED_GPIO_ODR ^= LED;
        delay_ms(1000);
    }
}

листинг самого главного:
Спойлер
Код:
 //LED_GPIO_ODR ^= LED;
main_0:
   LD        A, L:0x5000
   XOR       A, #0x4
   LD        L:0x5000, A
//delay_ms(1000);
   LDW       X, #0x3e8
   LDW       L:ms, X
main_1:
   LDW       X, L:ms
   JREQ      L:main_0
   JRA       L:main_1

ксор через аккумулятор A тоже неплохо (имхо)


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Мигать светодиодом. ARM или не-ARM?
СообщениеДобавлено: Пн апр 30, 2018 07:06:32 
Друг Кота
Аватар пользователя

Карма: 32
Рейтинг сообщений: 482
Зарегистрирован: Сб сен 10, 2011 17:46:25
Сообщений: 3832
Рейтинг сообщения: 0
На Хабре интересная статейка для тех кто хочет докопаться (имхо)
Программирование stm32f103 с самых основ
Цитата:
В статье я хотел бы описать шаги на пути к написанию прошивки для микроконтроллеров stm32 без использования специальных сред разработки типа keil, eclipse и тому подобных. Я опишу подготовку прошивки с самых основ, начиная с написания загрузчика на ассемблере, скрипта для линкера и заканчивая основной программы на C. В коде на C буду использовать заголовочные файлы из CMSIS.

https://habr.com/post/354670/?utm_sourc ... ign=354670
з.ы. в Виндовсе тоже можно собрать - создал простенький cmd файлик:
Код:
c:\SysGCC\arm-eabi\bin\arm-eabi-as -o bootstrap.o bootstrap.s
c:\SysGCC\arm-eabi\bin\arm-eabi-ld -o main.elf -T stm32f103.ld bootstrap.o
c:\SysGCC\arm-eabi\bin\arm-eabi-objcopy main.elf main.bin -O binary
pause

использовал toolchain ARM от SysProgs:
http://gnutoolchains.com/download/


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Мигать светодиодом. ARM или не-ARM?
СообщениеДобавлено: Пн апр 30, 2018 14:15:02 
Собутыльник Кота
Аватар пользователя

Карма: -22
Рейтинг сообщений: -41
Зарегистрирован: Вс окт 02, 2016 07:34:45
Сообщений: 2976
Рейтинг сообщения: 0
На Хабре интересная статейка для тех кто хочет докопаться (имхо)
До чего докопаться-то? До того, как научиться мигать светодиодом еще быстрее? :)))


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Мигать светодиодом. ARM или не-ARM?
СообщениеДобавлено: Пн апр 30, 2018 16:36:28 
Друг Кота
Аватар пользователя

Карма: 32
Рейтинг сообщений: 482
Зарегистрирован: Сб сен 10, 2011 17:46:25
Сообщений: 3832
Рейтинг сообщения: 0
если почитать статью - не быстрее, а как типа "мигать светодиодом" без использования специальных сред разработки.
з.ы. подобным образом ранее осваивал микроконтроллеры LPC2000 - помогло по жизни


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Мигать светодиодом. ARM или не-ARM?
СообщениеДобавлено: Пн апр 30, 2018 20:16:50 
Друг Кота
Аватар пользователя

Карма: 1
Рейтинг сообщений: 179
Зарегистрирован: Пн окт 11, 2010 19:00:08
Сообщений: 3379
Рейтинг сообщения: 0
oleg110592 писал(а):
а как типа "мигать светодиодом" без использования специальных сред разработки.
В том то и дело что "типа мигать". В коде только задается адрес стека и адрес сброса, после чего программа зацикливается.
Какой толк от такой программы?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Мигать светодиодом. ARM или не-ARM?
СообщениеДобавлено: Вт май 01, 2018 07:34:23 
Друг Кота
Аватар пользователя

Карма: 32
Рейтинг сообщений: 482
Зарегистрирован: Сб сен 10, 2011 17:46:25
Сообщений: 3832
Рейтинг сообщения: 0
Какой толк от такой программы?

И опять, если почитать статью - от программы действительно толку нет, но основная задача - немного познакомится с ассемблером, с компиляцией в коммандной строке, научится прошивать и т.д.
Цитата:
Мы начнем с startup файла и он будет написан на ассемблере. Это будет единственный раз, когда я заставляю вас писать на скучном ассемблере, зато вы начнете понимать и “чувствовать” устройство изнутри.
.....
@Аргумент команды B - это адрес безусловного перехода, в нашем случае мы пока
@указываем метку Reset, тем самым заводим процессор в бесконечный цикл.
Reset: B Reset
.....
Итак, наша первая программа для контроллера stm32 готова! Прошиваем!
.....
Поздравляю! Теперь микроконтроллер обречен на вечное выполнение безусловного перехода. До следующей встречи!

з.ы. вот и комент оттуда:
Цитата:
О, это просто замечательный материал, очень надеюсь на продолжение. Совершенно не понимаю, почему все книги/статьи/руководства по программированию МК начинаются с описания IDE, которые нажатием пары магических кнопок делают что-то, о чем мне пока (вообще?) знать не положено… Ведь моя задача — не достижение конкретного результата, я хочу понять, что происходит и как это работает. Почему все эти горе-писатели пытаются оградить меня от этого знания?
В общем, жду продолжения, очень радует ваш подход, тем более что я тоже использую Arch Linux как рабочее окружение.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Мигать светодиодом. ARM или не-ARM?
СообщениеДобавлено: Вт май 01, 2018 09:15:35 
Друг Кота
Аватар пользователя

Карма: 1
Рейтинг сообщений: 179
Зарегистрирован: Пн окт 11, 2010 19:00:08
Сообщений: 3379
Рейтинг сообщения: 0
oleg110592 писал(а):
основная задача - немного познакомится с ассемблером
Я бы сказал совсем немного. Только с одной асм инструкцией - безусловным переходом.
Код:
Reset: B Reset
Повторюсь, от программы толку нет.

oleg110592 писал(а):
компиляцией в коммандной строке
Сейчас такое мало кто использует на практике, т. к. неэффективно. Компилируют в IDE или с помощью makefile.

oleg110592 писал(а):
научится прошивать и т.д.
В этой статье гораздо больше написано по теме прошивки и не только. http://www.avislab.com/blog/stm32_st_link_ru/


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Мигать светодиодом. ARM или не-ARM?
СообщениеДобавлено: Вт май 01, 2018 13:37:02 
Друг Кота

Карма: 38
Рейтинг сообщений: 618
Зарегистрирован: Пн апр 06, 2015 11:01:53
Сообщений: 3092
Откуда: москва, уфа
Рейтинг сообщения: 3
Сейчас такое мало кто использует на практике, т. к. неэффективно. Компилируют в IDE или с помощью makefile


чтобы писать или править makefile, надо понимать, как управлять компилятором руками.


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

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


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

Сейчас этот форум просматривают: Asmodey, rjn2 и гости: 53


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

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


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