Котуинко
Re: Котуинко
Си не допускает исполняемый код за пределами функций, а он у вас есть.
- Реклама
- ARV
- Ум, честь и совесть. И скромность.
- Сообщения: 18546
- Зарегистрирован: Чт дек 28, 2006 08:19:56
- Откуда: Новочеркасск
- Контактная информация:
Re: Котуинко
что за манера картинки файлами прикладывать, код файлами? сделать так, чтобы сразу было видно, что к чему, хотя бы из уважения к остальным - религия не позволяет?!
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
Re: Котуинко
А зачем NOPы ставить-то?
У Си вполне достаточно и своих средств формирования задержки.
Тем более, что протокол работы с дисплеями не ограничен по скорости/быстродействию в сторону увеличения интервалов..
Вполне можно что угодно самодельного применить.
Цикл с декрементом применять нежелательно - это не ассемблер, Сишные циклы с -- требуют весьма жёсткого анализа.
Позже на компе глянул файлик поближе.

У Си вполне достаточно и своих средств формирования задержки.
Тем более, что протокол работы с дисплеями не ограничен по скорости/быстродействию в сторону увеличения интервалов..
Вполне можно что угодно самодельного применить.
Цикл с декрементом применять нежелательно - это не ассемблер, Сишные циклы с -- требуют весьма жёсткого анализа.
Позже на компе глянул файлик поближе.
- главный колбасист
- Это не хвост, это антенна
- Сообщения: 1331
- Зарегистрирован: Чт авг 21, 2014 11:11:48
- Откуда: краснодарский край
- Контактная информация:
Re: Котуинко
Чтобы листинг кода занимал целую страницу?
и смотрим что произойдет.
Если компилятор ругается,меняли свою отсебятину, и все получалось.
А тут уперся чего то....
Программа основная не моя,где то подцепил,не помню,скопировали в AVRstudio . Мы читаем Шпака,и вставили несколько строкА зачем NOPы ставить-то?
У Си вполне достаточно и своих средств формирования задержки.
и смотрим что произойдет.
А тут уперся чего то....
Re: Котуинко
Ну я Си под AVRСТУДИО НЕ МУЧАЮ - балуюсь только с адуринкой - там библиотеки подключать не надо.

- Реклама
- главный колбасист
- Это не хвост, это антенна
- Сообщения: 1331
- Зарегистрирован: Чт авг 21, 2014 11:11:48
- Откуда: краснодарский край
- Контактная информация:
Re: Котуинко
Вставлять листинг кода на целую страницучто за манера картинки файлами прикладывать, код файлами? сделать так, чтобы сразу было видно, что к чему, хотя бы из уважения к остальным - религия не позволяет?!
Одуринки у нас нет. Ни одной. И вообще , уехать бы отсюда навсегда,и забыть как страшный сон.
Хотя бы в Гондурас,что ли...
Re: Котуинко
Тогда вопросы больше к "чистым Сишникам" или таки мучаем ассемблер.
Как вариант - делаем самопальную адуринку (arduino NG) или вариант с 328й мегой и СОМ-портом.
Железо там весьма простое - могу схемку скинуть...
Насчет "уехать"...
ХОРОШО ТАМ, ГДЕ НАС НЕТУ
Взять хотя бы моё местообитания - тут таки иногда и стреляют ... калибром под 150 и более...
Добавкой комчас и то, что Вам лишь недавно "краешком" при КОВЫДРЕ ощутить удалось - только уже седьмой год.
Да абсолютно непонятно куды гребем - официально МИНСК на деле - .....
И ничего - вполне себе живем и тикать особо... нету смысла....

Как вариант - делаем самопальную адуринку (arduino NG) или вариант с 328й мегой и СОМ-портом.
Железо там весьма простое - могу схемку скинуть...
Насчет "уехать"...
ХОРОШО ТАМ, ГДЕ НАС НЕТУ
Взять хотя бы моё местообитания - тут таки иногда и стреляют ... калибром под 150 и более...
Добавкой комчас и то, что Вам лишь недавно "краешком" при КОВЫДРЕ ощутить удалось - только уже седьмой год.
Да абсолютно непонятно куды гребем - официально МИНСК на деле - .....
И ничего - вполне себе живем и тикать особо... нету смысла....
- главный колбасист
- Это не хвост, это антенна
- Сообщения: 1331
- Зарегистрирован: Чт авг 21, 2014 11:11:48
- Откуда: краснодарский край
- Контактная информация:
Re: Котуинко
Так шо - скинуть схемку для самопальной адуринки?

- главный колбасист
- Это не хвост, это антенна
- Сообщения: 1331
- Зарегистрирован: Чт авг 21, 2014 11:11:48
- Откуда: краснодарский край
- Контактная информация:
Re: Котуинко
Да пожалуйста. поглядим.
А что такое самопальная ардуинка?
А что такое самопальная ардуинка?
Re: Котуинко
Это платка на основе АВРки с некоторой начально заданной минимальной конфигурацией (как схемотехнической, так и софтовой).
После изготовления и прошивки может использоваться как одна из базовых платформ ардуино или как простое устройство на АВР МК.
Вот тут, к примеру, описание для mini core
https://github.com/MCUdude/MiniCore#boa ... stallation
в принципе кратко, но без СОМ-портового адаптера. А полная версия включает в себя еще и СОМ-ТТЛ (USB-TTL) преобразователь.
Отличия от NG там более в варианте бутлоадера и некоторых дополнениях в настройках компилятора.
Кстати.. адуринья имеет весьма неплохой симулятор для начальной стадии изучения без железа.
Причем в том симуляторе и внешняя обвязка предусмотрена (минимальный набор внешних усторйств "по умолчанию").
Для имющего комп с виндовс 7-8-10ками от майкрософта там на сегодня никаких проблем ни по установке ни по применению.
Симулятор
https://www.sites.google.com/site/unoardusim/ (последний вариант 2.8.1)
и сама IDE
https://www.arduino.cc/en/Main/Software (версия 1.8.13)
Под ХР ограничения по версии - не выше 1.8.9 и запрет автообновления для менеджера платформ.
Там у меня аварийный архив и некоторые "шаманизмы" при установке имеются, ежли кому интересно будет...
Кстати... Одна из ошибок в подходе начинающего к Си (да и к любому копилятору)...
На начальном этапе нельзя путать проекты от разных компиляторов.
Особо в Си, где изначально используется многофайловая структура проекта.
При работе с проектом, использующим библиотечные функции надо в заголовочнике подключать ту библиотеку, функции из которой используются в main. Однако... В самой библиотеке могут использоваться и другие библиотеки (указаны в ее заголовочнике)...
А они для разных компиляторов имеют обычно отличия.
Посему для начала стараемся те "чужие" библиотеки не подключать, ограничиваясь "стандартным набором" из средств используемого компилятора "по умолчанию".
В ардуиноIDE тот "стандартный минимум" прописывается автоматически (скрыто от пользователя), а в типовых компиляторах (работа под "чистым Си") - извольте все библиотеки "стандартного минимума" хоть бегло но изучить и соответственно уметь их подключать.
Это не говоря уже о make файлах и "тонких настройках" опций при профессиональной работе.
Так что предложить - то можно, но выбор инструментов и целей - ессно за конкретным пользователем.

После изготовления и прошивки может использоваться как одна из базовых платформ ардуино или как простое устройство на АВР МК.
Вот тут, к примеру, описание для mini core
https://github.com/MCUdude/MiniCore#boa ... stallation
в принципе кратко, но без СОМ-портового адаптера. А полная версия включает в себя еще и СОМ-ТТЛ (USB-TTL) преобразователь.
Отличия от NG там более в варианте бутлоадера и некоторых дополнениях в настройках компилятора.
Кстати.. адуринья имеет весьма неплохой симулятор для начальной стадии изучения без железа.
Причем в том симуляторе и внешняя обвязка предусмотрена (минимальный набор внешних усторйств "по умолчанию").
Для имющего комп с виндовс 7-8-10ками от майкрософта там на сегодня никаких проблем ни по установке ни по применению.
Симулятор
https://www.sites.google.com/site/unoardusim/ (последний вариант 2.8.1)
и сама IDE
https://www.arduino.cc/en/Main/Software (версия 1.8.13)
Под ХР ограничения по версии - не выше 1.8.9 и запрет автообновления для менеджера платформ.
Там у меня аварийный архив и некоторые "шаманизмы" при установке имеются, ежли кому интересно будет...
Кстати... Одна из ошибок в подходе начинающего к Си (да и к любому копилятору)...
На начальном этапе нельзя путать проекты от разных компиляторов.
Особо в Си, где изначально используется многофайловая структура проекта.
При работе с проектом, использующим библиотечные функции надо в заголовочнике подключать ту библиотеку, функции из которой используются в main. Однако... В самой библиотеке могут использоваться и другие библиотеки (указаны в ее заголовочнике)...
А они для разных компиляторов имеют обычно отличия.
Посему для начала стараемся те "чужие" библиотеки не подключать, ограничиваясь "стандартным набором" из средств используемого компилятора "по умолчанию".
В ардуиноIDE тот "стандартный минимум" прописывается автоматически (скрыто от пользователя), а в типовых компиляторах (работа под "чистым Си") - извольте все библиотеки "стандартного минимума" хоть бегло но изучить и соответственно уметь их подключать.
Это не говоря уже о make файлах и "тонких настройках" опций при профессиональной работе.
Так что предложить - то можно, но выбор инструментов и целей - ессно за конкретным пользователем.
- oleg110592
- Друг Кота
- Сообщения: 3832
- Зарегистрирован: Сб сен 10, 2011 17:46:25
Re: Котуинко
[uquote="BOB51",url="/forum/viewtopic.php?p=3877702#p3877702"]Особо в Си, где изначально используется многофайловая структура проекта.[/uquote]
читаем создателей языка:
смотреть пункт 4. Функции и структура программ
т.е. программа на Си может состоять из одного единственного Си файла, как и ассемблерная
читаем создателей языка:
http://lib.ru/CTOTOR/kernigan.txtПрограмма может размещаться в одном или
нескольких исходных файлах любым удобным образом; исходные
файлы могут компилироваться отдельно и загружаться вместе
наряду со скомпилированными ранее функциями из библиотек.
смотреть пункт 4. Функции и структура программ
т.е. программа на Си может состоять из одного единственного Си файла, как и ассемблерная
Re: Котуинко
Само собой МОЖЕТ.
Однако наш главный колбасист использует в своих текстах ссылки на библиотеки... да еще и в разных компиляторах изготовленные.
Соответственно и матюки.
Помимо прочего даже если и один единственный файл - обойтись без "стандартных" библиотек компилятора можно разве что в абсолютно учебной программе.
Ведь все равно или библиотека ввода/вывода или математика будут использоваться (особо в случае с МК).
Та же
#include <avr/io.h> //библиотека ввода/вывода
к примеру...

Да и относительно ассемблера также не верно - ибо ВСЕГДА присутствует (скрыто или явно - зависит от компилятора) файл описания ресурсов по умолчанию.
Просто мы его не всегда в явном виде указываем.

Кстати... о "переходах" между разными компиляторами для МК можно тут глянуть:
https://sunduk.radiokot.ru/view/?id=1315557050

