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

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

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

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

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

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

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

 
Опции темы

Библиотека SSD1289

Непрочитано 09.11.2010, 09:34  
Uragan90
Почётный гражданин KAZUS.RUN
 
Аватар для Uragan90
 
Регистрация: 20.09.2009
Сообщений: 1,895
Сказал спасибо: 469
Сказали Спасибо 407 раз(а) в 254 сообщении(ях)
Uragan90 на пути к лучшему
По умолчанию Библиотека SSD1289

Здравствуйте уважаемые!!!
Помогите запустить дисплейчик, ниже код тестовой программы для LPC2368.
PHP код:
#include ‹LPC23xx.H›


#define   FCPU    72000000

#define NULL    ((void *)0)
#define FALSE   (0)
#define TRUE    (1)



#define    SKY          0x5d1c 
#define    BLACK        0x0000
#define    WHITE        0xFFFF
#define    GREEN        0x07E0
#define    BLUE         0x001F
#define    RED          0xF800
#define    YELLOW       0xffe0 
#define    MAGENTA      0xf81f
#define    CYAN         0x07ff
#define    ORANGE       0xfca0 
#define    PINK         0xF97F
#define    BROWN        0x8200
#define    GREY         0x8410
#define    VIOLET       0x9199
#define    SILVER       0xa510
#define    GOLD         0xa508
#define    BEGH         0xf77b
#define    NAVY            0x000F      
#define    DARK_GREEN    0x03E0      
#define    DARK_CYAN    0x03EF      
#define    MAROON        0x7800      
#define    PURPLE        0x780F      
#define    OLIVE        0x7BE0      
#define    LIGHT_GREY    0xC618      
#define    DARK_GREY    0x7BEF


#define CS   (1‹‹16)
#define RS   (1‹‹17)
#define RD   (1‹‹19)
#define WR   (1‹‹18)
#define RES  (1‹‹20)


typedef unsigned char  BYTE;
typedef unsigned short WORD;
typedef unsigned long  DWORD;
typedef unsigned int   BOOL;


void delay_ms(unsigned int ms);
void delay_us(unsigned int us);
void PortInit(void);
void WrCmd(BYTE cmd);
void WrDat(WORD data);
void SetReg(BYTE index, WORD value);
void LcdInit(void);
void SetAddress(WORD addr1, BYTE addr0);
void FillScreen(WORD color);
void SetWindow(BYTE Hstart, BYTE Hend, WORD Vstart, WORD Vend);
void lcd_pset(WORD x, BYTE y, WORD color);
void Load_image(WORD x1, BYTE y1, const unsigned  char  m[]);
void lcd_circ(short xcenter, char ycenter, char rad, int color);
void lcd_line(short x1,char y1,short x2,char y2,int color);
void lcd_rect(short x, char y, short x1, char y1,int color);
void lcd_fillrect(short x, char y, short x1, char y1,int color);
void print_str(unsigned short x1, unsigned char y1, unsigned short int textcolor, unsigned short int backcolor, unsigned char  txt[]);



const  char  ascii_tab1[][12];
unsigned char  CHAR_H = 12, CHAR_W = 8;



void delay_ms(unsigned int ms)
{
 unsigned long tmp = (FCPU / 4500)*ms;
 while(tmp--);
}

void delay_us(unsigned int us)
{
 unsigned long tmp = (FCPU / 4500000)*us;
 while(tmp)
 tmp--;
}



void PortInit(void)    
{
SCS = 1;                     //??????????????????????????           
FIO1SET |= 0x07000003;   //???????????
FIO1DIR |= 0x07FFFF03;   //???????????
}


void WrCmd(BYTE cmd)           //для 16 битной шины
{
    FIO1CLR  |= CS;
    FIO1CLR  |= RS;
    FIO1MASK  = 0xff0000ff;      //??????????????? 
    FIO1PIN  = (long)(cmd‹‹8);  //????????????
    FIO1MASK  = 0;
    FIO1CLR  |= WR;
    FIO1SET  |= WR;
    FIO1SET  |= CS;
}

void WrDat(WORD data)            //для 16 битной шины
{   
    FIO1CLR  |= CS;
    FIO1SET  |= RS;
    FIO1MASK  = 0xff0000ff;     //???????????????????????? 
    FIO1PIN  = (long)(data‹‹8);  //????????????????????
    FIO1MASK  = 0;
    FIO1CLR  |= WR;
    FIO1SET  |= WR;
    FIO1SET  |= CS;
}

void  SetReg(BYTE index, WORD value)
{
    WrCmd(index);
    WrDat(value);
}

void LcdInit(void)
{
 PortInit();
    FIO1CLR |= RES;
    delay_ms(10);
    FIO1SET |= RES;
    
    SetReg(0x00,0x0001);
    delay_ms(10);
    
    SetReg(0x07,0x0000);            //display control(1)
    delay_ms(10);    

    /*** Display Setting ***/    
    SetReg(0x01, 0x6B3f);            //Driver output control (1)   233f
    SetReg(0x02, 0x0600);            //LCD driving control
    SetReg(0x03, 0xA8A6);             //Entry mode

    /*** Power Control ***/
    SetReg(0x07, 0x0033);           
    SetReg(0x11, 0x6838);            
    SetReg(0x0C, 0x0005);
    SetReg(0x0D, 0x300B);
    SetReg(0x0E, 0x2000);    
    SetReg(0x10, 0x0000);
      SetReg(0x1E, 0x00A8);
                                    
    delay_ms(20);
}

