Файлы  •  Ссылки  •  Прошивки  •  Правила  •  Архив  •   FAQ  •  Участники  •  Поиск
Регистрация  •  Вход

Термометр на attiny2313 + lcd

Список форумов» Программное обеспечение» Микроконтроллеры
АвторСообщение
alex6636
Новичок
Сообщения: 17




24-07-2015 18:14

Всем привет! Недавно создал термометр на atmega8 и всё работает отлично. А теперь хочу собрать на attiny2313 + 2 датчика + lcd дисплей 16х2. При компиляции код не поместился, можно ли как нибудь поместить код. Прога написано на языке С в среде Codevisionavr.
Jael.Dace
Участник
Сообщения: 533




25-07-2015 02:31

На ассемблере без проблем влезет, на сях в winavr - тоже. Вероятно, codevision какой-то мусор подключает - надо смотреть, что лишнее и удалять. Можно попробовать скомпилить под другой какой-нибудь чип, загрузить хекс в avr-студию и глянуть в окне дизассемблера что там понапихано.
Если приложишь проект - может смогу подсказать что-то конкретнее.
Кстати есть ещё варианты оптимизации, глянуть и изменить можно в меню: Project > Configure > C Compiler > в поле Optimize for попробуй поставить "Size".
alex6636
Новичок
Сообщения: 17




25-07-2015 19:54

Я посмотрел настройки проекта, там стоит Optimize for -> Size по умолчанию. Вот сам исходник проекта.
Konstantin_18
Участник
Сообщения: 3520




25-07-2015 23:27

alex6636, В приведенном тобой исходнике ( файл T.c )
в принципе ничего нет. Все находится в библиотеках подключаемых инклюдами.
Я бы первым делом отказался от stdio, для работы с LCD можно прекрасно обойтись без нее сэкономив память.
1-Wire библиотека тоже,возможно. с избыточностью.
ПС. 8кб кода на самом деле это достаточно много.
alex6636
Новичок
Сообщения: 17




31-07-2015 21:46

Спасибо Konstantin_18 разобрался с кодом. Я там колдовал с кодом и получилось это:
if(temper2!=temper){ // Если температура не равна
lcd_clear();
lcd_putchar(0x54);
lcd_putchar(0x3d);
lcd_putchar(number[temper/10]);
lcd_putchar(number[temper-((temper/10)*10)]);
lcd_putchar(0xdf);
lcd_putchar(0x43);
}
temper2=temper;

Добавлено 31-07-2015 21:50

Прога не будет выводить температуру на дисплей каждый раз, только при изменений она выводит.
Konstantin_18
Участник
Сообщения: 3520




31-07-2015 23:49

alex6636, stdio - выключил ?
alex6636
Новичок
Сообщения: 17




03-09-2015 20:52

Да выключил, спасибо за поддержку.

Добавлено 03-09-2015 20:57

Неделю назад работал над дисплеем nokia 1202 + atmega8 если у кого то проблемы с этим могу помочь.
Список форумов» Программное обеспечение» Микроконтроллеры» Термометр на attiny2313 + lcd
Перейти:  
Текущий раздел» Программное обеспечение» Микроконтроллеры (Микроконтроллеры - AVR-ы, PIC-и и другие)


Похожая информация:
  • Термометр ATtiny13 + 2 х DS18B20 + LCD
  • Термометр с двумя датчиками на DS18B20 и микроконтроллере
  • NEC IR decoder ATtiny2313 + lcd1110i
  • Замена at90s2313 на attiny2313
  • attiny2313 и PONY PROG








  • Информация по ремонту для специалистов - справочники, инструкции, энциклопедия, советы и секреты ремонта,  настройка, сервисные режимы
    Powered by phpBB 2.0.18 © 2001, 2002 phpBB Group!