Print Page | Close Window

Робота с экраном BO12864D

Printed From: 123AVR.COM
Category: Общение и обсуждения
Forum Name: Общение по электронике
Forum Description: Тут мобщайтесь, задавайте вопросы и ждите ответы. Предлагайте темы веток - создадим!
URL: http://123avr.com/forum/forum_posts.asp?TID=36
Printed Date: 25 Oct 2018 at 20:36
Software Version: Web Wiz Forums 11.03 - http://www.webwizforums.com


Topic: Робота с экраном BO12864D
Posted By: Guests
Subject: Робота с экраном BO12864D
Date Posted: 24 Feb 2008 at 20:33
 У меня BO12864D, кто нибудь может помочь?
 
Где нибудь мне почитать надо последовательность его включения но в нете ничего не нашел.
У меня так, дошел до того что вижу много точек в разнобой, могу менять контрастность, засвечивать полностью и полностью обнулять. Т.е. команды мой экран понимает, но
немогу записать в память и видить то, что туда записал.
Работа с внутренней памятью наверно нарушена.
Как с ней надо работать бит(команда/инфо) в 1-цу устанавливаю тестером проверил все ок. Что может быть не так. Страницы пробовал переключать, на экране ничего не меняется. Экран всегда показывает только три разных состояния:
разнобой причем всегда одинаковый
полный
пустой
Что я пропустил при пересылке данных
Если кто знает покажите в форуме текст программы кот засвечивает к примеру один пиксель в нужной точке.
 
int send_lcd_byte(char dc, char data)
{
 int i, delay=100;
 LCD_WR(0);
 LCD_DC = dc; 
 LCD_CS = 0;
 LCD_E(1);
 
 LCD_PORT = data;
 LCD_E(0);
 LCD_CS = 1;
 
 //LCD_WR(1);
 //for (i = 0; i < delay; i++) #asm("nop");
}

void main()
{
   int i,j;
   //Turn On             
   send_lcd_byte(0,0xAF);
   //Oscillator on
   send_lcd_byte(0,0xAB);
   //
  
   // Turn on:  Internal voltage booster
   //       Int. regulator
   //     Outpu opamp
 send_lcd_byte(0,0x2F);
 //Converter factor 5X
 send_lcd_byte(0,0x66);
 //icon row
 send_lcd_byte(0,0xA2);
 //Set N-line inversion N = 1
 send_lcd_byte(0,0x48);
 //send_lcd_byte(0,0x48);
 //Remap to 00H
 send_lcd_byte(0,0xA0);
 //send_lcd_byte(0,0xA9);
 //
 send_lcd_byte(0,0xC0);
 //Dark gray mode frame 2nd and 1st
 send_lcd_byte(0,0x8C);
 //Lower column adress = 2
 send_lcd_byte(0,0x02);
 //
 send_lcd_byte(0,0x97);
 send_lcd_byte(0,0x55);
 
 //Contrast
 send_lcd_byte(0,0x81);
 send_lcd_byte(0,0x2F);
 
 send_lcd_byte(0,0x24);
 
 //send_lcd_byte(0,0xF6);
 //send_lcd_byte(0,0x9);   //9,  10,  18  */
 
   //send_lcd_byte(0,0x00);
//   send_lcd_byte(0,0x4);
  
   send_lcd_byte(0,0xE1);

   send_lcd_byte(0,0xB0);

   for ( i = 0; i < 34000; i++) send_lcd_byte(1,0xF0);
 //send_lcd_byte(0,0xA7);
}
 
LCD_E(1), LCD_WR(0) - это макрос
 LCD_DC, LCD_CS - это define 
 
установка 1 и 0 на этих кфг пинах работает, проверял.
 
Экран мой рабочий(все как надо рисуеться) так как подключал его к другому девайсу, но к сожаления с разработчиком поговорить невозможно и кода его программы у меня нет. Что еще может быть, кажется уже все перепробовал?
 
Заранее благодарен.



Print Page | Close Window

Forum Software by Web Wiz Forums® version 11.03 - http://www.webwizforums.com
Copyright ©2001-2015 Web Wiz Ltd. - http://www.webwiz.co.uk