Дисплеи, датчики и прочие функциональные узлы, управляемые МК.
Ответить

Пт фев 13, 2009 17:05:03

При включении питания на индикаторе видны заполненные прямоугольники первых 8 разрядов.

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

Пт фев 13, 2009 17:38:25

Без резистора вроде либо все знакоместа должен заливать чёрным, либо совсем ничего не отображать. А тут что-то среднее описывают.

Пт фев 13, 2009 17:58:07

Автор, код программы с инициализацией в студию :))
Будем исправлять ошибки

Пт фев 13, 2009 20:36:15

Секретный кот писал(а):Без резистора вроде либо все знакоместа должен заливать чёрным, либо совсем ничего не отображать. А тут что-то среднее описывают.

У меня с дисплеем от AV светился только 1 ряд.

Пн фев 16, 2009 06:04:14

Программка для проверки ЖКИ.
Начальный код создан с помощью мастера CVAVR.
Резистор 10К в цепи контраста есть. Все соединения контроллер - ЖКИ есть. Пробовал 2 ЖКИ.

#include <mega16>
#asm
.equ __lcd_port=0x15 ;PORTC
#endasm
#include <lcd>
#include <stdio>
char lcd_buffer[17];

void main(void)
{
PORTA=0x00;
DDRA=0x00;
PORTB=0x00;
DDRB=0x00;
PORTC=0x00;
DDRC=0x00;
PORTD=0xAF;
DDRD=0x50;
TCCR0=0x00;
TCNT0=0x00;
OCR0=0x00;
TCCR1A=0x00;
TCCR1B=0x00;
TCNT1H=0x00;
TCNT1L=0x00;
ICR1H=0x00;
ICR1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;
ASSR=0x00;
TCCR2=0x00;
TCNT2=0x00;
OCR2=0x00;
MCUCR=0x00;
MCUCSR=0x00;
TIMSK=0x00;
ACSR=0x80;
SFIOR=0x00;

lcd_init(16);

while (1)
{
if (PIND.0==0)
{PORTD.4=1;
lcd_clear();
lcd_gotoxy(0,0);
sprintf(lcd_buffer,"1");
lcd_puts(lcd_buffer);
}
if (PIND.1==0)
{
PORTD.4=0;
lcd_clear();
lcd_gotoxy(0,0);
sprintf(lcd_buffer,"01");
lcd_puts(lcd_buffer);
}
if (PIND.2==0)
{
PORTD.6=1;
lcd_clear();
lcd_gotoxy(0,0);
sprintf(lcd_buffer,"2");
lcd_puts(lcd_buffer);
}
if (PIND.3==0)
{
PORTD.6=0;
lcd_clear();
lcd_gotoxy(0,0);
sprintf(lcd_buffer,"02");
lcd_puts(lcd_buffer);
}
};
}

Вт фев 24, 2009 18:25:48

У кого нибуть есть Исходник инициализации ЖКИ написанный на Keil uVision?

Чт мар 05, 2009 18:46:11

Ребята спасайте !
На всех портах atmega16 дисплей работает и выводится информация !
а именно на порту C не хочет работать и даже я так понимаю не инициализируется - то есть при включении нижний ряд просто горят чёрные квадратики.

Дисплей 16х2.

У меня уже истерики начинаются ))))))))))))))

Чт мар 05, 2009 18:57:22

kybertech писал(а):Ребята спасайте !
На всех портах atmega16 дисплей работает и выводится информация !
а именно на порту C не хочет работать и даже я так понимаю не инициализируется - то есть при включении нижний ряд просто горят чёрные квадратики.

Дисплей 16х2.

У меня уже истерики начинаются ))))))))))))))

Не надо истерики, JTAG отключите и будет вам щщасте.

Чт мар 05, 2009 19:02:38

smac писал(а):
kybertech писал(а):Ребята спасайте !
На всех портах atmega16 дисплей работает и выводится информация !
а именно на порту C не хочет работать и даже я так понимаю не инициализируется - то есть при включении нижний ряд просто горят чёрные квадратики.

Дисплей 16х2.

У меня уже истерики начинаются ))))))))))))))

Не надо истерики, JTAG отключите и будет вам щщасте.


имеете введу фьюз JTAGEN ?
Я прошиваю через PonyProg и в битах конфигурации установлена галочка на против JTAGEN я так понимаю он и есть выключен

Чт мар 05, 2009 23:11:33

kybertech писал(а):имеете введу фьюз JTAGEN ?
Я прошиваю через PonyProg и в битах конфигурации установлена галочка на против JTAGEN я так понимаю он и есть выключен

