Например TDA7294

Форум РадиоКот • Просмотр темы - LCD nokia 3310
Форум РадиоКот
Здесь можно немножко помяукать :)

Текущее время: Вс фев 15, 2026 06:18:09

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


ПРЯМО СЕЙЧАС:



Форум закрыт Эта тема закрыта, Вы не можете редактировать и оставлять сообщения в ней.  [ Сообщений: 231 ]     ... , , , 10, ,  
Автор Сообщение
Не в сети
 Заголовок сообщения: Re: LCD nokia 3310
СообщениеДобавлено: Пн мар 28, 2011 02:21:02 
Родился

Зарегистрирован: Чт фев 10, 2011 12:48:05
Сообщений: 6
Рейтинг сообщения: 0
Всем доброго времени суток. Применяю дисплей от 3310 (оригинальный), вывод данных, управление в стандартном наборе команд - все как надо. Но по какой-то причине не работает ни одна команда из расширенного, причем вне зависимости от того, отправляются ли команды установки Vop, BIAS и TCx или что я в них пишу, дисплей прекрасно отображает данные. Собственно это не так и плохо, но хотелось бы изменять контраст. Инициализирую так:
//настройка портов и аппаратный срос LCD
LcdDdr |= (1<<ChipEnable)|(1<<DataCmd)|(1<<Clk)|(1<<Mosi)|(1<<Res);
LcdPort |= 1<<ChipEnable;
LcdPort &= ~( (1<<DataCmd)|(1<<Clk)|(1<<Mosi)|(1<<Res) );
delay_ms(10);
LcdPort |= (1<<Res);
// блок расширенных команд с текущим дисплеем по какой-то причине не работает
// имеется подозрение что контролер LCD сам определяет оптимальный режим
LCDSend( 0x21, SEND_CMD ); // LCD Extended Commands.
LCDSend( 0x80|0xFF, SEND_CMD ); // Set LCD Vop (Contrast).
LCDSend( 0x06, SEND_CMD ); // Set Temp coefficent.
LCDSend( 0x13, SEND_CMD ); // LCD bias mode 1:48.
LCDSend( 0x20, SEND_CMD ); // LCD Standard Commands, Horizontal addressing mode.
LCDSend( 0x08, SEND_CMD ); // LCD blank
//вывести картинку
LCDSend( 0x0C, SEND_CMD ); // LCD in normal mode.
Затем пишу данные.
Даташит перерыл весь, там сказано что после сброса, внутренний генератор выключен. Однако, получается что включен и настроен, а так же настроены остальные служебные регистры. Подскажите пожалуйста, в чем дело.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: LCD nokia 3310
СообщениеДобавлено: Пт апр 15, 2011 07:40:53 
Встал на лапы

Зарегистрирован: Вс май 10, 2009 18:23:45
Сообщений: 110
Рейтинг сообщения: 0
Подскажите в чем проблема выводятся данные на дисплей через строку и в перевернутом виде, неправильная инициализация или это ни чего не с делать, дисплей китайский. Примеры из статьи на сайте выводять через строку изображения все.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: LCD nokia 3310
СообщениеДобавлено: Сб апр 16, 2011 12:20:12 
Встал на лапы

Зарегистрирован: Вс май 10, 2009 18:23:45
Сообщений: 110
Рейтинг сообщения: 0
Ни кто не сталкивался с такой проблемой что ли? Кстати при том похоже инициализируеца дисплей не весь а так же через строчку,видно при включении поле. Когда выключен все пиксели одинаковые.
Может новые как то по другому надо запускать? В протеуте все нормально. Через поиск не нашел такой касяк.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: LCD nokia 3310
СообщениеДобавлено: Пн апр 18, 2011 21:47:01 
Друг Кота
Аватар пользователя

Карма: 46
Рейтинг сообщений: 590
Зарегистрирован: Вт май 19, 2009 09:27:30
Сообщений: 3258
Откуда: Украина
Рейтинг сообщения: 0
Belerafon, а ты не думал, что тебе дисп "битый" попался? На днях знакомый попросил ему отладочник выЛУТить с диспом и мегой 16й, так ему попался такой, что область отображения смещена влево и вверх, при чём даже на самом телефоне n3310 тоже отображается со смещением :shock: может там вообще стоит неведомый контроллер?


Вернуться наверх
 