Однако наш главный колбасист использует в своих текстах ссылки на библиотеки... да еще и в разных компиляторах изготовленные.
Соответственно и матюки.
Помимо прочего даже если и один единственный файл - обойтись без "стандартных" библиотек компилятора можно разве что в абсолютно учебной программе.
Ведь все равно или библиотека ввода/вывода или математика будут использоваться (особо в случае с МК).
Та же
#include <avr/io.h> //библиотека ввода/вывода
к примеру...
Да и относительно ассемблера также не верно - ибо ВСЕГДА присутствует (скрыто или явно - зависит от компилятора) файл описания ресурсов по умолчанию.
Просто мы его не всегда в явном виде указываем.
Кстати... о "переходах" между разными компиляторами для МК можно тут глянуть:
https://sunduk.radiokot.ru/view/?id=1315557050
- oleg110592
- Друг Кота
- Сообщения: 3832
- Зарегистрирован: Сб сен 10, 2011 17:46:25
Re: Котуинко
[uquote="BOB51",url="/forum/viewtopic.php?p=3877733#p3877733"]Помимо прочего даже если и один единственный файл - обойтись без "стандартных" библиотек компилятора можно разве что в абсолютно учебной программе.[/uquote]
можно и не в абсолютно учебной - например произвести расчеты и вывести результат без использования стандартных библиотек. Простейший хэлловорд например, без:
а из файла ресурсов можно скопипастить только нужное для проекта в свой Си или Асм файлик и будет только один файл, это к утверждению:
з.ы. у меня полно проектиков на Си, где один Си файл и один заголовочный файл - многофайловым проектом это рука не поднимается назвать
можно и не в абсолютно учебной - например произвести расчеты и вывести результат без использования стандартных библиотек. Простейший хэлловорд например, без:
Код: Выделить всё
#define return puts("Hello World"); return
int main ()
{
return 0;
}просто за Си обидно стало - это ж почти ассемблер (имхо)Особо в Си, где изначально используется многофайловая структура проекта.
з.ы. у меня полно проектиков на Си, где один Си файл и один заголовочный файл - многофайловым проектом это рука не поднимается назвать
Re: Котуинко
Произвести расчеты - уже математика, а оная требует библиотеку.
А насчет стянуть из какого-либо файла только необходимый кусочек - то уже таки не для начинающего.
(Ибо надо найти где стянуть и что стянуть).

Ну и в самом ассемблере без файлика описания ресурсов не обойтись.
Единственно оный часто "интегрирован по умолчанию" (например в некоторых компиляторах для mcs51).

И .... ОЙ... return - зарезервированное слово - компилятор не матюкнется на переопределение?

А насчет стянуть из какого-либо файла только необходимый кусочек - то уже таки не для начинающего.
(Ибо надо найти где стянуть и что стянуть).
Ну и в самом ассемблере без файлика описания ресурсов не обойтись.
Единственно оный часто "интегрирован по умолчанию" (например в некоторых компиляторах для mcs51).
И .... ОЙ... return - зарезервированное слово - компилятор не матюкнется на переопределение?
- oleg110592
- Друг Кота
- Сообщения: 3832
- Зарегистрирован: Сб сен 10, 2011 17:46:25
Re: Котуинко
Все же лучше переопределения ключевых слов не задавать...
Ассемблер за такое "далеко пошлет"...

Ассемблер за такое "далеко пошлет"...
- oleg110592
- Друг Кота
- Сообщения: 3832
- Зарегистрирован: Сб сен 10, 2011 17:46:25
Re: Котуинко
в Си препроцессор обеспечивает только подстановку текста, не учитывая синтаксис и семантику языка
т.е. компилятору даст наверное такое:
т.е. компилятору даст наверное такое:
Код: Выделить всё
int main ()
{
puts("Hello World"); return 0;
}Re: Котуинко
Можно лишь предположить - как там на самом деле знает только разработчик компилятора.
Мы можем только рекомендовать не использовать переопределение ключевых слов на этапе начального изучения языка...
Да чтоб потом "не заблудится" в ранее написанных программах.
Особо актуально для любителя при относительно редких проектах, когда надо вспоминать "тонкости работы" после месяца/полутора перерыва.

Мы можем только рекомендовать не использовать переопределение ключевых слов на этапе начального изучения языка...
Да чтоб потом "не заблудится" в ранее написанных программах.
Особо актуально для любителя при относительно редких проектах, когда надо вспоминать "тонкости работы" после месяца/полутора перерыва.
- oleg110592
- Друг Кота
- Сообщения: 3832
- Зарегистрирован: Сб сен 10, 2011 17:46:25
Re: Котуинко
скорее знает разработчик препроцессора - им мог быть Керниган или Ритчи или например какой ни будь студент
http://lurkmore.to/%D0%92%D1%8B%D1%81%D ... 0%B3%D1%83
«Си» позволяет очень просто выстрелить себе в ногуПрепроцессор С/С++ (англ. pre processor, предобработчик) — программа, подготавливающая код программы на языке C/C++ к компиляции.
http://lurkmore.to/%D0%92%D1%8B%D1%81%D ... 0%B3%D1%83


