Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту


 
Опции темы
Непрочитано 29.06.2013, 22:20  
Вячеслав Мезенцев
Частый гость
 
Аватар для Вячеслав Мезенцев
 
Регистрация: 11.09.2011
Адрес: Екатеринбург
Сообщений: 29
Сказал спасибо: 1
Сказали Спасибо 4 раз(а) в 3 сообщении(ях)
Вячеслав Мезенцев на пути к лучшему
По умолчанию Re: Проблема при симуляции

Сообщение от dosikus Посмотреть сообщение
Подобное еще допустимо на 8ми битках, и то с натягом .
Мало кто оценит сие. Кто выше уровнем имеет и пользует свое .
Я всегда предлагаю поделиться своими соображениями, оформленными в виде конкретного примера из конкретного проекта. И подскажите мне тех, кто по-вашему "выше уровнем". Чтобы я не гадал, укажите на их подходы в конкретных проектах,а то как-то не хорошо получается - сослался на "авторитет" и доволен.
Со мной такое не работает. Один уже слился, кроме болтовни ничего показать не может. Это его уровень, имеет право на существование. Мне же интересно увидеть комплексные подходы, где люди совмещали много разных вещей для реализации проекта на мк.
Я видел один такой подход в ядре модуля ввода-вывода АСУТП, написанного полностью на C++ под IAR, мне приходилось его поддерживать. Вот после поддержки того монстра я и задумался над такими вопросами, как оформление, стандартизация и пр. Тот код был не переносим под gcc.

Цитата:
Чем не устраивает стандартное описание бит регистров ?
Не совсем понял, что означает "стандартное описание бит регистров"? Приведите пример.

Цитата:
Модуль_регистр_бит
И здесь нужно пояснить что вы имели в виду (компилятор, язык, архитектура).

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

Последний раз редактировалось Вячеслав Мезенцев; 29.06.2013 в 22:48.
Вячеслав Мезенцев вне форума  
Непрочитано 29.06.2013, 22:52  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,018
Сказал спасибо: 936
Сказали Спасибо 2,270 раз(а) в 1,565 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: Проблема при симуляции

Вячеслав Мезенцев, Я всегда говорил , что AVR это диагноз.
Почему бы вам не расширить кругозор?
Те же STM8 или ARM . Глядишь и осознали бы всю смехотворность своих потугов.

Примеры ? Да ради бога - вот вам выжимки из хэдеров...
Код:
#define TIM2_CR1_ARPE    ((uint8_t)0x80) /*!‹ Auto-Reload Preload Enable mask. */
#define TIM2_CR1_OPM     ((uint8_t)0x08) /*!‹ One Pulse Mode mask. */
#define TIM2_CR1_URS     ((uint8_t)0x04) /*!‹ Update Request Source mask. */
#define TIM2_CR1_UDIS    ((uint8_t)0x02) /*!‹ Update DIsable mask. */
#define TIM2_CR1_CEN     ((uint8_t)0x01) /*!‹ Counter Enable mask. */


Код:
  
/*******************  Bit definition for ADC_CR2 register  ********************/
#define  ADC_CR2_ADON                        ((uint32_t)0x00000001)        /*!‹ A/D Converter ON / OFF */
#define  ADC_CR2_CONT                        ((uint32_t)0x00000002)        /*!‹ Continuous Conversion */
#define  ADC_CR2_CAL                         ((uint32_t)0x00000004)        /*!‹ A/D Calibration */
#define  ADC_CR2_RSTCAL                      ((uint32_t)0x00000008)        /*!‹ Reset Calibration */
#define  ADC_CR2_DMA                         ((uint32_t)0x00000100)        /*!‹ Direct Memory access mode */
#define  ADC_CR2_ALIGN                       ((uint32_t)0x00000800)        /*!‹ Data Alignment */

#define  ADC_CR2_JEXTSEL                     ((uint32_t)0x00007000)        /*!‹ JEXTSEL[2:0] bits (External event select for injected group) */
#define  ADC_CR2_JEXTSEL_0                   ((uint32_t)0x00001000)        /*!‹ Bit 0 */
#define  ADC_CR2_JEXTSEL_1                   ((uint32_t)0x00002000)        /*!‹ Bit 1 */
#define  ADC_CR2_JEXTSEL_2                   ((uint32_t)0x00004000)        /*!‹ Bit 2 */

#define  ADC_CR2_JEXTTRIG                    ((uint32_t)0x00008000)        /*!‹ External Trigger Conversion mode for injected channels */