Эиком - электронные компоненты и радиодетали
Не в сети
 Заголовок сообщения: Re: LCD nokia 3310
СообщениеДобавлено: Пт май 20, 2011 22:38:06 
Родился

Зарегистрирован: Сб мар 19, 2011 12:23:21
Сообщений: 10
Рейтинг сообщения: 0
Поделюсь и своим проектиком с использованием дисплейчика от Нокиа 3310 на PIC16F628A:
http://www.vnnik71.narod.ru/termo_ds18b20_lcd_nokia3310_pic16f628a.html.
Дисплей использовал оригинальный, вынул из мобильника.

_________________
http://vnnik71.narod.ru


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: LCD nokia 3310
СообщениеДобавлено: Сб май 21, 2011 05:33:20 
Грызет канифоль
Аватар пользователя

Карма: 2
Рейтинг сообщений: 2
Зарегистрирован: Вт июн 15, 2010 07:16:42
Сообщений: 299
Откуда: Иркутск
Рейтинг сообщения: 0
vnnik71 писал(а):
Поделюсь и своим проектиком с использованием дисплейчика от Нокиа 3310 на PIC16F628A:
http://www.vnnik71.narod.ru/termo_ds18b20_lcd_nokia3310_pic16f628a.html.
Дисплей использовал оригинальный, вынул из мобильника.

Без исходников здесь мало кому интересно... :))


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: LCD nokia 3310
СообщениеДобавлено: Вт май 24, 2011 20:18:03 
Нашел транзистор. Понюхал.
Аватар пользователя

