Перейти к содержанию
    

Добрый вечер! Я не очен силен в программировании, поэтому не бросайтесь тапками! Стараюсь разобраться сам, но иногда не могу найти нужного ответа. Надо было восстановить несколько залоченых Tiny. Нашел скетч в Arduino, но для Atmel. У меня была плата STM32103C8T6, на ней все сделал, но вопросы остались.1. Оператор #define xxx 45 не работает, где 45 номер соответствующей ножки, заработала только конструкция с указанием номера порта #define xxx PB8. Почему? Поигрался примером Blink по данному порту, меняя выходы пинов. Выяснил, что на PB4 выход не работает, постоянно есть подтяжка. На порту PB3 тоже нет выхода, нет и подтяжки. Думал, что подгоревшие выходы, но на другой плате тоже самое. Почему? Для меня это не принципиально, но серые пятна остались!

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


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

Вам надо с начала начать.

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

Оператор #define

https://www.c-cpp.ru/books/define

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

Чтобы найти ошибки в куске вашей программы, нужно его видеть.

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

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


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

а вы случаем не полный jtag вместо swd  от процессора захотели? тогда B3  B4  пострадают.

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


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

Нашел скетч в Arduino, но для Atmel. У меня была плата STM32103C8T6...
Меня одного смущает, что "скетч" (прости, госоди) от (сильно подозреваю) 8-битного Атмела "натягивают" на более серьёзный ST?

PS: я в курсе, что есть Ардуина 32-битная; только вот что-то ни разу на форуме об ней не говорилось (ибо небюджетная) ;-)

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


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

Наши штатные телепаты на больничном, у них ОРЗ и свинка.

Ну чтож. Автору можно только посоветовать книжку по языку Си и мануал на STM32F103 (докум RM0008). В противном случае, никакие объяснения тут не помогут. Да и не возможно понять, что там у автора приключилось, в чем затык.
Ножки PB3 и PB4 в STM32F103C8 по умолчанию заняты на JTAG, и еёйные нужно программно перенаправить.

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


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

Спасибо за советы. Даже язвительные могут дать необходимую информацию. Повторюсь, я не программист и не ставлю это в своей дальнейшей деятельности. Программирую только для себя, в качестве домашних поделок.  Моя сфера деятельности была близка к программированию, но только в качестве постановки задач непосредственному исполнителю. Тем не менее, как дипломированному ученому, мне любой вопрос интересен. Независимо от того, что в данном вопросе я лишь на начальном уровне. Еще раз спасибо, я понял какие с какими темами мне стоит ознакомиться. 

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


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

Да мы тоже какбы вот во многом "для себя". Но это не помешало нам основательно так заняться изучением с основ, ибо быстро поняли, что без основ не получится самостоятельно ничего делать. Так что, хотите-не хотите, а "нада".

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


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

Я давно пенсионер. Когда-то программировал. Вначале на PL1, затем FORTRAN, в отделе НИИ, куда я пришел в 1983г. PL1 не воспринимали. Тогда не надо было изучать регистры и т.п., для этого были системные программисты. Затем в отдел, в 1987г., поступили первые персоональные компьютеры Минск2. В отделе их было 10шт., по тем временам очень много, в других по 1-2 шт. Но постоянно 2 находились в ремонте. При институте был отдел ремонтников из Минска. У меня тогда укоренилось мнение, что персоналки не надежны! Мы программировали на Pascal  и С++. И вербальную и математическую постановку задачи делал один сотрудник, он же и программировал. Только потом эти функции были разделены. В домашних условиях я делаю поделки для облегчения быта на Tiny13 и Tiny25. Мне их возможностей вполне хватает. Только пару раз использовал Tiny2313a. SMT32 я взял только для разблокировки микросхем, которых я залочик по невнимательности, не сменив их в меню перед изменением фьюзов. Из Ваших постов я сразу понял, что я не ознакомился с исходным положением SMT32, я уже почитал раздел входов-выходов. Хотя, вполне возможно, я больше не вернусь к SMT32, за ненадобностью. Контроллеры я разблокировал, а сложные программы уже писать не собираюсь. Еще раз спасибо за подсказки! Обидно только, что сам сразу не догадался!

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


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

4 minutes ago, vgus said:

сложные программы уже писать не собираюсь

А какие по сложности программы вам приходилось писать? 

Вопрос серьезный, не подумайте 

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


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

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

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


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

3 minutes ago, vgus said:

Вам должно быть все понятно

все понятно, что было это очень давно и потому понятие "сложная программа" видимо актуально лишь для тех времен, когда вообще все делалось "ручками",

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

 

9 minutes ago, vgus said:

Задачи были оптимизационные.

в настоящее время под этим термином скрывается "подчищать за кем-то кривой код", а тогда что это означало?

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


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

Ох уж эти ваши шпиёнские штучки... "Я не могу раскрывать секреты, теория принятия решений, исследование операцый". Охохох, главное, чтобы слова звучали по-загадочнее 🙂  Вот перед вами стоит сейчас оптимизационная задача - надо принять решение - учить или не учить. Проведите исследование, с какой вероятностью научная квалификация поможет понять простой язык программирования. Язык Си - он же практически из той же эпохи, что и Фортран, такой же древний.

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

SMT32 я взял только для разблокировки микросхем, которых я залочик по невнимательности, не сменив их в меню перед изменением фьюзов.

Погодите, их же можно разблокировать тем же самым ардудино-аттини или универсальным программатором. Зачем для этого нужно было покупать STM? В инете куча статеек и готовых схем с прошивками для разблокировки. 
Мдя, воистину вот говорят - наличие ученых степеней еще ничего не значит.

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

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


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

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...