#define  ADC_CR2_EXTSEL                      ((uint32_t)0x000E0000)        /*!‹ EXTSEL[2:0] bits (External Event Select for regular group) */
#define  ADC_CR2_EXTSEL_0                    ((uint32_t)0x00020000)        /*!‹ Bit 0 */
#define  ADC_CR2_EXTSEL_1                    ((uint32_t)0x00040000)        /*!‹ Bit 1 */
#define  ADC_CR2_EXTSEL_2                    ((uint32_t)0x00080000)        /*!‹ Bit 2 */

#define  ADC_CR2_EXTTRIG                     ((uint32_t)0x00100000)        /*!‹ External Trigger Conversion mode for regular channels */
#define  ADC_CR2_JSWSTART                    ((uint32_t)0x00200000)        /*!‹ Start Conversion of injected channels */
#define  ADC_CR2_SWSTART                     ((uint32_t)0x00400000)        /*!‹ Start Conversion of regular channels */
#define  ADC_CR2_TSVREFE                     ((uint32_t)0x00800000)        /*!‹ Temperature Sensor and VREFINT Enable */


Что касается вашего оппонента.
Слился он от того , что ни кто уже не может без смеха ваш бред воспринимать .
Я отписываюсь только ради того , что бы нубы вас за гуру не восприняли...
__________________
Осторожно , злой кот

Последний раз редактировалось dosikus; 29.06.2013 в 22:57.
dosikus вне форума  
Непрочитано 29.06.2013, 23:55  
tempora
Почётный гражданин KAZUS.RU
 
Регистрация: 10.01.2007
Сообщений: 3,412
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
tempora на пути к лучшему
По умолчанию Re: Проблема при симуляции

Сообщение от Вячеслав Мезенцев Посмотреть сообщение
Я всегда предлагаю поделиться своими соображениями, ...
Делиться должно быть интересно. Интереса вы, любезный, не вызвали ни как специалист, ни как человек.

Почему ни так, ни этак? Ну, это очень просто. Уровень познаний хорошо просматривается из целой серии высказываний, типа таких:
  • утверждения, что флаг может иметь значения, отличные от true/false,
  • утверждения, что запись обращения к битам регистров вида "TCCR1B.WGM12" невозможно реализовать стандартными средствами Си,
  • мнения о том, что битовое поле, разделенное между регистрами, представляет собою "задачу", какую не стыдно предложить оппоненту,
  • и т.д.
Уровень личных качеств также несложно оценить, как из явных высказываний:
  • вы не соображаете о чём пишите
  • я, в отличие от вас, ...
  • Если вам не понятно что я написал
  • ...
так и из неявных; скажем, из того, как пример кода с "магическим числом" назван более коротким и более наглядным(), чем пример с именованной константой. Окружающим было предложено поверить, что прочтя такой "короткий" код:
Код:
ADMUX = BIN8(01001111); // BIN8() не зависит от уровня оптимизации
//           ||||||||
//           76543210
//           |||||||+- 0, rw, MUX0:  -+ - Analog Channel Selection Bits
//           ||||||+-- 1, rw, MUX1:   |
//           |||||+--- 2, rw, MUX2:   |
//           ||||+---- 3, rw, MUX3:   |
//           |||+----- 4, rw: MUX4:  _|
//           ||+------ 5, rw, ADLAR:    - ADC Left Adjust Result
//           |+------- 6, rw, REFS0: -+ - Reference Selection Bits
//           +-------- 7, rw, REFS1: _|
они по числу '01001111' сразу же поймут, что референсом служит AVCC, а входной мультиплексор работает в дифрежиме 3-2 с усилением 200 крат, а из такого "длинного" кода:
Код:
ADMUX = adcVRef_AVCC | adcMUX32x200;
им это же самое понять будет труднее. Тот, кто считает, что люди проглотят такое передёргивание "либо тяжко болен, либо втайне ненавидит окружающих".

Количество грубых ошибок, нелепых утверждений и передёргиваний таково, что просто смешно полагать, что тут есть что обсуждать, и с кем обсуждать.
Если мантра "я непризнанный гений, просто, все слились" вас, любезный, успокаивает - продолжайте её слушать, но ни пошлостями, ни передёргиваниями, ни хамством вы свое реноме не исправите.
_________________________
1)
Сообщение от Вячеслав Мезенцев Посмотреть сообщение
флаг фактически равен нулю при FALSE, то может иметь значения 2, 3, 255 для TRUE.
2)
Сообщение от Вячеслав Мезенцев Посмотреть сообщение
Если бы можно было писать так: TCCR1B.WGM12, делая имя составным, то это уже как-то бы решало проблему, но этого нет.
Сообщение от Вячеслав Мезенцев Посмотреть сообщение
Либо это нестандарт, тогда программист, использующий это, сам себя наказал непереносимостью, либо мы говорим не про gcc или iar для avr.
3)
Сообщение от Вячеслав Мезенцев Посмотреть сообщение
Когда битовое поле состоит из набора битов, но часть из них находится в одном регистре, а другая - в другом, что вы сделаете в такой ситуации?
__________________
There's always more than one way to skin a cat.
tempora вне форума  
Непрочитано 30.06.2013, 00:44  
Вячеслав Мезенцев
Частый гость
 