Зарегистрирован: Сб июн 26, 2010 21:03:09
Сообщений: 166
Рейтинг сообщения: 0
плисссс Коти помогите нет сил у меня уже к етому дисплею от 3310...(((( в протеусе пашет как и должно прошиваю МК а в реале даже ни одной точки на дисплее нет!! грешу на исходник посмотрите очень прошу Вас ..исходник писали под мегу8 у меня 16 ...почему не работает в реале?(((((( у вас качал на 5 странице под 16 мегу прект и прошивку шил тоже самое что и с моим исходником дисплей робочий 100% та как подключал к телу он пашет...
Код:
#include <mega16.h>
#include <delay.h>
 #include <stdio.h>

//  Mega8 port B pinout for LCD.
#define LCD_DC_PIN      PORTB.6  //D/C
#define LCD_CE_PIN      PORTB.4  //SCE
#define SPI_MOSI_PIN    PORTB.5  //SDIN
#define LCD_RST_PIN     PORTB.0  //RES
#define SPI_CLK_PIN     PORTB.7  //SCLK

//Настройки контроллера дисплея и перменные для работы с ним
unsigned char lcd_buf[14];      //текстовый буфер для вывода на LCD
unsigned char  LcdCache [504];   //массив всех точек (504 оригинал 816 китай)
unsigned int   LcdCacheIdx;     //Cache index





#define LCD_CMD         0
#define LCD_DATA        1

//void LcdChrBold (int ch);                       Печатает символ на текущем месте, большой и жирный)
//void LcdStringBold (unsigned char x, unsigned char y);Печатает большую и жирную строку
//void LcdChrBig (int ch);                                 Печатает символ на текущем месте, большой
//void LcdStringBig (unsigned char x, unsigned char y);   Печатает большую строку

//ASCII
const char table[455]=     //615
{
0x00, 0x00, 0x00, 0x00, 0x00,// 20 space
0x00, 0x00, 0x5F, 0x00, 0x00,// 21 !
0x00, 0x07, 0x00, 0x07, 0x00,// 22 "
0x14, 0x7F, 0x14, 0x7F, 0x14,// 23 #
0x24, 0x2A, 0x7F, 0x2A, 0x12,// 24 $
0x23, 0x13, 0x08, 0x64, 0x62,// 25 %
0x36, 0x49, 0x55, 0x22, 0x50,// 26 &
0x00, 0x05, 0x03, 0x00, 0x00,// 27 '
0x00, 0x1C, 0x22, 0x41, 0x00,// 28 (
0x00, 0x41, 0x22, 0x1C, 0x00,// 29 )
0x14, 0x08, 0x3E, 0x08, 0x14,// 2a *
0x08, 0x08, 0x3E, 0x08, 0x08,// 2b +
0x00, 0x50, 0x30, 0x00, 0x00,// 2c ,
0x08, 0x08, 0x08, 0x08, 0x08,// 2d -
0x00, 0x60, 0x60, 0x00, 0x00,// 2e .
0x20, 0x10, 0x08, 0x04, 0x02,// 2f /
0x3E, 0x51, 0x49, 0x45, 0x3E,// 30 0
0x00, 0x42, 0x7F, 0x40, 0x00,// 31 1
0x42, 0x61, 0x51, 0x49, 0x46,// 32 2
0x21, 0x41, 0x45, 0x4B, 0x31,// 33 3
0x18, 0x14, 0x12, 0x7F, 0x10,// 34 4
0x27, 0x45, 0x45, 0x45, 0x39,// 35 5
0x3C, 0x4A, 0x49, 0x49, 0x30,// 36 6
0x01, 0x71, 0x09, 0x05, 0x03,// 37 7
0x36, 0x49, 0x49, 0x49, 0x36,// 38 8
0x06, 0x49, 0x49, 0x29, 0x1E,// 39 9
0x00, 0x36, 0x36, 0x00, 0x00,// 3a :
0x00, 0x56, 0x36, 0x00, 0x00,// 3b ;
0x08, 0x14, 0x22, 0x41, 0x00,// 3c <
0x14, 0x14, 0x14, 0x14, 0x14,// 3d =
0x00, 0x41, 0x22, 0x14, 0x08,// 3e >
0x02, 0x01, 0x51, 0x09, 0x06,// 3f ?
0x32, 0x49, 0x79, 0x41, 0x3E,// 40 @
0x7E, 0x11, 0x11, 0x11, 0x7E,// 41 A
0x7F, 0x49, 0x49, 0x49, 0x36,// 42 B
0x3E, 0x41, 0x41, 0x41, 0x22,// 43 C
0x7F, 0x41, 0x41, 0x22, 0x1C,// 44 D
0x7F, 0x49, 0x49, 0x49, 0x41,// 45 E
0x7F, 0x09, 0x09, 0x09, 0x01,// 46 F
0x3E, 0x41, 0x49, 0x49, 0x7A,// 47 G
0x7F, 0x08, 0x08, 0x08, 0x7F,// 48 H
0x00, 0x41, 0x7F, 0x41, 0x00,// 49 I
0x20, 0x40, 0x41, 0x3F, 0x01,// 4a J
0x7F, 0x08, 0x14, 0x22, 0x41,// 4b K
0x7F, 0x40, 0x40, 0x40, 0x40,// 4c L
0x7F, 0x02, 0x0C, 0x02, 0x7F,// 4d M
0x7F, 0x04, 0x08, 0x10, 0x7F,// 4e N
0x3E, 0x41, 0x41, 0x41, 0x3E,// 4f O
0x7F, 0x09, 0x09, 0x09, 0x06,// 50 P
0x3E, 0x41, 0x51, 0x21, 0x5E,// 51 Q
0x7F, 0x09, 0x19, 0x29, 0x46,// 52 R
0x46, 0x49, 0x49, 0x49, 0x31,// 53 S
0x01, 0x01, 0x7F, 0x01, 0x01,// 54 T
0x3F, 0x40, 0x40, 0x40, 0x3F,// 55 U
0x1F, 0x20, 0x40, 0x20, 0x1F,// 56 V
0x3F, 0x40, 0x38, 0x40, 0x3F,// 57 W
0x63, 0x14, 0x08, 0x14, 0x63,// 58 X
0x07, 0x08, 0x70, 0x08, 0x07,// 59 Y
0x61, 0x51, 0x49, 0x45, 0x43,// 5a Z
0x00, 0x7F, 0x41, 0x41, 0x00,// 5b [
0x02, 0x04, 0x08, 0x10, 0x20,// 5c Yen Currency Sign
0x00, 0x41, 0x41, 0x7F, 0x00,// 5d ]
0x04, 0x02, 0x01, 0x02, 0x04,// 5e ^
0x40, 0x40, 0x40, 0x40, 0x40,// 5f _
0x00, 0x01, 0x02, 0x04, 0x00,// 60 `
0x20, 0x54, 0x54, 0x54, 0x78,// 61 a
0x7F, 0x48, 0x44, 0x44, 0x38,// 62 b
0x38, 0x44, 0x44, 0x44, 0x20,// 63 c
0x38, 0x44, 0x44, 0x48, 0x7F,// 64 d
0x38, 0x54, 0x54, 0x54, 0x18,// 65 e
0x08, 0x7E, 0x09, 0x01, 0x02,// 66 f
0x0C, 0x52, 0x52, 0x52, 0x3E,// 67 g
0x7F, 0x08, 0x04, 0x04, 0x78,// 68 h
0x00, 0x44, 0x7D, 0x40, 0x00,// 69 i
0x20, 0x40, 0x44, 0x3D, 0x00,// 6a j
0x7F, 0x10, 0x28, 0x44, 0x00,// 6b k
0x00, 0x41, 0x7F, 0x40, 0x00,// 6c l
0x7C, 0x04, 0x18, 0x04, 0x78,// 6d m
0x7C, 0x08, 0x04, 0x04, 0x78,// 6e n
0x38, 0x44, 0x44, 0x44, 0x38,// 6f o
0x7C, 0x14, 0x14, 0x14, 0x08,// 70 p
0x08, 0x14, 0x14, 0x18, 0x7C,// 71 q
0x7C, 0x08, 0x04, 0x04, 0x08,// 72 r
0x48, 0x54, 0x54, 0x54, 0x20,// 73 s
0x04, 0x3F, 0x44, 0x40, 0x20,// 74 t
0x3C, 0x40, 0x40, 0x20, 0x7C,// 75 u
0x1C, 0x20, 0x40, 0x20, 0x1C,// 76 v
0x3C, 0x40, 0x30, 0x40, 0x3C,// 77 w
0x44, 0x28, 0x10, 0x28, 0x44,// 78 x
0x0C, 0x50, 0x50, 0x50, 0x3C,// 79 y
0x44, 0x64, 0x54, 0x4C, 0x44};// 7a z

void LcdSend (unsigned char data, unsigned char cmd) //Sends data to display controller
{
  LCD_CE_PIN = 0;                          //Enable display controller (active low)
   
  if (cmd)                                 //если команда, то
    LCD_DC_PIN = 1;                          //LCD_DC_PIN = 1
 
  else LCD_DC_PIN = 0;                   //SPI Data Register (SPDR)
    SPDR = data;                           //Send data to display controller

  while ( (SPSR & 0x80) != 0x80 );         //Wait until Tx register empty
  LCD_CE_PIN = 1;                          //Disable display controller
}

void LcdUpdate (void)                      //Copies the LCD cache into the device RAM
{
  int i;

  LcdSend(0x80, LCD_CMD);      //команды установки указателя памяти дисплея на 0,0
  LcdSend(0x40, LCD_CMD);

  for (i = 0; i < 504; i++)      //грузим данные (504 оригинал или 816 китай)
  {
    LcdSend(LcdCache[i], LCD_DATA);
  }
}

void LcdClear (void)    //Clears the display
  {
    int i;
                                                //(504 оригинал или 816 китай)
     for (i = 0; i < 504; i++) LcdCache[i] = 0;   //забиваем всю память 0
  }

void LcdInit ( void )   //инициализация SPI и дисплея
{
  LCD_RST_PIN = 1;   //настроили порты ввода/вывода
  delay_ms(50);      //SPI Control Register – SPCR
  SPCR = 0x50;       //Enable SPI: No interrupt, MSBit first, Master mode, CPOL->0, CPHA->0, Clk/4
  LCD_RST_PIN = 0;   //дернули ресет
  delay_ms(500);
  LCD_RST_PIN = 1;
                           
  LCD_CE_PIN = 1;    //Disable LCD controller

  LcdSend( 0x21, LCD_CMD );          //LCD Extended Commands
  LcdSend( 0x06, LCD_CMD );          //Set Temp coefficent
  LcdSend( 0x13, LCD_CMD );          //LCD bias mode 1:48
  LcdSend( 0xAA, LCD_CMD );          //Set LCD Vop (Contrast)0xC5 или 0xC8 - китай  0xAA - ориг.
  LcdSend (0x20, LCD_CMD );       //Horizontal addressing mode. 
   LcdSend (0x0C, LCD_CMD );       //normal mode.             
 
  //LcdClear();   //лишняя после нее переходит на while (1)
};                //где снова очистка

//Sets cursor location to xy location. Range: 1,1 .. 14,6
void LcdGotoXYFont (unsigned char x, unsigned char y)   
{
  if (x <= 14 && y<= 6) LcdCacheIdx = ((int)(y)-1)*84 + ((int)(x)-1)*6;
}

void clean_lcd_buf (void)   //очистка текстового буфера
{
  char i;

  for (i=0; i<14; i++) lcd_buf[i] = 0;
}





//Displays a bold character at current cursor location and increment cursor location
void LcdChrBold (int ch)   
{
  unsigned char i;
  unsigned char a = 0, b = 0, c = 0;

  for ( i = 0; i < 5; i++ )
{
  c = table[((ch*5)-160+i)];              //выделяем столбец из символа

  b =  (c & 0x01) * 3;            //"растягиваем" столбец на два байта
  b |= (c & 0x02) * 6;
  b |= (c & 0x04) * 12;
  b |= (c & 0x08) * 24;

  c >>= 4;
  a =  (c & 0x01) * 3;
  a |= (c & 0x02) * 6;
  a |= (c & 0x04) * 12;
  a |= (c & 0x08) * 24;

  LcdCache[LcdCacheIdx] = b;       //копируем байты в экранный буфер
  LcdCache[LcdCacheIdx+1] = b;    //дублируем для получения жирного шрифта
  LcdCache[LcdCacheIdx+84] = a;
  LcdCache[LcdCacheIdx+85] = a;
  LcdCacheIdx = LcdCacheIdx+2;
  }

  LcdCache[LcdCacheIdx++] = 0x00;   //для пробела между символами
  LcdCache[LcdCacheIdx++] = 0x00;
    }
//Displays a string at current cursor location
void LcdStringBold (unsigned char x, unsigned char y)   
{
unsigned char i;

LcdGotoXYFont (x, y);
for ( i = 0; i < 14-x; i++ ) if (lcd_buf[i]) LcdChrBold (lcd_buf[i]);
clean_lcd_buf();
}
void main(void)
{
 DDRB=0b11110001;       //PORTB.0, PORTB.2 - PORTB.5 на вых.
PORTB=0b11100000;       //подтягивающие резисторы 1 вкл.

LcdInit();
LcdClear();
sprintf (lcd_buf, "I");  //вывод напряжения
        LcdStringBold(4,3);    
LcdUpdate();

}


и ещо файл модели в протеус
и прошика


Вложения:
3310.rar [173.22 KiB]
Скачиваний: 474
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: LCD nokia 3310
СообщениеДобавлено: Ср май 25, 2011 17:22:59 
Нашел транзистор. Понюхал.
Аватар пользователя

Зарегистрирован: Сб июн 26, 2010 21:03:09
Сообщений: 166
Рейтинг сообщения: 0
Я уже разобрался всьо на дисплей виводится вот только когда конденсатор осоединон от ноги Vout и очень светлие букви почему???когда поключаееш дисплей к конденсатору изображение пропадает совсем..


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: LCD nokia 3310
СообщениеДобавлено: Сб май 28, 2011 14:21:37 
Родился

Зарегистрирован: Сб мар 19, 2011 12:23:21
Сообщений: 10
Рейтинг сообщения: 0
Цитата:
Без исходников здесь мало кому интересно... :))

Исходник - здесь: http://termocontrol.elshema.info/index.php/home/45-thermometrsonpic/83-progtermo16f628lcd3310v10s.html :lol:

_________________
http://vnnik71.narod.ru


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: LCD nokia 3310
СообщениеДобавлено: Сб май 28, 2011 20:54:16 
Друг Кота
Аватар пользователя

Карма: 46
Рейтинг сообщений: 590
Зарегистрирован: Вт май 19, 2009 09:27:30
Сообщений: 3258
Откуда: Украина
Рейтинг сообщения: 0
BIGGGI, а ты сам можешь читать ту х...ню, которую ты сам же и пишешь? Тут тебе не падонковский каменто-ср...льник! Или пиши по-человечески, или не пиши вообще, а ср..ть иди в другое место.

По поводу конденсатора проверь монтаж и сам кондёр, возможно где-то достаточно большие утечки. Кондёр лучше всего брать керамический на 10 мкФ - я отпаиваю такие с плат старых сотиков. Как программно увеличить контраст ищи мои (и не только мои) посты выше, есть регистр в самом диспе от содержимого которого зависит контраст.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: LCD nokia 3310
СообщениеДобавлено: Вт июн 07, 2011 15:42:54 
Родился

Зарегистрирован: Вт июн 07, 2011 15:33:29
Сообщений: 4
Рейтинг сообщения: 0
что же вы все на си пишете, а на ассемблере вообще ничего :cry: я вот столкнулся с проблемой - надо подключить экран от nokia 3310 к mega8535 и вывести какой нибудь текст, только на ассемблере а не на си. помогите пожалуйста


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: LCD nokia 3310
СообщениеДобавлено: Чт июн 09, 2011 12:08:51 
Друг Кота
Аватар пользователя

Карма: 25
Рейтинг сообщений: 99
Зарегистрирован: Вс янв 24, 2010 19:19:52
Сообщений: 4468
Откуда: Главный Улей России (Moscow)
Рейтинг сообщения: 0
Первый пост Rimskого на этой странице.
Ссылка: http://radiokot.ru/forum/viewtopic.php?f=20&t=138&start=120

_________________
I am DX168B and this is my favourite forum on internet!


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: LCD nokia 3310
СообщениеДобавлено: Ср июн 15, 2011 15:32:04 
Друг Кота
Аватар пользователя

Карма: 46
Рейтинг сообщений: 590
Зарегистрирован: Вт май 19, 2009 09:27:30
Сообщений: 3258
Откуда: Украина
Рейтинг сообщения: 0
ZiLog писал(а):
что же вы все на си пишете, а на ассемблере вообще ничего :cry: я вот столкнулся с проблемой - надо подключить экран от nokia 3310 к mega8535 и вывести какой нибудь текст, только на ассемблере а не на си. помогите пожалуйста

А в чём критичность вопроса? Си поддерживает ассемблерные вставки. При компилировании проекта Си компиляторы обычно сохраняют листинг на асме, как вариант можешь взять его за основу и подгонять под свои нужды. А вообще Си - это вещь, сам ранее пытался на асме работать, но после того как познакомился 2 года назад с Си, пишу только на Си. Жаль что раньше Си не изучал, а преподавали только бэйсик ассемблер и паскаль.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: LCD nokia 3310
СообщениеДобавлено: Пн сен 12, 2011 09:38:39 
Друг Кота
Аватар пользователя

Карма: 46
Рейтинг сообщений: 590
Зарегистрирован: Вт май 19, 2009 09:27:30
Сообщений: 3258
Откуда: Украина
Рейтинг сообщения: 0
Мужикиии!!! Помогите! Есть самоделка - дозиметр. После ~года пользования появились проблемы с диспом (3310). Вроде как отходили контакты, но как по мне он просто начал глючить сам по себе. При попытке выгнуть плату (текстолит 1мм и со временем его "повело") экран успешно треснул. Купил 2 новых, но они оказались с заниженным контрастом и смещением изображения вверх на 3 пиксела. С контрастом бороться удалось (замена команды инициализации 13h на 14h). Но что делать со смещением??? Фото привожу. На фото видно поле внизу диспа высотой в 3 пикс. "залитые мусором", вверху изображения как раз 3 пикс. не хватает. У кого какие соображения?


Вложения:
003.jpg [140.63 KiB]
Скачиваний: 961
002.jpg [124.69 KiB]
Скачиваний: 4095
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: LCD nokia 3310
СообщениеДобавлено: Пн сен 12, 2011 17:00:40 
Электрический кот
Аватар пользователя

Карма: 19
Рейтинг сообщений: 154
Зарегистрирован: Ср мар 03, 2010 11:48:00
Сообщений: 1004
Откуда: Уфа
Рейтинг сообщения: 0
Вам попался китайский ЖКИ с другим контроллером, эта проблема описывалась неоднократно (видимое поле меньше, чем позволяет контроллер, как по горизонтали, так и по вертикали). Решается несколькими способами, например, сдвинуть изображение на 5 пиклелей и выводить тексты не с 0 строки, а с первой (так уже делал, проверено). Второй способ, это "прокрутить" поле ЖКИ на 64-3=61 пиксель по вертикали и вывод должен получиться, как у оригинала (не проверял). А вообще на форуме есть статья "Драйвер для LCD от Nokia 3310" тут: http://radiokot.ru/articles/29/ Почитайте.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: LCD nokia 3310
СообщениеДобавлено: Вт сен 13, 2011 15:28:50 
Прорезались зубы

Карма: -10
Рейтинг сообщений: -20
Зарегистрирован: Пн окт 04, 2010 11:55:41
Сообщений: 226
Рейтинг сообщения: 0
Всем привет! Решил покурить данную статью http://radiokot.ru/articles/29/, взял за основу драйвер второй с поправками(внизу статьи) и исходники, переписал вывод информации для двух ds18b20 и запустил в Протусе. Вот что получилось:
Изображение
мало того это дело все еще мигает в Протусе, появитяс пропадет, появится пропадет.
Думал в Протусе че то не так, собрал в железе таже фигня, при чем надпись "Термометр" очень тусклая, инфа с датчиков четкая, но не мигает уже
В чем причина может быть. Пробывал закоментить #define china 1, при компиляции ошибка появляется(в форуме кто то упоминал)
вот выложил исходники свои, помогите советом.


Вложения:
02.rar [167.06 KiB]
Скачиваний: 324
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: LCD nokia 3310
СообщениеДобавлено: Пт сен 16, 2011 21:31:26 
Прорезались зубы

Карма: -10
Рейтинг сообщений: -20
Зарегистрирован: Пн окт 04, 2010 11:55:41
Сообщений: 226
Рейтинг сообщения: 0
неужели не кому глянуть, с выводом на экран коректным уже разобрался, но мерцание осталось... в железе собираю, тоже мерцание изоражения есть. вроде все правильно делаю, выручайте народ!


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: LCD nokia 3310
СообщениеДобавлено: Пт сен 16, 2011 21:51:03 
Держит паяльник хвостом
Аватар пользователя

Карма: 9
Рейтинг сообщений: 40
Зарегистрирован: Сб апр 02, 2011 17:59:22
Сообщений: 995
Откуда: Город-герой Севастополь
Рейтинг сообщения: 0
Дисплей подсоединен к МК по той же схеме, что приведена Вами выше, из Протеуса?
Я бы отметил весьма странное подключение конденсатора на Vout. Кондер должен идти с Vout на общий провод (земля, GND), а у Вас мало того, что Vout просто висит на общем, так еще и конденсатор зачем-то включен между GND и CLK. =)
Если схема все же правильная, пишите - будем разбираться. Я как раз имею в наличии освоенные дисплеи от N3310, N3410, 3510i, 1200 и кое-что еще. Можно будет экспериментировать вдоволь.

_________________
pavel_cydenov: Вобще я праAVRославный человек. Но и про ислARM слышал много хорошего )
MrYuran: Самые ортодоксальные — это PICудеи )
Katz: Не, 51-ники. )
Изображение


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: LCD nokia 3310
СообщениеДобавлено: Пт сен 16, 2011 22:54:13 
Прорезались зубы

Карма: -10
Рейтинг сообщений: -20
Зарегистрирован: Пн окт 04, 2010 11:55:41
Сообщений: 226
Рейтинг сообщения: 0
SubDia писал(а):
Дисплей подсоединен к МК по той же схеме, что приведена Вами выше, из Протеуса?
Я бы отметил весьма странное подключение конденсатора на Vout. Кондер должен идти с Vout на общий провод (земля, GND), а у Вас мало того, что Vout просто висит на общем, так еще и конденсатор зачем-то включен между GND и CLK. =)
Если схема все же правильная, пишите - будем разбираться. Я как раз имею в наличии освоенные дисплеи от N3310, N3410, 3510i, 1200 и кое-что еще. Можно будет экспериментировать вдоволь.

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


Вложения:
02.rar [198.47 KiB]
Скачиваний: 327
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Драйвер для LCD от Nokia 3310
СообщениеДобавлено: Пт окт 07, 2011 19:02:31 
Встал на лапы
Аватар пользователя

Карма: -5
Рейтинг сообщений: -3
Зарегистрирован: Пт окт 07, 2011 13:16:48
Сообщений: 92
Рейтинг сообщения: 0
вот пример на асме для простого и дешевого AT89C51\52\55.
русский шрифт .
Схема несохранилась , попробуйте восстановить по исходнику. :solder:
компилируется на ура компилятором METALINK .


Вложения:
ledstor3.zip [7.71 KiB]
Скачиваний: 432
Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Форум закрыт Эта тема закрыта, Вы не можете редактировать и оставлять сообщения в ней.  [ Сообщений: 231 ]     ... , , , 10, ,  

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


Кто сейчас на форуме

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


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

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


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y