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

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

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

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

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

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

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы

UART + Atmega 8

Непрочитано 09.07.2012, 22:32  
kosmos440o
Заблокирован
 
Регистрация: 23.09.2007
Сообщений: 761
Сказал спасибо: 84
Сказали Спасибо 352 раз(а) в 151 сообщении(ях)
kosmos440o на пути к лучшему
По умолчанию Re: UART + Atmega 8

Чтобы пользоваться телевизором и холодильником, не обязательно знать закон Ома.

Высылаю проект в Протеусе и исходник в CVAVR. Всё работает, если у Вас не запустится, придётся поверить, что приложенная картинка из этого проекта.

В отношении Вашей попытки вывести число с float могу с почти 100%-ной уверенностью сказать, что в конфигурации проекта (если у Вас CVAVR) Вы не поставили опцию (s)printf features : float, width, precision. Если бы Вы хорошо знали стандартную функцию stdio, или прочитали книгу Лебедева, о которой я писал ТС, то эту ошибку быстро бы нашли и исправили.

Я сам не крутой специалист, поэтому стараюсь обьяснить попроще и как быстрее сделать. Ведь вывод не главная задача, надеюсь, там будет ещё где изнасиловать мозг. А Ваш пример с указателями я поверхностным взглядом не понял.
Миниатюры:
Нажмите на изображение для увеличения
Название: lcd.jpg
Просмотров: 94
Размер:	200.6 Кб
ID:	36602  
Вложения:
Тип файла: zip LCD.zip (222.2 Кб, 72 просмотров)
Реклама:
kosmos440o вне форума  
Непрочитано 10.07.2012, 11:57  
tempora
Почётный гражданин KAZUS.RUN
 
Регистрация: 10.01.2007
Сообщений: 3,411
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
tempora на пути к лучшему
По умолчанию Re: UART + Atmega 8

Сообщение от kosmos440o Посмотреть сообщение
Вы не поставили опцию (s)printf features : float, width, precision
Нееет, юноша, я-то как раз её поставил - потому и получил приращение размера кода в 3,25Кб.
А вот ты её не поставил, отчего приращение объема кода составило порядка 1К.
Я ведь потому тебе и сказал, что твой проект не выведет float-значения, что в нём стояла опция "int, width" (это её значение по-умолчанию ). Ну, а с опцией "float, width, precision" размер кода, подключаемого вызовом функции семейства printf, превышает-таки 3Кб, о чём тебе все и говорили задолго до того, как ты начал рыться в книжках, увидев, что проект-то и в самом деле не выводит float-значение.
Видишь ли, иногда ошибки хорошо видны, даже если тебе кажется, что они совершенно незаметны.
tempora вне форума  
Непрочитано 10.07.2012, 11:58  
tempora
Почётный гражданин KAZUS.RUN
 
Регистрация: 10.01.2007
Сообщений: 3,411
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
tempora на пути к лучшему
По умолчанию Re: UART + Atmega 8

Сообщение от kosmos440o Посмотреть сообщение
Ваш пример с указателями я поверхностным взглядом не понял
Там же всего два оператора - "в чём проблемы"?

Сообщение от kosmos440o Посмотреть сообщение
Если бы Вы хорошо знали стандартную функцию stdio, или прочитали книгу Лебедева
Не смеши людей.
tempora вне форума  
Непрочитано 10.07.2012, 13:29  
kosmos440o
Заблокирован
 
Регистрация: 23.09.2007
Сообщений: 761
Сказал спасибо: 84
Сказали Спасибо 352 раз(а) в 151 сообщении(ях)
kosmos440o на пути к лучшему
По умолчанию Re: UART + Atmega 8

Сообщение от tempora Посмотреть сообщение
Нееет, юноша, я-то как раз её поставил - потому и получил приращение размера кода в 3,25Кб.
Итак, всё с начала:
1. ТС спрашивал про вывод чисел на LCD.
2. Я предложил использовать sprintf, и выложил проект с unsigned char. Да, там не было опции float. Да. она с float не работает, потому что в ТЗ на неё такой задачи не было.
3. Я выложил кусок кода с float, чтобы показать, что это так же просто, как и с uchar. Программу я не выкладывал. Вы сами прицепили этот кусок к первой программе, и возвестили на весь мир, что программа не работает.

4. Да, программа с float весит 3.5 кБ. Но она есть,работает, и не надо насиловать мозг с указателями, чтобы ещё вывести float по вашей методике. Вы когда-нибудь работали в команде? Знаете, что то, что написал один программист, должен понимать другой, в данном случае и чайник? На это даже ГОСТы есть.То, что у Вас в голове, и недоступно для понимания другим, не имеет никакой цены. Я уже встречался на практике с такими "гениями", после которых всё приходилось переписывать с нуля. Причём, как обычно, они не могут сделать даже описание своей программы. Полёт фантазии мешает. Одно из преимуществ стандартных библиотек в том, что они общеприменимы, на них есть описания, всё уже разжёвано до предела.