Аватар для Вячеслав Мезенцев
 
Регистрация: 11.09.2011
Адрес: Екатеринбург
Сообщений: 29
Сказал спасибо: 1
Сказали Спасибо 4 раз(а) в 3 сообщении(ях)
Вячеслав Мезенцев на пути к лучшему
По умолчанию Re: Проблема при симуляции

Цитата:
Я всегда говорил , что AVR это диагноз.
Почему бы вам не расширить кругозор?
И это ваш ответ? Не используйте, так как это диагноз? И как к вашим комментам после этого относиться?

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

Покажите мне пример библиотек для AVR на этой основе, чего я добиваюсь уже тут несколько страниц. Также я ещё, раз повторяю, покажите пример реального проекта средней сложности для AVR, где этот подход используется. Это нужно, чтобы видеть разнообразие таких конструкций в реальном применении и завязанных между собой.

Ещё раз повторяю и прошу ещё раз посмотреть на исходные файлы проектов, что я прикладывал. Комментирование регистров битов я делал на этапе инициализации периферии мк, во всём остальном коде такое документирование не используется. Причина такого подхода: 1) ясное понимание того, что ты настраиваешь, 2) не нужно постоянно смотреть в datasheet 3) я не видел для архитектуры AVR готовых стандартных заголовочников по типу тех, что вы привели. То, что они имеются для другой платформы не означает автоматически их удобство для AVR. Я пояснил даже почему так может быть - разные наименования регистров и перетасовывание конфигурационных битов от одной mega к другой.

Мне интересно как что-то сделано где-то в другом месте, но так как я использую AVR, предлагать сменить платформу - это неуважение и не только ко мне.

Неужели так трудно привести заголовочники и конкретные проекты с вашим "гуровским" подходом для AVR? Это ниже вашего достоинства? Или вы в своей практике с этим даже и не встречались?

tempora, когда я говорил не объяснять то, чего я не писал, своим потоком сознания, то я был уверен, что хотя бы это до вас дойдёт. Вы упорны в борбе с собой. Успехов вам в этом.

Невежество и неуважение просто поражает. Когда я пишу, что этого нет - это не означает, что этого не может быть. Это есть по умолчанию в некоторых языках типа бейсика или паскаля для AVR, к примеру, в CodeVision, но я не считаю этот вариант хорошим в плане переносимости и не принимаю такие компиляторы в расчёт. Они как бы сами по себе и крутятся в своё мире.
Это означает, что я не могу прямо сейчас взять и использовать готовое решение по типу того, что привёл dosikus. Я же объяснял, я практик. Покажите мне не потенциально возможное, а реально существующее и применяемое для AVR. То, что потенциально возможно не означает, что оно удобно везде, это умствования и причем не далёкие. Только практика показывает как тот или иной подход применим в своей сфере, нише, платформе.

Прошу, снизойдите до практики для платформы AVR. Прошу не предлагать сменить платформу только от того, что на ней что-то работает не так. Прошу быть выше моего уровня "личных качеств" и показать всё то лучшее, что вы взяли от вашего воспитания.

Очень не плохо ваш тип был описан в одном комментарии:
Цитата:
На самом деле вы ничего не предлагается. Вы ведете себя как Гуру, который достиг просветления и ему стали понятны какие-то более высокие материи, чем всем остальным. И куда уж нам тут всем, до Вас - небожителей.
Вместо того, чтобы привести четкий и понятный код, хоть на Си, хоть на ассемблере - и сказать: "Я считаю, что так правильно потому-то и потому-то" (ведь каждый может иметь мнение и опыт, на котором оно основано), вы пишите какими-то намеками, недомолвками и т.п.
Из чего напрашивается вывод - либо вы сами не знаете, как... Либо вы боитесь показать тот код, который считаете правильным, поскольку он может быть подвергнут критике.
Повторяю ещё раз: если потенциально возможное не реализовано в реально существующем, то для доказательства реальной применимости нужно проделать очень большую работу. Могу показать пример, где автор потенциально возможного для доказательства реальной применимости начал реализовывать что-то реальное, что действительно работало: AvrProjects. Там нет проектов средней сложности, скорее тесты возможных применений. Но дело заглохло несколько лет назад.

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

Последний раз редактировалось Вячеслав Мезенцев; 30.06.2013 в 00:48.
Вячеслав Мезенцев вне форума  
Непрочитано 30.06.2013, 00:55  
tempora
Почётный гражданин KAZUS.RU
 
