morrice

Простейшая Программка

56 сообщений в этой теме

Gramlin1    21
раз в 20 ошиблись....

Не знаю как это правильно посчитать... Надо наверно каждую команду считать. Причем каждая команда с разным количеством тактов обрабатывается...

спасибо за книжку

Да пожалуйста. Хорошая книжка по моему.

Изменено пользователем Gramlin1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Геннадий    1 017

не рабочий алгоритм привел?

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Gramlin1    21

Да ладно вам ядом прыскать уже! Была простая задача, не хотел человека запутывать.

Для такой простой задачи можно и так. Светодиоды мы зажгли, чего еще надо.

Если хотите, то вот так правильно:

while (1)

{

if (PIND.7==0)

{PORTC.1=1;

PORTC.2=0;}

else

{PORTC.2=1;

PORTC.1=0;}

}

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас


  • Сообщения

    • Боюсь, что конкретно в этом - нельзя. У него вторичка закорочена разводным ключом. 
    • И только совковые усилки продают за бутылку @Nem0 Не хорошо в другой теме делать рекламу ! 
    • В стм тоже тактирование или в внутреннего генератора HSI или с внешнего кварца\генератора HSE, сокращение от хай спид интернал\экстернал Вот по системе тактирования https://hubstub.ru/stm32/140-stm32-taktirovanie.html  https://ergoz.ru/programmirovanie-stm32-chast-2-sistema-taktirovaniya-stm32/   Я разбираюсь пока что с STM32f030
    • Кхм, пожалуй стоит заменить на простое и понятное. Для исключения подобных ассоциаций.  Хотя имело в виду совершенно иное - терпимость к новым ошибкам кода пользователя. С ростом сложности промежуточного слоя абстракции - добраться до реальной ошибки становится всё сложнее и сложнее. Дополнительные слои абстракции - это всегда двери в одно направление, как правило их очень легко закрыть, и многократно сложнее открыть. Самый яркий пример это естественно хал. На нём очень легко писать код. Но если что-то сломалось - то проще написать заново, чем разобраться в причине поломки. Чуть более сложное в понимании -  внешние конструкторы настройки периферии и программного кода. Это то что не поддаётся логике и отладке в принципе (нет обратной связи). Это можно использовать или не использовать, и на этом опции заканчивается. Ну так вот, код в CooCox создаётся здесь и сейчас - буквально полностью помещаясь на экран. Там нет длинных ссылок с определениями  и макросами на ещё десятке разных файлов. Оно конечно удобно, когда в конфиге меняется одно значение, и проект полностью перестраивается. Но всё хорошо в меру. В данном случае мера - это один конфиг, а не десяток файлов со сложной взаимосвязью. Рейтинг построен именно по этой методике - количество телодвижений в поиске ошибки.
    • Благодарю, пока наверное самый дельный совет. Главное с чего начать уже есть ). 
    • Дык с avr я так и делаю) А тут меня больше всего смутила настройка тактирования) В авр все просто, внутренняя RC цепочка, внешняя, или кварц. А тут глянул в конфигуратор, и понял что ничего не понял. Мало того, что есть два варианта настройки одновременно, что то типа для высокой частоты одна настройка а для низкой другая, так еще есть какой то выбор Systick или TIMx... вот это пока для меня вообще загадкой осталось))