Вот это что:
*--s = '0' + (byte % 10);
Хотя бы потрудились прокомментировать, я, допустим, не понимаю. А раз не понимаю, то использовать не буду. У меня есть своя функция для такого вывода, достаточно простая и без указателей. Поэтому ваши советы всего лишь пустое сотрясание воздуха, по моему мнению. К тому же вводите в заблуждение ТС, судя по его посту №22. Теперь он уверен, что стандартых функций вывода для LCD нет.

Я чувствую, что тема превращается в обычный срач, поэтому прошу прощения у всех участников за излишнюю резкость и считаю, что мы раскрыли тему полностью.
kosmos440o вне форума  
Непрочитано 10.07.2012, 13:38  
Easyrider83
Гуру портала
 
Аватар для Easyrider83
 
Регистрация: 27.10.2008
Адрес: ЕС
Сообщений: 10,821
Сказал спасибо: 919
Сказали Спасибо 4,289 раз(а) в 2,570 сообщении(ях)
Easyrider83 на пути к лучшему
По умолчанию Re: UART + Atmega 8

Сообщение от kosmos440o Посмотреть сообщение
Да, программа с float весит 3.5 кБ.
За такое надо с работы выгонять.
Easyrider83 вне форума  
Непрочитано 10.07.2012, 13:46  
tempora
Почётный гражданин KAZUS.RUN
 
Регистрация: 10.01.2007
Сообщений: 3,411
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
tempora на пути к лучшему
По умолчанию Re: UART + Atmega 8

Сообщение от kosmos440o Посмотреть сообщение
Вот это что:
Код:
    *--s = '0' + (byte % 10);
Хотя бы потрудились прокомментировать, я, допустим, не понимаю.
Ну вот, всё и встало на свои места. Успехов в "добраться до Езернета".
tempora вне форума  
Непрочитано 10.07.2012, 14:56  
kosmos440o
Заблокирован
 
Регистрация: 23.09.2007
Сообщений: 761
Сказал спасибо: 84
Сказали Спасибо 352 раз(а) в 151 сообщении(ях)
kosmos440o на пути к лучшему
По умолчанию Re: UART + Atmega 8

Сообщение от tempora Посмотреть сообщение
Ну вот, всё и встало на свои места. Успехов в "добраться до Езернета".
Вы не поверите, но я делаю устройства на Modbus'е. В том числе и на Атмеге8. Практически всё с использованием стандартных функций. Есть и свои, но я стараюсь их не использовать. Указатели практически не использую. Так что это возможно! Первые уже год работают! Modbus весит около 2 кБайт, так что в Атмеге8 ещё место для ПИД-регуляторов и логики остаётся!

Если будет свободное время, желание и возможность заработать на проектах с Ethernet, я думаю, это не составит проблемы.
kosmos440o вне форума  
Непрочитано 10.07.2012, 19:46  
Boba_spb
Почётный гражданин KAZUS.RUN
 
Регистрация: 08.06.2008
Сообщений: 1,393
Сказал спасибо: 4
Сказали Спасибо 183 раз(а) в 167 сообщении(ях)
Boba_spb на пути к лучшему
По умолчанию Re: UART + Atmega 8

Если мы не понимаем что такое *--s = '0' + ( byte % 10) , то до Езернета - как до луны будет ))

Надо на C# писать - там указатели не в чести тоже ))
Boba_spb вне форума  
Непрочитано 10.07.2012, 20:29  
Easyrider83
Гуру портала
 
Аватар для Easyrider83
 
Регистрация: 27.10.2008
Адрес: ЕС
Сообщений: 10,821
Сказал спасибо: 919
Сказали Спасибо 4,289 раз(а) в 2,570 сообщении(ях)
Easyrider83 на пути к лучшему
По умолчанию Re: UART + Atmega 8

Указатели не в чести
А когда память кончится?
Easyrider83 вне форума  
Непрочитано 10.07.2012, 21:06  
Boba_spb
Почётный гражданин KAZUS.RUN
 
Регистрация: 08.06.2008
Сообщений: 1,393
Сказал спасибо: 4
Сказали Спасибо 183 раз(а) в 167 сообщении(ях)
Boba_spb на пути к лучшему
По умолчанию Re: UART + Atmega 8

Ну, если память кончается - то ты не программист, а кодировщик. Сначала задачку надо решить системно - какую железяку использовать, на каком инструменте писать, а не кидаться сразу на клаву как Тузик на сучку. ))
Благо, щас выбор огромный - какой нить stm32f4XX дешевле бутылки водки, а stm8 - бутылки пива )).
Boba_spb вне форума  
 
Опции темы

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ATMEGA простой UART (RS232) без max232 EXIS Микроконтроллеры, АЦП, память и т.д 39 09.12.2010 18:51
Вопрос по формату кадра UART в ATmega-х Don_Ambrosio Микроконтроллеры, АЦП, память и т.д 6 19.03.2008 23:56
UART и WinAVR SpiderHall Микроконтроллеры, АЦП, память и т.д 1 30.10.2006 20:53
UART slawa Микроконтроллеры, АЦП, память и т.д 4 19.01.2006 12:44
UART xaoc Микроконтроллеры, АЦП, память и т.д 13 01.07.2005 09:31


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


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.