Регистрация: 10.01.2007
Сообщений: 3,412
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
tempora на пути к лучшему
По умолчанию Re: Проблема при симуляции

Сообщение от Вячеслав Мезенцев Посмотреть сообщение
хотя бы это до вас дойдёт
Хамство, снова хамство. Пьянит осознание собственной безнаказанности?
__________________
There's always more than one way to skin a cat.
tempora вне форума  
Непрочитано 30.06.2013, 01:32  
Вячеслав Мезенцев
Частый гость
 
Аватар для Вячеслав Мезенцев
 
Регистрация: 11.09.2011
Адрес: Екатеринбург
Сообщений: 29
Сказал спасибо: 1
Сказали Спасибо 4 раз(а) в 3 сообщении(ях)
Вячеслав Мезенцев на пути к лучшему
По умолчанию Re: Проблема при симуляции

Цитата:
Хамство, снова хамство. Пьянит осознание собственной безнаказанности?
Больны, озабоченны наказаниями? Детство прошло не очень удачно и травмировало психику? Вы бы подумали сначала о том, почему везде вписаны мои координаты (комментируете, не смотря в проекты, что тоже характеризует), а от вас тут есть только анонимоус.

readme.txt
Вячеслав Мезенцев вне форума  
Непрочитано 30.06.2013, 01:35  
tempora
Почётный гражданин KAZUS.RU
 
Регистрация: 10.01.2007
Сообщений: 3,412
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
tempora на пути к лучшему
По умолчанию Re: Проблема при симуляции

Вы "как бы не замечаете", что вас все дружно внесли в список "редиректа"? Разумеется - хочется же сохранить лицо. Однако, поздно.

В сущности, вы уже получили ответ на свои претензии на новизну и "единственно-верность" своего учения:

Сообщение от Halex07 Посмотреть сообщение
Конечно, на первоначальном этапе это подспорье, но потом, поверьте опыту - начинает напрягать... Для себя и спецов - только необходимые комменты, подробное же

разжевывание - только на этапе освоения и обучения.
Сообщение от Halex07 Посмотреть сообщение
еще раз повторюсь - ничего супернового и сногсшибательного в программировании Вы не изобрели...
какое то удобство в вашем подходе к описанию битов есть, особенно для начинающих. Но, впихивать такое в каждый проект - извините.
чтож разрисуйте в том же стиле 32-битный регистр и почувствуйте "полное превосходство" вашего метода.
Сообщение от dosikus Посмотреть сообщение
Подобное еще допустимо на 8ми битках, и то с натягом. ... вы мне напоминаете разработчиков ДРАКОНА , стараясь упростить создаете монстров.
Сообщение от dosikus Посмотреть сообщение
ни кто уже не может без смеха ваш бред воспринимать. Я отписываюсь только ради того , что бы нубы вас за гуру не восприняли...
Сообщение от tempora Посмотреть сообщение
Количество грубых ошибок, нелепых утверждений и передёргиваний таково, что просто смешно полагать, что тут есть что обсуждать, и с кем обсуждать.
Как говорится, сначала вы работали на репутацию, теперь она работает на вас.
__________________
There's always more than one way to skin a cat.
tempora вне форума  
Непрочитано 30.06.2013, 08:13  
Halex07
Супер-модератор
 
Аватар для Halex07
 
Регистрация: 03.05.2007
Сообщений: 2,695
Сказал спасибо: 28
Сказали Спасибо 4,508 раз(а) в 956 сообщении(ях)
Halex07 на пути к лучшему
По умолчанию Re: Проблема при симуляции

Так, я смотрю пока я на даче грядки полол страсти не улеглись...
Хотите продолжить взаимное измерение толщины... "фломастеров" - ВОТ ТОПИК - там и меряйтесь. К Протеусу и конкретно к проблемам симуляции ваш спор никакого отношения не имеет, поэтому тему прикрываю.
Halex07 вне форума  
 

Закладки
Опции темы

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема симуляции схемы в Протеусе Dtolok Proteus 5 22.01.2013 21:48
Проблема с помехами на новом компе Ан-162 Ремонт оргтехники 127 01.10.2012 12:10
Задержки при плавной регулировке. Диммер с ДУ mr_smit Микроконтроллеры, АЦП, память и т.д 78 25.03.2011 00:55
Проблема при использовании модуля передачи через оптоволокно. NikWik_ Микроконтроллеры, АЦП, память и т.д 6 30.05.2010 09:35
Проблема при чтении аудио данных c SD карты IgorAVR2 Микроконтроллеры, АЦП, память и т.д 13 11.08.2008 01:31


Часовой пояс GMT +4, время: 17:19.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot