Easyelectronics.ru

Электроника для всех
Текущее время: 10 дек 2018, 12:26

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




Начать новую тему Ответить на тему  [ Сообщений: 116 ]  На страницу Пред.  1, 2, 3, 4, 5
Автор Сообщение
 Заголовок сообщения: Re: Программная реалицация протокола, например 'I2C'
СообщениеДобавлено: 05 июл 2018, 01:32 
Только пришел

Зарегистрирован: 15 июн 2018, 03:48
Сообщения: 17
dosikus_2 писал(а):
711aa, перед писаниной на асме под арм, попробуйте сперва отмыться от авр.
А свой "шедевр" вытрите от греха подальше, не ровен час какой нибудь идиот воспользуется...

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

VladislavS писал(а):
ААААА!!!!! Как это развидеть теперь?

Блин, ради чего??? Любой компилятор из ногодрыга на С сделает код в разы лучше!!!

Как сказал один из моих самых преданных фанатов:
BusMaster писал(а):
Чел не знает и не хочет учить язык Си, а нам тут мозги трахает

И он был совершенно прав. А вы, раз уж сказали "А", так говорите и "Б", залейте дизассемблированный листинг и сам код на С, а уж я найду ему применение.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Программная реалицация протокола, например 'I2C'
СообщениеДобавлено: 05 июл 2018, 01:37 
Старожил

Зарегистрирован: 26 ноя 2012, 10:28
Сообщения: 3139
Откуда: КЧР, поселок Нижний Архыз
VladislavS писал(а):
Любой компилятор из ногодрыга на С сделает код в разы лучше!!!

Не любой. SDCC под STM8 иной раз такую фигню выдает...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Программная реалицация протокола, например 'I2C'
СообщениеДобавлено: 05 июл 2018, 01:43 
Старожил

Зарегистрирован: 26 ноя 2012, 10:28
Сообщения: 3139
Откуда: КЧР, поселок Нижний Архыз
711aa писал(а):
Можно поконкретнее написать, что не так?

За ручной ногодрыг такого рода на STM32 человек автоматически объявляется калокубщиком и абдуринщиком, т.к. только эти придурки могут такое сделать! Если вам не хватает аппаратного I2C и нет возможности добавить мультиплексор, то делайте уж хоть на таймере с DMA...
// кстати, самые дешевые китайские мультиплексоры отлично подходят для I2C, сам проверил. Разве что если устройств на шине I2C под сотню, лучше мультиплексировать не только SDA, но и SCL (иначе очень уж сильную подтяжку ставить придется).


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Программная реалицация протокола, например 'I2C'
СообщениеДобавлено: 05 июл 2018, 01:44 
Старожил

Зарегистрирован: 08 авг 2013, 09:43
Сообщения: 1269
Ваши вкусы, 711аа, весьма специфичны...
Изображение


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Программная реалицация протокола, например 'I2C'
СообщениеДобавлено: 05 июл 2018, 01:50 
Старожил
Аватара пользователя

Зарегистрирован: 13 янв 2018, 21:36
Сообщения: 577
711aa писал(а):
И он был совершенно прав. А вы, раз уж сказали "А", так говорите и "Б", залейте дизассемблированный листинг и сам код на С, а уж я найду ему применение.

Вот у вас есть функция i2c_send_byte. Написать такую минута с пивком.
Код:
void Send_Byte(uint8_t data)
{   
  PB_6 SDA; PB_7 SCL;
  for (auto mask=0x80U; mask; mask>>=1)
  {   
    SCL=0;
    if(data&mask) SDA=1; else SDA=0;   
    SCL=1;   
  }   
  SCL=0;
};


Вот что делает компилятор.
Show ASM

Задержки сами по вкусу добавляйте.

ЗЫ: А вот мигалка светодиодом
Код:
extern "C" void SysTick_Handler()
{
  if(PB_1 LED_BLUE; LED_BLUE) LED_BLUE=0; else LED_BLUE=1;
}


Show ASM

Ну и ради чего рвать жопу на ASMе?

ЗЗЫ: Или вообще вот так, что в ASM даст один в один что и выше
Код:
extern "C" void SysTick_Handler()
{
  PD_15 LED_BLUE;
  LED_BLUE = !LED_BLUE;
}


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Программная реалицация протокола, например 'I2C'
СообщениеДобавлено: 05 июл 2018, 02:55 
Заглядывает иногда

Зарегистрирован: 06 янв 2014, 17:52
Сообщения: 62
711aa писал(а):
'USB' пока под вопросом, поскольку это в разы проще, чем читать говно-мануалы и разгребать потоки говно-мыслей неких своеобразно мыслящих людей.

Как же трудно жить такому гению среди идиотов захвативших мир! :))))))


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Программная реалицация протокола, например 'I2C'
СообщениеДобавлено: 05 июл 2018, 03:08 
Только пришел

Зарегистрирован: 15 июн 2018, 03:48
Сообщения: 17
Eddy_Em писал(а):
711aa писал(а):
Можно поконкретнее написать, что не так?

За ручной ногодрыг такого рода на STM32 человек автоматически объявляется калокубщиком и абдуринщиком, т.к. только эти придурки могут такое сделать!

И это всё? Нет правда, это вся критика? Я то расчитывал, что старший товарищ укажет на говнокод (с номерами строк), научит как правильно писать, а то ведь у меня и правда опыта с ARM почти что нет, можно сказать первые шаги делаю и я на полном серьёзе готов принять совет, готов учиться, но только ассемблеру и только под ARM.
Я даже готов отказаться от ногодрыжной реализации USB, мой лучший друг уже почти убедил меня в этом.
Вы всерьез считаете, что прозвище 'калокубщик', 'абдуринщик', а так же дебил, мудак, долбоёб, школоло и много других хороших слов, смогут меня остановить?
Если у вас есть конкретные замечания или критика по существу вопроса, я с интересом и благодарностью их приму, а так это какой то "детский лепет на обоссаной лужайке", как говорил командир роты одного моего знакомого. Давайте еще письками меряться начнем.
Так что "шЫдЭвр" пока останется, разве что модератор потрёт, на то специально поставленный.

NStorm писал(а):
Ваши вкусы, 711аа, весьма специфичны...
Изображение

Если это не трансгендер, то тёлка кайфовая, именно такие мне и нравятся, прям самое оно. Или вы о языковых предпочтениях, ну так вы же лучше меня знаете, что о вкусах не спорят, это тупиковая ветка.


VladislavS писал(а):
...

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Программная реалицация протокола, например 'I2C'
СообщениеДобавлено: 05 июл 2018, 08:33 
Старожил

Зарегистрирован: 13 июл 2016, 11:05
Сообщения: 321
когда-то в самом начале я заглянул в систему команд STM32.
Ну его на фиг!
Лучше раздавлю всё себе, наступив на горло, но буду учить Си....


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Программная реалицация протокола, например 'I2C'
СообщениеДобавлено: 05 июл 2018, 08:43 
Старожил
Аватара пользователя

Зарегистрирован: 13 янв 2018, 21:36
Сообщения: 577
Моя заслуга в том что я выбрал правильный инструмент и умею им пользоваться. Благодаря этому, когда "ведомый обосрался", я пишу обработчик этого события, а не " // Здесь ДОЛЖЕН быть обработчик 'NACK', но мне пока лень". На десятке строк кода в будущем вы может и сможете потягаться с С-компилятором (на сегодня вы ему проигрываете даже на паре строк), но на больших проектах вы проиграете всегда и во всём, каким бы виртуозом вы ни стали. И дело не во времени, в конце концов оно ваше, а в качестве разработки. На десятке строк вы уже забили на обработку NACK (время все таки считаете?), а что будет в больших проектах?