Я не знаю что-такое понипрог, но знаю что фьюз JTAGEN должен быть незапрограммирован т. е. согласно документации атмел - быть равен 1.

Чт мар 05, 2009 23:17:16

smac писал(а):
kybertech писал(а):имеете введу фьюз JTAGEN ?
Я прошиваю через PonyProg и в битах конфигурации установлена галочка на против JTAGEN я так понимаю он и есть выключен

Я не знаю что-такое понипрог, но знаю что фьюз JTAGEN должен быть незапрограммирован т. е. согласно документации атмел - быть равен 1.



Так он и не запрограмирован ! - это заводские настройки !


и всёравно экран не пашет на порту С

Пт мар 06, 2009 07:26:11

В понипрог галочку фуза JTAG надо убрать - однозначно
иначе порт С программируется на работу с JTAG для отладки

сам наступал на эти грабли

иногда (редко правда но у меня было) при сбои при программирование от почему то включался сам

Пт мар 06, 2009 12:42:48

dt_andrew писал(а):В понипрог галочку фуза JTAG надо убрать - однозначно
иначе порт С программируется на работу с JTAG для отладки

сам наступал на эти грабли

иногда (редко правда но у меня было) при сбои при программирование от почему то включался сам



А можете подсказать как мне установить фьюзы чтобы
я мог нормально подключить дисплей на порт С кнопки на порт D
на порту а у меня АЦП и включить работу от внешнего кварца на 4 МГц.

Просто вчера в понипрог снял галочку JTAGEN после чего программатор просто перестал видеть контроллер вылетала ошибка постоянно с кодом "-24"

Пт мар 06, 2009 16:38:01

фузы для МЕГИ16
это от другого моего проекта но не важно
http://radiokot.ru/forum/viewtopic.php?p=176287#176287

там правда для кварца на 8 но один хрен что 4 или 8

а кнопки и индикатор цепляйте куда хотите
фузы за это не отвечают

сконфигурируйте порты правильно и все
для пинов с кнопками на вход для индикатора на выход
АЦП тоже на вход

ну и естественно кварц к контроллеру подцепить

и совет на будущее
учите английский и читайте даташиты - очень полезно
в них много интересного написано

надеятся каждый раз что дядя вам все подскажет не надо

да и Вам польза будет при том оч большая
Удачи

Пн мар 09, 2009 16:23:02

C кнопками и АЦП я розабрался да и в протеусе весь проэкт работает отлично и на экран выводит и кнопки работают и измерения все. в общем всё работает а зашил в контроллер экран не работает. датащит я почитаю обязательно просто мне срочно нада.

Пн мар 09, 2009 16:26:54

с экраном тяжело помочь не видя схемы подключения
вашего кода
и типа индикатора

Пн мар 09, 2009 16:33:37

dt_andrew писал(а):с экраном тяжело помочь не видя схемы подключения
вашего кода
и типа индикатора



Я пробывал просто собрать устройство только что бы выводило на экран чё-нить подключеный к порту С и всёравно не работало.

Сейчас всё подготовлю и скину код, модель экрана и схему подключения.

Пн мар 09, 2009 16:35:23

и по установленным фузам тоже инфу

Пн мар 09, 2009 22:12:28

ага ОК
Последний раз редактировалось kybertech Пн мар 09, 2009 22:31:45, всего редактировалось 1 раз.

Пн мар 09, 2009 22:20:34

Вот выкладываю всё как я делал и всёравно не работает на порту С.

Выкладываю скриншот из протеуса, там работает всё замечательно, а вот на собраном устройстве не работает.

Характеристики дисплея:
BC1602AGPLCH$
Bolymin QC OK
081001002 081119
- это всё что на нём написано.
вот тут можно глянуть на его внешний вид http://www.eltis.ua/pics/pic_61e2811b43 ... 1e5f3a.jpg


На МК всегда фьюзы были выставлены по умолчанию, то есть заводсткие.

ещё раз напомню что на других портах дисплей работает нормально.
Как по мне так кажется что всё дело во фьюзах.

И есть ли зависимость устанавливать фьюзы до прошивки или после.

Если дело во фьюзах покажите плз. на примере как они должны быть установлены.
Вложения
podkluchenie.jpg
Скриншот из протеуса, там видно как я подключаю экранчик.
(67.65 KiB) Скачиваний: 1015
test.c
Исходник который выводит на экран текст.
(2.6 KiB) Скачиваний: 520
Ответить