void SetAddress(WORD addr1, BYTE addr0)
{
    WrCmd(0x4E);
    WrDat(addr0);
    WrCmd(0x4f);
    WrDat(addr1);
    WrCmd(0x22);
}

void FillScreen(WORD color)
{
    long counter;

    SetAddress(0,0);
    for(counter=0; counter‹(320*240); counter++)
    {
        WrDat(color);
    }
}

void SetWindow(BYTE Hstart, BYTE Hend, WORD Vstart, WORD Vend)    
  { 
    WrCmd(0x44);
    WrDat((WORD)(Hend‹‹8)|Hstart);
    WrCmd(0x45);
    WrDat(Vstart);
    WrCmd(0x46);
    WrDat(Vend);
  }

void lcd_pset(WORD x, BYTE y, WORD color)
{
 SetAddress(x,y);

   WrDat(color);
}

//==================================================  ============================

void Load_image(WORD x1, BYTE y1, const unsigned  char  m[])
 {
  WORD i = 2;
  BYTE y;
  WORD x;
      
 for ( y=y1; y!=y1+m[1];y++)  
  {
  for ( x=x1; x!=m[0]+x1;x++)
   { 
     
      lcd_pset( x,  y, (m[i]‹‹8)|(m[i+1]));
      i+=2;
      
   }
  }          
 }

//**************************************************  ************************************************
void lcd_circ(short xcenter, char ycenter, char rad, int color)
{
  signed short tswitch, y1, x1 = 0;
  char d;

  d = ycenter - xcenter;
  y1 = rad;
  tswitch = 3 - 2 * rad;
  while (x1 ‹= y1) 
  {
    lcd_pset(xcenter + x1, ycenter + y1, color); 
    lcd_pset(xcenter + x1, ycenter - y1, color);
    lcd_pset(xcenter - x1, ycenter + y1, color);   
    lcd_pset(xcenter - x1, ycenter - y1, color);
    lcd_pset(ycenter + y1 - d, ycenter + x1, color); 
    lcd_pset(ycenter + y1 - d, ycenter - x1, color);
    lcd_pset(ycenter - y1 - d, ycenter + x1, color);
    lcd_pset(ycenter - y1 - d, ycenter - x1, color);

    if (tswitch ‹ 0) tswitch += (4 * x1 + 6);
    else 
    {
      tswitch += (4 * (x1 - y1) + 10);
      y1--;
    }
    x1++;
  }
}

//**************************************************  ************************************************           
         
 void lcd_line(short x1,char y1,short x2,char y2,int color)
{ 

signed short  x,y,d,dx,dy,i,i1,i2,kx,ky;
signed char  flag;

dx = x2 - x1;
dy = y2 - y1;
if (dx == 0 && dy == 0) lcd_pset(x1, y1, color);
else
{
kx = 1;
ky = 1;
if( dx ‹ 0 )
{ 
dx = -dx; 
kx = -1; 
}
else
if(dx == 0) kx = 0;
if(dy ‹ 0)
{ 
dy = -dy; 
ky = -1; 
}
if(dx ‹ dy)
{ 
flag = 0; 
d = dx; 
dx = dy; 
dy = d; 
}
else flag = 1;
i1 = dy + dy; 
d = i1 - dx; 
i2 = d - dx;
x = x1; 
y = y1;

for(i=0; i ‹ dx; i++)
{
lcd_pset(x, y, color);
if(flag) x += kx;
else y += ky;
if( d ‹ 0 ) d += i1;
else
{
d += i2;
if(flag) y += ky;
else x += kx;
}
}
lcd_pset(x, y, color);
}
}
//**************************************************  ***** Прямоугольник *******************************
void lcd_rect(short x, char y, short x1, char y1,int color)  
{
lcd_line (x,y,x,y1,color);
lcd_line (x,y,x1,y,color);
lcd_line (x,y1,x1,y1,color);
lcd_line (x1,y,x1,y1,color); 
}

//**************************************************  ***** Pакрашенный прямоугольник *****************************
void lcd_fillrect(short x, char y, short x1, char y1,int color)                 
{
 char i;
 for (i=y; i‹=y1; i++) lcd_line(x,i,x1,i,color);
}

//++++++++++++++++++++++++++++++++++++++++++++++++++  ++++++++++++++++++++++++++++++++++++
//==================================================  ===========================
void print_str(unsigned short x1, unsigned char y1, unsigned short int textcolor, unsigned short int backcolor, unsigned char  txt[])                     
{
unsigned char i=0,y=0,c,h,ch,p,mask;
unsigned short  x=0;
   
  next:   
  while (txt[i]!=0)
  {
  c = txt[i];
   i++;
  if(c==0x0A)
   {y1+=CHAR_H;x1=0;goto next;}
  if(x›311)
   {y1+=CHAR_H;x1=0;}
   y = y1;
   x = x1;
   x1+= CHAR_W;
  
  if(c›0x80)
    c-=0x40;
             
    for (h=0; h‹CHAR_H; h++) // every column of the character
         {
            //if(Font==0)
             //{ 
              //  ch=ascii_tab[ c-32 ][CHAR_H-h-1];    
              //  mask=0x80;
             //}   
            //else   
             
             //{ 
                ch=ascii_tab1[ c-32 ][h];    
                mask=0x80;
             //}   
                              
                   for (p=0; p‹CHAR_W; p++)  // write the pixels      
                   {
                        if (ch&mask)
                        {
                          lcd_pset(x+p, y, textcolor);
                                          
                        }
                        else
                        {
                          lcd_pset(x+p, y, backcolor);
                        }
                        mask=mask/2;
                   }
                        y++;
           }
          
        }
   //lcd_pozition[0]=x/CHAR_W;lcd_pozition[1]=(124-y1)/CHAR_H;     
}


int main(void) //Тест
{
LcdInit();
lcd_rect(43, 166, 274, 233, BLACK);
}


 const  char  ascii_tab1[][12]  = {
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
    0x00, 0x00, 0x18, 0x3C, 0x3C, 0x3C, 0x3C, 0x18, 0x18, 0x00, 0x18, 0x00, //!
    0x00, 0x00, 0x00, 0x66, 0x66, 0x24, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
    0x00, 0x00, 0x00, 0x36, 0x36, 0x7F, 0x36, 0x7F, 0x36, 0x36, 0x00, 0x00, 
    0x00, 0x00, 0x00, 0x18, 0x3E, 0x60, 0x3C, 0x06, 0x7C, 0x18, 0x00, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0xC6, 0xCC, 0x18, 0x30, 0x66, 0xC6, 0x00, 0x00, 
    0x00, 0x00, 0x00, 0x1C, 0x36, 0x1C, 0x3B, 0x6E, 0x66, 0x3B, 0x00, 0x00, 
    0x00, 0x00, 0x00, 0x18, 0x18, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
    0x00, 0x00, 0x0C, 0x18, 0x30, 0x30, 0x30, 0x30, 0x30, 0x18, 0x0C, 0x00, 
    0x00, 0x00, 0x30, 0x18, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x18, 0x30, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0x66, 0x3C, 0x7E, 0x3C, 0x66, 0x00, 0x00, 0x00, 
    0x00, 0x00, 0x00, 0x18, 0x18, 0x7E, 0x7E, 0x18, 0x18, 0x00, 0x00, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x30, 
    0x00, 0x00, 0x00, 0x00, 0x00, 0x7E, 0x7E, 0x00, 0x00, 0x00, 0x00, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 
    0x00, 0x00, 0x00, 0x03, 0x06, 0x0C, 0x18, 0x30, 0x60, 0x40, 0x00, 0x00, 
    0x00, 0x00, 0x3E, 0x63, 0x63, 0x67, 0x6F, 0x7B, 0x73, 0x63, 0x3E, 0x00, //0
    0x00, 0x00, 0x18, 0x38, 0x78, 0x18, 0x18, 0x18, 0x18, 0x18, 0x7E, 0x00, 
    0x00, 0x00, 0x3E, 0x7F, 0x63, 0x03, 0x06, 0x0C, 0x18, 0x33, 0x7F, 0x00, 
    0x00, 0x00, 0x3E, 0x63, 0x03, 0x03, 0x1E, 0x03, 0x03, 0x63, 0x3E, 0x00, 
    0x00, 0x00, 0x0E, 0x1E, 0x36, 0x66, 0x46, 0x7F, 0x06, 0x06, 0x0F, 0x00, 
    0x00, 0x00, 0x7F, 0x7F, 0x60, 0x60, 0x7E, 0x03, 0x03, 0x63, 0x7E, 0x00, 
    0x00, 0x00, 0x3E, 0x61, 0x60, 0x60, 0x7E, 0x63, 0x63, 0x63, 0x3E, 0x00, 
    0x00, 0x00, 0x3F, 0x33, 0x03, 0x03, 0x07, 0x0E, 0x0C, 0x0C, 0x0C, 0x00, 
    0x00, 0x00, 0x3E, 0x63, 0x63, 0x63, 0x3E, 0x63, 0x63, 0x63, 0x3E, 0x00, 
    0x00, 0x00, 0x3E, 0x63, 0x63, 0x63, 0x63, 0x3F, 0x03, 0x06, 0x3C, 0x00, //9
    0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x00, 
    0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, 0x18, 0x18, 0x30, 0x00, 
    0x00, 0x00, 0x00, 0x06, 0x0C, 0x18, 0x30, 0x18, 0x0C, 0x06, 0x00, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0x7E, 0x7E, 0x00, 0x7E, 0x7E, 0x00, 0x00, 0x00, 
    0x00, 0x00, 0x00, 0x30, 0x18, 0x0C, 0x06, 0x0C, 0x18, 0x30, 0x00, 0x00, 
    0x00, 0x00, 0x3E, 0x7F, 0x63, 0x07, 0x06, 0x0C, 0x0C, 0x00, 0x0C, 0x00, 
    0x00, 0x00, 0x3E, 0x63, 0x6B, 0x6B, 0x6B, 0x6F, 0x6E, 0x60, 0x3C, 0x00, 
    0x00, 0x00, 0x1C, 0x36, 0x63, 0x63, 0x63, 0x7F, 0x63, 0x63, 0x63, 0x00, //A
    0x00, 0x00, 0x7E, 0x33, 0x33, 0x33, 0x3E, 0x33, 0x33, 0x33, 0x7E, 0x00, 
    0x00, 0x00, 0x1E, 0x33, 0x60, 0x60, 0x60, 0x60, 0x60, 0x33, 0x1E, 0x00, 
    0x00, 0x00, 0x7C, 0x36, 0x33, 0x33, 0x33, 0x33, 0x33, 0x36, 0x7C, 0x00, 
    0x00, 0x00, 0x7F, 0x31, 0x30, 0x32, 0x3E, 0x32, 0x30, 0x31, 0x7F, 0x00, 
    0x00, 0x00, 0x7F, 0x31, 0x30, 0x32, 0x3E, 0x32, 0x30, 0x30, 0x78, 0x00, 
    0x00, 0x00, 0x1E, 0x33, 0x60, 0x60, 0x60, 0x60, 0x67, 0x33, 0x1D, 0x00, 
    0x00, 0x00, 0x63, 0x63, 0x63, 0x7F, 0x7F, 0x63, 0x63, 0x63, 0x63, 0x00, 
    0x00, 0x00, 0x3C, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x3C, 0x00, 
    0x00, 0x00, 0x0F, 0x06, 0x06, 0x06, 0x06, 0x06, 0x66, 0x66, 0x3C, 0x00, 
    0x00, 0x00, 0x73, 0x33, 0x33, 0x36, 0x3C, 0x34, 0x36, 0x33, 0x73, 0x00, //K
    0x00, 0x00, 0x78, 0x30, 0x30, 0x30, 0x30, 0x30, 0x31, 0x33, 0x7F, 0x00, 
    0x00, 0x00, 0x63, 0x63, 0x77, 0x7F, 0x7F, 0x6B, 0x63, 0x63, 0x63, 0x00, 
    0x00, 0x00, 0x63, 0x63, 0x73, 0x7B, 0x7F, 0x6F, 0x67, 0x63, 0x63, 0x00, 
    0x00, 0x00, 0x3E, 0x63, 0x63, 0x63, 0x63, 0x63, 0x63, 0x63, 0x3E, 0x00, 
    0x00, 0x00, 0x7E, 0x33, 0x33, 0x33, 0x33, 0x3E, 0x30, 0x30, 0x78, 0x00, 
    0x00, 0x00, 0x3E, 0x63, 0x63, 0x63, 0x63, 0x63, 0x67, 0x3E, 0x07, 0x00, 
    0x00, 0x00, 0x7E, 0x33, 0x33, 0x33, 0x33, 0x3E, 0x3C, 0x36, 0x73, 0x00, 
    0x00, 0x00, 0x3E, 0x63, 0x60, 0x30, 0x1C, 0x06, 0x03, 0x63, 0x3E, 0x00, 
    0x00, 0x00, 0x7E, 0x5A, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x3C, 0x00, 
    0x00, 0x00, 0x63, 0x63, 0x63, 0x63, 0x63, 0x63, 0x63, 0x7F, 0x3E, 0x00, 
    0x00, 0x00, 0x63, 0x63, 0x63, 0x63, 0x63, 0x63, 0x36, 0x1C, 0x08, 0x00, 
    0x00, 0x00, 0x63, 0x63, 0x63, 0x6B, 0x6B, 0x6B, 0x7F, 0x3E, 0x14, 0x00, 
    0x00, 0x00, 0x63, 0x63, 0x63, 0x36, 0x1C, 0x36, 0x63, 0x63, 0x63, 0x00, 
    0x00, 0x00, 0x66, 0x66, 0x66, 0x66, 0x7E, 0x3C, 0x18, 0x18, 0x3C, 0x00, 
    0x00, 0x00, 0x7F, 0x63, 0x47, 0x0E, 0x1C, 0x38, 0x71, 0x63, 0x7F, 0x00, //Z
    0x00, 0x3C, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x3C, 
    0x00, 0x00, 0x40, 0x60, 0x30, 0x18, 0x0C, 0x06, 0x03, 0x01, 0x00, 0x00, 
    0x00, 0x3C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x3C, 
    0x00, 0x08, 0x1C, 0x36, 0x63, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 
    0x00, 0x18, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0x3C, 0x06, 0x06, 0x3E, 0x66, 0x66, 0x3B, 0x00, //a
    0x00, 0x00, 0x70, 0x30, 0x30, 0x30, 0x3E, 0x33, 0x33, 0x33, 0x6E, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0x3E, 0x63, 0x60, 0x60, 0x60, 0x63, 0x3E, 0x00, 
    0x00, 0x00, 0x0E, 0x06, 0x06, 0x06, 0x3E, 0x66, 0x66, 0x66, 0x3B, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0x3E, 0x63, 0x63, 0x7F, 0x60, 0x60, 0x3E, 0x00,
    0x00, 0x00, 0x1E, 0x33, 0x33, 0x30, 0x7C, 0x30, 0x30, 0x30, 0x78, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0x3B, 0x66, 0x66, 0x66, 0x3E, 0x06, 0x06, 0x7C, 
    0x00, 0x00, 0x70, 0x30, 0x30, 0x36, 0x3B, 0x33, 0x33, 0x33, 0x73, 0x00, 
    0x00, 0x00, 0x0C, 0x00, 0x1C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x1E, 0x00, 
    0x00, 0x00, 0x06, 0x00, 0x06, 0x06, 0x06, 0x66, 0x66, 0x66, 0x3C, 0x00, 
    0x00, 0x00, 0x70, 0x30, 0x30, 0x33, 0x36, 0x3C, 0x36, 0x36, 0x73, 0x00, //k
    0x00, 0x00, 0x38, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x3C, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0x76, 0x7F, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0x6E, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0x3E, 0x63, 0x63, 0x63, 0x63, 0x63, 0x3E, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0x6E, 0x33, 0x33, 0x33, 0x3E, 0x30, 0x30, 0x78, 
    0x00, 0x00, 0x00, 0x00, 0x3B, 0x66, 0x66, 0x66, 0x3E, 0x06, 0x06, 0x0F, 
    0x00, 0x00, 0x00, 0x00, 0x6E, 0x3B, 0x30, 0x30, 0x30, 0x30, 0x78, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0x3F, 0x60, 0x60, 0x3E, 0x03, 0x03, 0x7E, 0x00, 
    0x00, 0x00, 0x18, 0x18, 0x7E, 0x18, 0x18, 0x18, 0x18, 0x1B, 0x0E, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x3B, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0x63, 0x63, 0x63, 0x63, 0x36, 0x36, 0x1C, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0x63, 0x6B, 0x6B, 0x6B, 0x6B, 0x7F, 0x36, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0x63, 0x63, 0x36, 0x1C, 0x36, 0x63, 0x63, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0x63, 0x63, 0x63, 0x63, 0x3F, 0x03, 0x03, 0x3E, 
    0x00, 0x00, 0x00, 0x00, 0x3F, 0x23, 0x06, 0x0C, 0x18, 0x31, 0x3F, 0x00, //z
    0x00, 0x0E, 0x18, 0x18, 0x18, 0x18, 0x70, 0x18, 0x18, 0x18, 0x18, 0x0E, 
    0x00, 0x00, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x00, 
    0x00, 0x70, 0x18, 0x18, 0x18, 0x18, 0x0E, 0x18, 0x18, 0x18, 0x18, 0x70, 
    0x00, 0x00, 0x00, 0x3B, 0x6E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
    0x00, 0x00, 0x08, 0x1C, 0x36, 0x63, 0x63, 0x7F, 0x00, 0x00, 0x00, 0x00, 
    0x00, 0x00, 0x1F, 0x33, 0x63, 0x63, 0x63, 0x7F, 0x63, 0x63, 0x63, 0x00, //А
    0x00, 0x00, 0x7F, 0x33, 0x33, 0x30, 0x3E, 0x33, 0x33, 0x33, 0x7E, 0x00, 
    0x00, 0x00, 0x7E, 0x33, 0x33, 0x33, 0x3E, 0x33, 0x33, 0x33, 0x7E, 0x00,
    0x00, 0x00, 0x7F, 0x33, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x78, 0x00, 
    0x00, 0x00, 0x0E, 0x1E, 0x36, 0x36, 0x36, 0x36, 0x36, 0x3E, 0x7F, 0x63, 
    0x00, 0x00, 0x7F, 0x31, 0x30, 0x34, 0x3C, 0x34, 0x31, 0x31, 0x7F, 0x00, 
    0x00, 0x00, 0x6B, 0x6B, 0x6B, 0x3E, 0x1C, 0x3E, 0x6B, 0x6B, 0x6B, 0x00, 
    0x00, 0x00, 0x3E, 0x63, 0x63, 0x03, 0x1E, 0x03, 0x63, 0x63, 0x3E, 0x00, 
    0x00, 0x00, 0x63, 0x63, 0x67, 0x6F, 0x7F, 0x7B, 0x73, 0x63, 0x63, 0x00, 
    0x22, 0x1C, 0x63, 0x63, 0x67, 0x6F, 0x7F, 0x7B, 0x73, 0x63, 0x63, 0x00, 
    0x00, 0x00, 0x73, 0x33, 0x33, 0x36, 0x3C, 0x36, 0x33, 0x33, 0x73, 0x00, //К
    0x00, 0x00, 0x0F, 0x1B, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x63, 0x00, 
    0x00, 0x00, 0x63, 0x77, 0x7F, 0x7F, 0x6B, 0x63, 0x63, 0x63, 0x63, 0x00, 
    0x00, 0x00, 0x63, 0x63, 0x63, 0x63, 0x7F, 0x63, 0x63, 0x63, 0x63, 0x00, 
    0x00, 0x00, 0x3E, 0x63, 0x63, 0x63, 0x63, 0x63, 0x63, 0x63, 0x3E, 0x00, 
    0x00, 0x00, 0x7F, 0x63, 0x63, 0x63, 0x63, 0x63, 0x63, 0x63, 0x63, 0x00, 
    0x00, 0x00, 0x7E, 0x33, 0x33, 0x33, 0x33, 0x3E, 0x30, 0x30, 0x78, 0x00, 
    0x00, 0x00, 0x3E, 0x63, 0x60, 0x60, 0x60, 0x60, 0x60, 0x63, 0x3E, 0x00, 
    0x00, 0x00, 0x7E, 0x5A, 0x5A, 0x18, 0x18, 0x18, 0x18, 0x18, 0x3C, 0x00, 
    0x00, 0x00, 0x63, 0x63, 0x63, 0x63, 0x3F, 0x03, 0x03, 0x63, 0x3E, 0x00, 
    0x00, 0x00, 0x3E, 0x6B, 0x6B, 0x6B, 0x6B, 0x3E, 0x08, 0x08, 0x1C, 0x00, 
    0x00, 0x00, 0x63, 0x63, 0x63, 0x36, 0x1C, 0x36, 0x63, 0x63, 0x63, 0x00, 
    0x00, 0x00, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x7F, 0x7F, 0x03, 
    0x00, 0x00, 0x63, 0x63, 0x63, 0x63, 0x3F, 0x03, 0x03, 0x03, 0x03, 0x00, 
    0x00, 0x00, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x7F, 0x7F, 0x00, 
    0x00, 0x00, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xFE, 0xFF, 0x03, //Щ
    0x00, 0x00, 0x78, 0x78, 0x58, 0x18, 0x1E, 0x1B, 0x1B, 0x1B, 0x1E, 0x00, 
    0x00, 0x00, 0x63, 0x63, 0x63, 0x63, 0x7B, 0x6F, 0x6F, 0x6F, 0x7B, 0x00, 
    0x00, 0x00, 0x78, 0x30, 0x30, 0x30, 0x3E, 0x33, 0x33, 0x33, 0x3E, 0x00, 
    0x00, 0x00, 0x3C, 0x46, 0x03, 0x03, 0x1F, 0x03, 0x03, 0x46, 0x3C, 0x00, 
    0x00, 0x00, 0x6E, 0x6B, 0x6B, 0x6B, 0x7B, 0x6B, 0x6B, 0x6B, 0x6E, 0x00, 
    0x00, 0x00, 0x3F, 0x63, 0x63, 0x63, 0x63, 0x3F, 0x33, 0x33, 0x63, 0x00, //Я
    0x00, 0x00, 0x00, 0x00, 0x3C, 0x06, 0x06, 0x3E, 0x66, 0x66, 0x3B, 0x00, //а
    0x00, 0x01, 0x1F, 0x18, 0x0C, 0x06, 0x3A, 0x66, 0x66, 0x66, 0x3C, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0x7E, 0x33, 0x33, 0x3E, 0x33, 0x33, 0x7E, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0x7F, 0x33, 0x30, 0x30, 0x30, 0x30, 0x78, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0x1E, 0x36, 0x36, 0x36, 0x36, 0x36, 0x7F, 0x63, 
    0x00, 0x00, 0x00, 0x00, 0x3E, 0x63, 0x63, 0x7F, 0x60, 0x60, 0x3E, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0x6B, 0x6B, 0x3E, 0x1C, 0x3E, 0x6B, 0x6B, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0x3E, 0x63, 0x03, 0x0E, 0x03, 0x63, 0x3E, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0x63, 0x63, 0x67, 0x6F, 0x7B, 0x73, 0x63, 0x00, 
    0x00, 0x22, 0x1C, 0x00, 0x63, 0x63, 0x67, 0x6F, 0x7B, 0x73, 0x63, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0x73, 0x33, 0x36, 0x3C, 0x36, 0x33, 0x73, 0x00, //к
    0x00, 0x00, 0x00, 0x00, 0x1F, 0x3F, 0x33, 0x33, 0x33, 0x33, 0x73, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0x63, 0x77, 0x7F, 0x7F, 0x6B, 0x63, 0x63, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0x63, 0x63, 0x63, 0x7F, 0x63, 0x63, 0x63, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0x3E, 0x63, 0x63, 0x63, 0x63, 0x63, 0x3E, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0x7F, 0x7F, 0x63, 0x63, 0x63, 0x63, 0x63, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0x7E, 0x33, 0x33, 0x33, 0x3E, 0x30, 0x30, 0x78, 
    0x00, 0x00, 0x00, 0x00, 0x3E, 0x63, 0x60, 0x60, 0x60, 0x63, 0x3E, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0x7E, 0x5A, 0x5A, 0x18, 0x18, 0x18, 0x3C, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0x63, 0x63, 0x63, 0x63, 0x3F, 0x03, 0x03, 0x3E, 
    0x00, 0x00, 0x00, 0x00, 0x3E, 0x6B, 0x6B, 0x6B, 0x3E, 0x08, 0x1C, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0x63, 0x63, 0x36, 0x1C, 0x36, 0x63, 0x63, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x7F, 0x03, 
    0x00, 0x00, 0x00, 0x00, 0x63, 0x63, 0x63, 0x3F, 0x03, 0x03, 0x03, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x6B, 0x7F, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xD6, 0xFF, 0x03, //щ
    0x00, 0x00, 0x00, 0x00, 0x78, 0x58, 0x18, 0x1E, 0x1B, 0x1B, 0x1E, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0x63, 0x63, 0x63, 0x7B, 0x6F, 0x6F, 0x7B, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0x78, 0x30, 0x30, 0x3E, 0x33, 0x33, 0x7E, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0x3E, 0x63, 0x03, 0x0F, 0x03, 0x63, 0x3E, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0x6E, 0x6B, 0x6B, 0x7B, 0x6B, 0x6B, 0x6E, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0x3F, 0x63, 0x63, 0x1F, 0x33, 0x33, 0x63, 0x00, //я
    0x00, 0x00, 0x36, 0x00, 0x3E, 0x63, 0x63, 0x7F, 0x60, 0x60, 0x3E, 0x00, //ё
    0x36, 0x00, 0x7F, 0x31, 0x31, 0x34, 0x3C, 0x34, 0x31, 0x31, 0x7F, 0x00  //Ё
}; 
Код набрал из примеров и вроде ошибок нет, но не понятны некоторые строки которые закоментировал://??????????????
Дисплей подключен на первый порт мк, биты дисплея BBD0-BD15 подсажены на мк P1[0]-P1[23]. ВЫРУЧАЙТЕ!!!
Реклама:
__________________
Я бы изменил весь мир, но бог не дал исходников

Последний раз редактировалось Uragan90; 09.11.2010 в 09:52.
Uragan90 вне форума  
Непрочитано 09.11.2010, 10:33  
kison
Почётный гражданин KAZUS.RUN
 
Регистрация: 13.12.2004
Сообщений: 3,168
Сказал спасибо: 11
Сказали Спасибо 691 раз(а) в 503 сообщении(ях)
kison на пути к лучшему
По умолчанию Re: Библиотека SSD1289

Сообщение от Uragan90 Посмотреть сообщение
биты дисплея BBD0-BD15 подсажены на мк P1[0]-P1[23].
Они не подряд идут? Тормоза будут.
В программе куча мелких косяков. Например все конструкции типа FIO1SET |= WR; должны быть FIO1SET = WR; У того, кто писал этот исходник шина данных висит на 8-23 битах порта. Соответственно данные он перед выводом сдвигает:
FIO1PIN = (long)(data‹‹; //????????????????????
Придется вместо однотактового сдвига данные препарировать - раздвигать.
В общем что успею за 5 минут:
FIO1MASK = 0xff0000ff; //маска вывода, изменяться будут только разряды порта установленные в 0, в данном случае 8-23. Именно туда у автора подключена шина данных. В случае подключения к 0-23 разрядам нужно 0xFF000000
FIO1PIN = (long)(data‹‹; // Собственно вывод. Изменяться только не замаскированные предыдущей командой разряды. Сдвиг не нужен при подключении шины к 0-23 разрядам.

void PortInit(void)
{
SCS = 1; //вкл. быстрых портов, ЕМНИП они в 23хх и так быстрые по умолчанию. На Машу пальцем не испортить
FIO1SET |= 0x07000003; //Вывод какого то значения изначально
FIO1DIR |= 0x07FFFF03; // Разряды = 1 будут выходами.
}
kison вне форума  
Сказали "Спасибо" kison
Uragan90 (09.11.2010)
Непрочитано 09.11.2010, 11:28  
Uragan90
Почётный гражданин KAZUS.RUN
 
Аватар для Uragan90
 
Регистрация: 20.09.2009
Сообщений: 1,895
Сказал спасибо: 469
Сказали Спасибо 407 раз(а) в 254 сообщении(ях)
Uragan90 на пути к лучшему
По умолчанию Re: Библиотека SSD1289

Спасибо, попробую испавить ошибки и прошить мк!
__________________
Я бы изменил весь мир, но бог не дал исходников
Uragan90 вне форума  
Непрочитано 09.11.2010, 12:13  
Uragan90
Почётный гражданин KAZUS.RUN
 
Аватар для Uragan90
 
Регистрация: 20.09.2009
Сообщений: 1,895
Сказал спасибо: 469
Сказали Спасибо 407 раз(а) в 254 сообщении(ях)
Uragan90 на пути к лучшему
По умолчанию Re: Библиотека SSD1289

На моей отладке мк успешно определился, я даже считал начальные значения памяти через флеш меджик. Зашил его прошивой и он не откликается теперь КАРАУЛ ПОМОГИТЕ!
__________________
Я бы изменил весь мир, но бог не дал исходников
Uragan90 вне форума  
Непрочитано 09.11.2010, 12:18  
Uragan90
Почётный гражданин KAZUS.RUN
 
Аватар для Uragan90
 
Регистрация: 20.09.2009
Сообщений: 1,895
Сказал спасибо: 469
Сказали Спасибо 407 раз(а) в 254 сообщении(ях)
Uragan90 на пути к лучшему
По умолчанию Re: Библиотека SSD1289

У меня на мк нет формирования сброса, тоесть ресет сразу на переходник фт232 и более не куда, может в этом косяк? До зашивки через терминал откликался, а теперь нет
__________________
Я бы изменил весь мир, но бог не дал исходников
Uragan90 вне форума  
Непрочитано 09.11.2010, 14:01  
Uragan90
Почётный гражданин KAZUS.RUN
 
Аватар для Uragan90
 
Регистрация: 20.09.2009
Сообщений: 1,895
Сказал спасибо: 469
Сказали Спасибо 407 раз(а) в 254 сообщении(ях)
Uragan90 на пути к лучшему
По умолчанию Re: Библиотека SSD1289

Вреде стал заливать код после манипуляций с драйвером- заливает, стирает, но в терминале флеш меджика попрежнему не работает. Может он и не должен?
__________________
Я бы изменил весь мир, но бог не дал исходников
Uragan90 вне форума  
Непрочитано 09.11.2010, 18:05  
yarunt
Прописка
 
Регистрация: 11.07.2007
Сообщений: 127
Сказал спасибо: 8
Сказали Спасибо 24 раз(а) в 18 сообщении(ях)
yarunt на пути к лучшему
По умолчанию Re: Библиотека SSD1289

Незнаю как тут подключить код,отправил проектом. Данные с P1.8-P1.23 пины. Управление так CS-P1[24], RS-P1[25],WR-P1[26],RD-P1[27], RES-P1[28].
Перезалил архив,в отладчике увидел ошибку ,не передергивал RS
Вложения:
Тип файла: rar LCD2.rar (91.9 Кб, 206 просмотров)

Последний раз редактировалось yarunt; 09.11.2010 в 18:17.
yarunt вне форума  
Сказали "Спасибо" yarunt
Uragan90 (09.11.2010)
Непрочитано 09.11.2010, 18:33  
kison
Почётный гражданин KAZUS.RUN
 
Регистрация: 13.12.2004
Сообщений: 3,168
Сказал спасибо: 11
Сказали Спасибо 691 раз(а) в 503 сообщении(ях)
kison на пути к лучшему
По умолчанию Re: Библиотека SSD1289

Походу один и тот же исходник. И косяки все те же. Зачем делать FIO1CLR |= RS; если регистр FIO1CLR специально предназначен для исключения операции чтения? Или контроллер кажется слишком шустрым, что притормозить хочется?
kison вне форума  
Непрочитано 09.11.2010, 18:42  
yarunt
Прописка
 
Регистрация: 11.07.2007
Сообщений: 127
Сказал спасибо: 8
Сказали Спасибо 24 раз(а) в 18 сообщении(ях)
yarunt на пути к лучшему
По умолчанию Re: Библиотека SSD1289

Сообщение от kison Посмотреть сообщение
Походу один и тот же исходник. И косяки все те же. Зачем делать FIO1CLR |= RS; если регистр FIO1CLR специально предназначен для исключения операции чтения? Или контроллер кажется слишком шустрым, что притормозить хочется?
Это чтоб наверняка заработал проект,а дальше причешим проект.
yarunt вне форума  
Непрочитано 09.11.2010, 18:44  
Uragan90
Почётный гражданин KAZUS.RUN
 
Аватар для Uragan90
 
Регистрация: 20.09.2009
Сообщений: 1,895
Сказал спасибо: 469
Сказали Спасибо 407 раз(а) в 254 сообщении(ях)
Uragan90 на пути к лучшему
По умолчанию Re: Библиотека SSD1289

yarunt, Спасибо, конечно но к сожалению опять не катит А зачем с 8 по 23??? Надо с 0 по 23!! Прц шется нормально вроди и ни фига
__________________
Я бы изменил весь мир, но бог не дал исходников
Uragan90 вне форума  
 
Опции темы

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Библиотека для работы с меню графического индикатора Tvenn Микроконтроллеры, АЦП, память и т.д 30 15.02.2011 17:41
Существует ли AT91SAM7Sxxx библиотека для Proteus? projects.org.ua Proteus 4 29.10.2010 02:09
Библиотека для создания меню, для графического индикатора Tvenn Микроконтроллеры, АЦП, память и т.д 2 03.09.2010 10:38
Библиотека последовательного доступа для AT45DB161, порт CodeVision LVII Микроконтроллеры, АЦП, память и т.д 4 19.06.2010 03:32


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


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