Хотелось бы увидеть реализацию USB на ASM. Так, чисто поржать, но боюсь до пенсии, которая теперь совсем не скоро, мне этого не суждено. Реализации USB ногодрыгом, кстати, существуют. Тот же программатор USBASP для AVR на Мега8. Но это не то к чему стоит стремиться.

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


Последний раз редактировалось VladislavS 05 июл 2018, 09:20, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Программная реалицация протокола, например 'I2C'
СообщениеДобавлено: 05 июл 2018, 08:54 
Старожил
Аватара пользователя

Зарегистрирован: 23 сен 2012, 20:35
Сообщения: 2474
711aa писал(а):
А ваша то заслуга в чём, код то не ваш (ассемблерный), ваш только сценарий (на С), на основании которого компилятор написал реальный код, и вашей заслуги в этом, как я уже говорил выше, нет решительно никакой.

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Программная реалицация протокола, например 'I2C'
СообщениеДобавлено: 05 июл 2018, 09:04 
Старожил
Аватара пользователя

Зарегистрирован: 22 июл 2017, 11:48
Сообщения: 2575
Да, как ни странно, "обработчик NACK" - это всего лишь завершение сеанса связи с ЦУПом :))) Это не "передатчик обосрался", это просто "конец связи" :) По крайней мере, интерфейс именно так должен реагировать на NACK. А уж по какой причине завершилась связь - толи "обосрался", толи "задолбался общаться" - это уж второй вопрос, не входящий в компетенцию интерфейса.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Программная реалицация протокола, например 'I2C'
СообщениеДобавлено: 05 июл 2018, 09:20 
Старожил
Аватара пользователя

Зарегистрирован: 13 янв 2018, 21:36
Сообщения: 577
Каждый раз когда открываю листинги испытываю чувство глубокой благодарности тем профессионалам которые написали компилятор. Они избавили меня от необходимости разгребать это $овно и позволили просто программировать.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Программная реалицация протокола, например 'I2C'
СообщениеДобавлено: 05 июл 2018, 09:45 
Старожил
Аватара пользователя

Зарегистрирован: 13 янв 2018, 21:36
Сообщения: 577
711aa писал(а):
тёлка кайфовая, именно такие мне и нравятся, прям самое оно.

Это героиня "50 оттенков серого" :))) Толстый такой намёк на то чем вы занимаетесь.

Кстати, бросайте сценарии на ASM писать, настоящий дзен можно постичь кодируя машинные команды в двоичном виде!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Программная реалицация протокола, например 'I2C'
СообщениеДобавлено: 05 июл 2018, 11:18 
Старожил

Зарегистрирован: 27 мар 2015, 01:22
Сообщения: 1337
711aa, а ты неплохо держишься, респект )
Почитай про макросы в gas и попробуй переписать с макросами
Посмотрим что получится, и может быть я присоединюсь тут к дискуссии gas vs gcc
На стороне gas естественно )


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Программная реалицация протокола, например 'I2C'
СообщениеДобавлено: 05 июл 2018, 12:11 
Старожил

Зарегистрирован: 11 сен 2012, 11:19
Сообщения: 5198
serglg писал(а):
когда-то в самом начале я заглянул в систему команд STM32.


Как интересно...
И где же вы узрели ее?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Программная реалицация протокола, например 'I2C'
СообщениеДобавлено: 05 июл 2018, 12:34 
Старожил

Зарегистрирован: 13 июл 2016, 11:05
Сообщения: 321
dosikus_2 писал(а):
serglg писал(а):
когда-то в самом начале я заглянул в систему команд STM32.


Как интересно...
И где же вы узрели ее?


Хорошо, не так выразился.
Заглянул в окно дизассемблера в Кейле и прошелся по шагам одной строки в Си.
Мне хватило.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 116 ]  На страницу Пред.  1, 2, 3, 4, 5

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


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


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

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

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB