Global Struct Tanımlama

Başlatan Mucit23, 23 Kasım 2016, 17:18:38

Mucit23

Selamlar,

Bu konuda bir sorunum var.

STM32F407 ve LCD ile uğraşırken Font dosyalarını bir struct ile tanımlandığını görmüştüm. P10 Panellerle uğraşırken aynı yapıyı CCS ye uydurmuştum. Şuanda yine PSOC Creator derleyicine aynı yapıyı uydurmaya çalışıyorum.

Font için kullanılan struct aşağıdaki gibi tanımlı

typedef struct _tFont
{    
  const uint8 *table;
  uint8 Width;
  uint8 Height;
  
} sFONT;


Font ile ilgili bütün datalar sFONT yapısı altında toplanıyor.

Font8x8.c, Font8x12.c gibi font dosyalarım var. İçerisinde const uint8 Font8_Table[] = {... } şeklinde dizi olarak font datalarını tutuyorum.

Font bilgilerinide sFONT şeklinde bir yapı tanımlayıp içerisine kaydediyorum. Tam olarak şu şekilde
sFONT Font8x8 = {
  Font8_Table,
  8 , /* Width */
  8, /* Height */
};


Sorunum ise tam olarak şudur.

Bu font dosyalarına global olarak erişemiyorum. Yukarıda tanımlamış olduğum sFONT türündeki Font8x8 yapısını Font dosyaların dibine tanımlıyorum. Örnek olarak Font8x8.c dosyasını vereyim.

/**
  ******************************************************************************
  * @file    Font12.c
  * @author  Ferhat YOL
  * @version V1.0.0
  * @date    18-Haziran-2016
  * @brief   Font data for Courier New 8pt 
  ******************************************************************************
  * @attention
*/
#include <project.h>
#include <P10_Panel_Driver.h>  

const uint8 Font8_Table[] = 
{
   // @0 ' ' (7 pixels wide)
   0x00, //        
   0x00, //        
   0x00, //        
   0x00, //        
   0x00, //        
   0x00, //        
   0x00, //
   0x00, //

   // @12 '!' (7 pixels wide)
     
   0x10, //    #   
   0x10, //    # 
   0x10, //    #     
   0x10, //    #   
   0x00, //            
   0x10, //    #   
   0x00, //  
   0x00, //
     

   // @24 '"' (7 pixels wide)       
   0x6C, //  ## ## 
   0x48, //  #  #  
   0x48, //  #  #  
   0x00, //            
   0x00, //        
   0x00, //              
   0x00, // 
   0x00, //

   // @36 '#' (7 pixels wide)      
   0x14, //    # # 
   0x28, //   # #  
   0x7C, //  ##### 
   0x28, //   # #  
   0x7C, //  ##### 
   0x28, //   # #  
   0x50, //  # # 
   0x00, //

   // @48 '$' (7 pixels wide)        
   0x10, //    #   
   0x38, //   ###      
   0x40, //  #     
   0x38, //   ###  
   0x48, //  #  #  
   0x70, //  ###   
   0x10, //    #  
   0x00, //
   // @60 '%' (7 pixels wide)     
   0x20, //   #    
   0x50, //  # #   
   0x20, //   #    
   0x0C, //     ##  
   0x08, //     #  
   0x14, //    # # 
   0x08, //     # 
   0x00, //

   // @72 '&' (7 pixels wide)                  
   0x18, //    ##  
   0x20, //   #    
   0x20, //   #    
   0x54, //  # # # 
   0x48, //  #  #  
   0x34, //   ## # 
   0x00, //       
   0x00, //

   // @84 ''' (7 pixels wide)     
   0x10, //    #   
   0x10, //    #   
   0x10, //    #   
   0x10, //    #   
   0x00, //                
   0x00, //        
   0x00, //    
   0x00, //

   // @96 '(' (7 pixels wide)     
   0x08, //     #  
   0x08, //     #  
   0x10, //    #       
   0x10, //    #   
   0x10, //    #   
   0x08, //     #  
   0x08, //     # 
   0x00, //
  
   // @108 ')' (7 pixels wide)       
   0x20, //   #    
   0x20, //   #    
   0x10, //    #      
   0x10, //    #   
   0x10, //    #   
   0x20, //   #    
   0x20, //   # 
   0x00, //

   // @120 '*' (7 pixels wide)
   0x00, //        
   0x10, //    #   
   0x7C, //  ##### 
   0x10, //    #   
   0x28, //   # #  
   0x28, //   # #         
   0x00, //     
   0x00, //

   // @132 '+' (7 pixels wide)         
   0x00, //
   0x10, //    #   
   0x10, //    #   
   0xFE, // #######
   0x10, //    #   
   0x10, //    #     
   0x00, //  
   0x00, //
   
   // @144 ',' (7 pixels wide)                 
   0x00, //        
   0x00, //        
   0x18, //    ##  
   0x10, //    #   
   0x30, //   ##   
   0x20, //   #    
   0x00, //     
   0x00, //

   // @156 '-' (7 pixels wide)      
   0x00, //        
   0x00, //        
   0x00, //        
   0x7C, //  ##### 
   0x00, //        
   0x00, //        
   0x00, //   
   0x00, //

   // @168 '.' (7 pixels wide)
   0x00, //              
   0x00, //        
   0x00, //        
   0x00, //        
   0x30, //   ##   
   0x30, //   ##   
   0x00, //  
   0x00, //

   // @180 '/' (7 pixels wide)    
   0x04, //      # 
   0x04, //      # 
   0x08, //     #  
   0x10, //    #   
   0x20, //   #    
   0x20, //   #    
   0x40, //  #   
   0x00, //

   // @192 '0' (7 pixels wide)       
   0x38, //   ###  
   0x44, //  #   # 
   0x44, //  #   # 
   0x44, //  #   # 
   0x44, //  #   # 
   0x44, //  #   # 
   0x38, //   ###               
   0x00, //
   // @204 '1' (7 pixels wide)        
   0x30, //   ##   
   0x10, //    #   
   0x10, //    #     
   0x10, //    #   
   0x10, //    #   
   0x10, //    #   
   0x7C, //  #####  
   0x00, //

   // @216 '2' (7 pixels wide)    
   0x38, //   ###  
   0x44, //  #   # 
   0x04, //      # 
   0x08, //     #    
   0x20, //   #    
   0x44, //  #   # 
   0x7C, //  ##### 
   0x00, //

   // @228 '3' (7 pixels wide)        
   0x38, //   ###  
   0x44, //  #   # 
   0x04, //      # 
   0x18, //    ##  
   0x04, //      # 
   0x44, //  #   # 
   0x38, //   ###   
   0x00, //

   // @240 '4' (7 pixels wide)     
   0x0C, //     ## 
   0x14, //    # # 
   0x24, //   #  # 
   0x44, //  #   # 
   0x7E, //  ######
   0x04, //      # 
   0x0E, //     ###  
   0x00, //

   // @252 '5' (7 pixels wide)        
   0x3C, //   #### 
   0x20, //   #    
   0x20, //   #    
   0x38, //   ###  
   0x04, //      # 
   0x44, //  #   # 
   0x38, //   ###  
   0x00, //

   // @264 '6' (7 pixels wide)        
   0x1C, //    ### 
   0x20, //   #    
   0x40, //  #     
   0x78, //  ####  
   0x44, //  #   # 
   0x44, //  #   # 
   0x38, //   ###   
   0x00, //
   
   // @276 '7' (7 pixels wide)     
   0x7C, //  ##### 
   0x44, //  #   # 
   0x04, //      # 
   0x08, //     #  
   0x08, //     #  
   0x10, //    #   
   0x10, //    #     
   0x00, //
      

   // @288 '8' (7 pixels wide)      
   0x38, //   ###  
   0x44, //  #   # 
   0x44, //  #   # 
   0x38, //   ###  
   0x44, //  #   # 
   0x44, //  #   # 
   0x38, //   ###     
   0x00, //

   // @300 '9' (7 pixels wide)       
   0x38, //   ###  
   0x44, //  #   # 
   0x44, //  #   # 
   0x3C, //   #### 
   0x04, //      # 
   0x08, //     #  
   0x70, //  ###       
   0x00, //

   // @312 ':' (7 pixels wide)            
   0x00, //        
   0x30, //   ##   
   0x30, //   ##   
   0x00, //        
   0x00, //        
   0x30, //   ##   
   0x30, //   ##   
   0x00, //

   // @324 ';' (7 pixels wide)                    
   0x18, //    ##  
   0x18, //    ##  
   0x00, //        
   0x00, //        
   0x18, //    ##  
   0x30, //   ##   
   0x20, //   #   
   0x00, //

   // @336 '<' (7 pixels wide)           
   0x0C, //     ## 
   0x10, //    #   
   0x60, //  ##    
   0x80, // #      
   0x60, //  ##    
   0x10, //    #   
   0x0C, //     ##    
   0x00, //

   // @348 '=' (7 pixels wide)
   0x00, //                    
   0x00, //        
   0x7C, //  ##### 
   0x00, //        
   0x7C, //  ##### 
   0x00, //        
   0x00, //  
   0x00, //  

   // @360 '>' (7 pixels wide)             
   0xC0, // ##     
   0x20, //   #    
   0x18, //    ##  
   0x04, //      # 
   0x18, //    ##  
   0x20, //   #    
   0xC0, // ##    
   0x00, //  

   // @372 '?' (7 pixels wide)             
   0x18, //    ##  
   0x24, //   #  # 
   0x04, //      # 
   0x08, //     #  
   0x10, //    #   
   0x00, //        
   0x30, //   ##    
   0x00, //  

   // @384 '@' (7 pixels wide)
   0x38, //   ###  
   0x44, //  #   # 
   0x4C, //  #  ## 
   0x4C, //  #  ## 
   0x40, //  #
   0x44, //  #   # 
   0x38, //   ###   
   0x00, //  

   // @396 'A' (7 pixels wide)    
   0x30, //   ##   
   0x10, //    #   
   0x28, //   # #    
   0x28, //   # #  
   0x7C, //  ##### 
   0x44, //  #   # 
   0xEE, // ### ### 
   0x00, //  

   // @408 'B' (7 pixels wide)      
   0xF8, // #####  
   0x44, //  #   # 
   0x44, //  #   # 
   0x78, //  ####  
   0x44, //  #   # 
   0x44, //  #   # 
   0xF8, // ##### 
   0x00, //  

   // @420 'C' (7 pixels wide)     
   0x3C, //   #### 
   0x44, //  #   # 
   0x40, //  #         
   0x40, //  #     
   0x40, //  #     
   0x44, //  #   # 
   0x38, //   ###    
   0x00, //  

   // @432 'D' (7 pixels wide)      
   0xF0, // ####   
   0x48, //  #  #  
   0x44, //  #   # 
   0x44, //  #   # 
   0x44, //  #   # 
   0x48, //  #  #  
   0xF0, // #### 
   0x00, //  

   // [member=401]444[/member] 'E' (7 pixels wide)      
   0xFC, // ###### 
   0x44, //  #   # 
   0x50, //  # #   
   0x70, //  ###   
   0x50, //  # #     
   0x44, //  #   # 
   0xFC, // ######   
   0x00, //  
   
   // @456 'F' (7 pixels wide)      
   0x7E, //  ######
   0x22, //   #   #
   0x28, //   # #  
   0x38, //   ###  
   0x28, //   # #     
   0x20, //   #    
   0x70, //  ###   
   0x00, //  

   // @468 'G' (7 pixels wide)     
   0x3C, //   #### 
   0x44, //  #   # 
   0x40, //  #        
   0x4E, //  #  ###
   0x44, //  #   # 
   0x44, //  #   # 
   0x38, //   ###      
   0x00, //  

   // @480 'H' (7 pixels wide)      
   0xEE, // ### ###
   0x44, //  #   # 
   0x44, //  #   # 
   0x7C, //  ##### 
   0x44, //  #   # 
   0x44, //  #   # 
   0xEE, // ### ###  
   0x00, //  

   // @492 'I' (7 pixels wide)      
   0x7C, //  ##### 
   0x10, //    #   
   0x10, //    #   
   0x10, //    #   
   0x10, //    #   
   0x10, //    #   
   0x7C, //  #####  
   0x00, //  
   
   // @504 'J' (7 pixels wide)   
   0x3C, //   #### 
   0x08, //     #  
   0x08, //     #  
   0x48, //  #  #  
   0x48, //  #  #  
   0x48, //  #  #  
   0x30, //   ##  
   0x00, //  

   // @516 'K' (7 pixels wide)      
   0xEE, // ### ###
   0x44, //  #   #  
   0x50, //  # #   
   0x70, //  ###   
   0x48, //  #  #  
   0x44, //  #   # 
   0xE6, // ###  ## 
   0x00, //  

   // @528 'L' (7 pixels wide)       
   0x70, //  ###   
   0x20, //   #     
   0x20, //   #    
   0x20, //   #    
   0x24, //   #  # 
   0x24, //   #  # 
   0x7C, //  #####   
   0x00, //  
   
   // @540 'M' (7 pixels wide)    
   0xEE, // ### ###
   0x6C, //  ## ## 
   0x6C, //  ## ## 
   0x54, //  # # # 
   0x54, //  # # # 
   0x44, //  #   # 
   0xEE, // ### ###    
   0x00, //  

   // @552 'N' (7 pixels wide)      
   0xEE, // ### ###
   0x64, //  ##  # 
   0x64, //  ##  # 
   0x54, //  # # # 
   0x54, //  # # # 
   0x4C, //  #  ## 
   0xEC, // ### ## 
   0x00, //  
   
   // @564 'O' (7 pixels wide)     
   0x38, //   ###  
   0x44, //  #   # 
   0x44, //  #   # 
   0x44, //  #   # 
   0x44, //  #   # 
   0x44, //  #   # 
   0x38, //   ###  
   0x00, //  
   
   // @576 'P' (7 pixels wide)       
   0x78, //  ####  
   0x24, //   #  # 
   0x24, //   #  # 
   0x38, //   ###  
   0x20, //   #    
   0x20, //   #    
   0x70, //  ###  
   0x00, //  
   
   // @588 'Q' (7 pixels wide)        
   0x38, //   ###  
   0x44, //  #   # 
   0x44, //  #   # 
   0x44, //  #   # 
   0x44, //  #   # 
   0x38, //   ###  
   0x1C, //    ###
   0x00, //  

   // @600 'R' (7 pixels wide)        
   0xF8, // #####  
   0x44, //  #   # 
   0x44, //  #   # 
   0x78, //  ####  
   0x48, //  #  #  
   0x44, //  #   # 
   0xE2, // ###   #  
   0x00, //  

   // @612 'S' (7 pixels wide)      
   0x34, //   ## # 
   0x4C, //  #  ## 
   0x40, //  #     
   0x38, //   ###  
   0x04, //      # 
   0x64, //  ##  # 
   0x58, //  # ##  
   0x00, //  

   // @624 'T' (7 pixels wide)        
   0xFE, // #######
   0x92, // #  #  #
   0x10, //    #   
   0x10, //    #   
   0x10, //    #   
   0x10, //    #   
   0x38, //   ###      
   0x00, //  

   // @636 'U' (7 pixels wide)       
   0xEE, // ### ###
   0x44, //  #   # 
   0x44, //  #   #  
   0x44, //  #   # 
   0x44, //  #   # 
   0x44, //  #   # 
   0x38, //   ###  
   0x00, //  
   
   // @648 'V' (7 pixels wide)       
   0xEE, // ### ###
   0x44, //  #   # 
   0x44, //  #   # 
   0x28, //   # #  
   0x28, //   # #  
   0x10, //    #   
   0x10, //    # 
   0x00, //  

   // @660 'W' (7 pixels wide)      
   0xEE, // ### ###
   0x44, //  #   # 
   0x44, //  #   # 
   0x54, //  # # # 
   0x54, //  # # # 
   0x54, //  # # # 
   0x28, //   # #   
   0x00, //  

   // @672 'X' (7 pixels wide)      
   0xC6, // ##   ##
   0x44, //  #   # 
   0x28, //   # #  
   0x10, //    #   
   0x28, //   # #  
   0x44, //  #   # 
   0xC6, // ##   ##  
   0x00, //  

   // @684 'Y' (7 pixels wide)     
   0xEE, // ### ###
   0x44, //  #   # 
   0x28, //   # #  
   0x28, //   # #  
   0x10, //    #   
   0x10, //    #   
   0x38, //   ###   
   0x00, //  

   // @696 'Z' (7 pixels wide)       
   0x7C, //  ##### 
   0x44, //  #   # 
   0x08, //     #  
   0x10, //    #    
   0x20, //   #    
   0x44, //  #   # 
   0x7C, //  ##### 
   0x00, //     
   
   // @708 '[' (7 pixels wide)       
   0x38, //   ###  
   0x20, //   #    
   0x20, //   #    
   0x20, //   #       
   0x20, //   #    
   0x20, //   #    
   0x38, //   ###  
   0x00, //  
       

   // @720 '\' (7 pixels wide)     
   0x40, //  #     
   0x20, //   #    
   0x20, //   #    
   0x20, //   #      
   0x10, //    #   
   0x08, //     #  
   0x08, //     #  
   0x00, //  
   
   // @732 ']' (7 pixels wide)     
   0x38, //   ###  
   0x08, //     #  
   0x08, //     #   
   0x08, //     #   
   0x08, //     #  
   0x08, //     #  
   0x38, //   ###  
   0x00, //  
     

   // @744 '^' (7 pixels wide)
   0x00, //        
   0x10, //    #   
   0x10, //    #   
   0x28, //   # #  
   0x44, //  #   # 
   0x00, //        
   0x00, //    
   0x00, //                   

   // @756 '_' (7 pixels wide)
   0x00, //              
   0x00, //        
   0x00, //        
   0x00, //        
   0x00, //                   
   0x00, //        
   0xFE, // #######
   0x00, //  

   // @768 '`' (7 pixels wide)
   0x00, //        
   0x10, //    #   
   0x08, //     #  
   0x00, //            
   0x00, //        
   0x00, //        
   0x00, //        
   0x00, //              

   // @780 'a' (7 pixels wide)
   0x00, //        
   0x38, //   ###  
   0x44, //  #   # 
   0x3C, //   #### 
   0x44, //  #   # 
   0x44, //  #   # 
   0x3E, //   #####  
   0x00, //  
     

   // @792 'b' (7 pixels wide)    
   0xC0, // ##     
   0x40, //  #     
   0x58, //  # ##  
   0x64, //  ##  # 
   0x44, //  #   # 
   0x44, //  #   #
   0xF8, // #####  
   0x00, //  

   // @804 'c' (7 pixels wide)
   0x00, //                   
   0x3C, //   #### 
   0x44, //  #   # 
   0x40, //  #     
   0x40, //  #     
   0x44, //  #   # 
   0x38, //   ###   
   0x00, //  

   // @816 'd' (7 pixels wide)        
   0x0C, //     ## 
   0x04, //      # 
   0x34, //   ## # 
   0x4C, //  #  ## 
   0x44, //  #   #  
   0x44, //  #   # 
   0x3E, //   #####
   0x00, //  
   
   // @828 'e' (7 pixels wide)           
   0x00, //        
   0x38, //   ###  
   0x44, //  #   # 
   0x7C, //  ##### 
   0x40, //  #     
   0x40, //  #     
   0x3C, //   ####    
   0x00, //  

   // @840 'f' (7 pixels wide)      
   0x1C, //    ### 
   0x20, //   #    
   0x7C, //  ##### 
   0x20, //   #    
   0x20, //   #      
   0x20, //   #    
   0x7C, //  ##### 
   0x00, //  
   
   // @852 'g' (7 pixels wide)                     
   0x36, //   ## ##
   0x4C, //  #  ## 
   0x44, //  #   # 
   0x44, //  #   # 
   0x3C, //   #### 
   0x04, //      # 
   0x38, //   ###  
   0x00, //  
         
   // @864 'h' (7 pixels wide)       
   0xC0, // ##     
   0x40, //  #     
   0x58, //  # ##  
   0x64, //  ##  # 
   0x44, //  #   # 
   0x44, //  #   # 
   0xEE, // ### ###
   0x00, //  
   
   // @876 'i' (7 pixels wide)     
   0x10, //    #   
   0x00, //        
   0x70, //  ###   
   0x10, //    #    
   0x10, //    #   
   0x10, //    #   
   0x7C, //  ##### 
   0x00, //  
       

   // @888 'j' (7 pixels wide)    
   0x10, //    #   
   0x00, //        
   0x78, //  ####  
   0x08, //     #  
   0x08, //     #  
   0x08, //     #    
   0x70, //  ###  
   0x00, //  

   // @900 'k' (7 pixels wide)      
   0xC0, // ##     
   0x40, //  #     
   0x5C, //  # ### 
   0x48, //  #  #  
   0x70, //  ###      
   0x48, //  #  #  
   0xDC, // ## ###     
   0x00, //  

   // @912 'l' (7 pixels wide)        
   0x30, //   ##   
   0x10, //    #   
   0x10, //    #   
   0x10, //    #     
   0x10, //    #   
   0x10, //    #   
   0x7C, //  #####  
   0x00, //  

   // @924 'm' (7 pixels wide)
   0x00, //                      
   0xE8, // ### #  
   0x54, //  # # # 
   0x54, //  # # # 
   0x54, //  # # # 
   0x54, //  # # # 
   0xFE, // #######    
   0x00, //  

   // @936 'n' (7 pixels wide)
   0x00, //                     
   0xD8, // ## ##  
   0x64, //  ##  # 
   0x44, //  #   # 
   0x44, //  #   # 
   0x44, //  #   # 
   0xEE, // ### ###     
   0x00, //  

   // @948 'o' (7 pixels wide)          
   0x00, //        
   0x38, //   ###  
   0x44, //  #   # 
   0x44, //  #   # 
   0x44, //  #   # 
   0x44, //  #   # 
   0x38, //   ###       
   0x00, //  

   // @960 'p' (7 pixels wide)             
   0x00, //  
   0xD8, // ## ##  
   0x64, //  ##  # 
   0x44, //  #   # 
   0x78, //  ####  
   0x40, //  #     
   0xE0, // ###
   0x00, //  
      

   // @972 'q' (7 pixels wide)        
   0x00, //        
   0x36, //   ## ##
   0x4C, //  #  ## 
   0x44, //  #   # 
   0x3C, //   #### 
   0x04, //      # 
   0x0E, //     ###  
   0x00, // 

   // @984 'r' (7 pixels wide)
   0x00, //                 
   0x6C, //  ## ## 
   0x30, //   ##   
   0x20, //   #    
   0x20, //   #    
   0x20, //   #    
   0x7C, //  #####  
   0x00, // 

   // @996 's' (7 pixels wide)
   0x00, //                      
   0x3C, //   #### 
   0x44, //  #   # 
   0x38, //   ###  
   0x04, //      # 
   0x44, //  #   # 
   0x78, //  ####    
   0x00, // 
   // @1008 't' (7 pixels wide)    
   0x00, //        
   0x20, //   #    
   0x7C, //  ##### 
   0x20, //   #      
   0x20, //   #    
   0x22, //   #   #
   0x1C, //    ###     
   0x00, // 

   // @1020 'u' (7 pixels wide)
   0x00, //                  
   0xCC, // ##  ## 
   0x44, //  #   # 
   0x44, //  #   # 
   0x44, //  #   # 
   0x4C, //  #  ## 
   0x36, //   ## ##  
   0x00, // 

   // @1032 'v' (7 pixels wide)
   0x00, //                    
   0xEE, // ### ###
   0x44, //  #   # 
   0x44, //  #   # 
   0x28, //   # #  
   0x28, //   # #  
   0x10, //    #      
   0x00, // 

   // @1044 'w' (7 pixels wide)
   0x00, //                
   0xEE, // ### ###
   0x44, //  #   # 
   0x54, //  # # # 
   0x54, //  # # # 
   0x54, //  # # # 
   0x28, //   # #    
   0x00, // 
   // @1056 'x' (7 pixels wide)
   0x00, //                   
   0xCC, // ##  ## 
   0x48, //  #  #  
   0x30, //   ##   
   0x30, //   ##   
   0x48, //  #  #  
   0xCC, // ##  ##   
   0x00, // 

   // @1068 'y' (7 pixels wide)      
   0x00, //        
   0xEE, // ### ###
   0x44, //  #   #  
   0x28, //   # #  
   0x18, //    ##  
   0x10, //    #   
   0x78, //  ####
   0x00, // 

   // @1080 'z' (7 pixels wide)
   0x00, //               
   0x7C, //  ##### 
   0x48, //  #  #  
   0x10, //    #   
   0x20, //   #    
   0x44, //  #   # 
   0x7C, //  ##### 
   0x00, // 
   // @1092 '{' (7 pixels wide)      
   0x08, //     #  
   0x10, //    #   
   0x10, //    #   
   0x20, //   #    
   0x10, //    #   
   0x10, //    #  
   0x08, //     #   
   0x00, //        

   // @1104 '|' (7 pixels wide)     
   0x10, //    #   
   0x10, //    #   
   0x10, //    #   
   0x10, //    #   
   0x10, //    #   
   0x10, //    #   
   0x10, //    #   
   0x00, //           

   // @1116 '}' (7 pixels wide)    
   0x20, //   #    
   0x10, //    #        
   0x10, //    #   
   0x08, //     #  
   0x10, //    #   
   0x10, //    #   
   0x20, //   #  
   0x00,  //
   
   // @1128 '~' (7 pixels wide)
   0x00, //                 
   0x00, //        
   0x00, //        
   0x24, //   #  # 
   0x58, //  # ##  
   0x00, //        
   0x00, //        
   0x00, //         
};

sFONT Font8x8 = {
  Font8_Table,
  8 , /* Width */
  8, /* Height */
};


/******************************END OF FILE*************************************/


Main.c dosyasında aşağıdaki gibi sFONT türünde bir değişken tanımlıyorum.

sFONT P10_Currentfonts;

Main.c içerisinde P10_Currentfonts=Font8x8 dediğim zaman Font8x8 için tanımladığım değerlerin P10_Currentfonts içerisine kopyalanması gerekiyor. Bunu nasıl yaparım? PSoC derleyici ile çalışıyorum. Proje ağacım tam olarak aşağıdaki gibi.


Sorun ne olabilir sizce? Yapamadım bir türlü bu işlemi.
Eğer yaparsam Font Seçme işim son derece sade olacak.

mufitsozen

benim anlamadigim birsey var, butun array niye kopyalaniyor?

sadece pointer'i kopyalasaniz yeterli, zaten array demek pointer demek.

Pointer'i tanimladiginiz struct ile dereference edersiniz olur biter.
Aptalca bir soru yoktur ve hiç kimse soru sormayı bırakana kadar aptal olmaz.

Mucit23

Mufit abi yapmam gerekeni anlayamadım.

Burada benim yanlış bir telafuzum oldu sanırım. Aslında array kopyalanmıyor. Sadece arrayın başlangıç adresini struct içerisindeki pointer'a yüklüyor olmam gerekir. Sizin dediginiz ile aynı. 

Bunlara main icerisinden neden ulaşamıyorum. Bugün okula gitmeden önce son 3 saat buna uğraştım.

Klein

resim çözünürlüğü düşük olduğu için Main.c kodlarını göremiyorum.

P10_Currentfonts=Font8x8  şeklinde aktarma yapamazsınız. aktarma operatörünü sadece basit veri tiplerinde kullanabilirsiniz. ( C++ operatör overload yapmıyorsanız).

Şöyle yapabilirsiniz.

sFONT  *P10_CurrentFonts = (sFONT *) Font8x8;


JOKERAS

Sizin Yapınız extern tanımlımı?Gördüğüm kadarı ile değil.

Struct'ı Header dosyası içinde tanımlayın.

Bu Hedaer içinde olsun..

typedef struct _tFont {
  const uint8 *table;
  uint8 Width;
  uint8 Height;
  
} sFONT;
extern sFONT Font;  diğer dosyalarda da bilinir.



Headerin c dosyasında ilk değer atamalarını yapın.
Bu C dosyası olsun..

sFONT Font = {Font_table , 5, 10}; Font Türündeki değişkenin 1.İndisine dizi Adresi kopyalandı. 1 ve 2. İndisine sabit Char değerleri verildi.



Bu Main olsun...


#include "Header.h" 

void main (void) {

          sFONT P10 = Font; //Font, sFONT Türünden yani aynı türden P10 değişkenine kopyalandı.

}


Bir deneyin.






Mucit23

#5
@JOKERAS  Sana ve diğer mesaj yazan hocalarıma teşekkür ederim. Sorunu sayende çözdüm. Hatam sFONT türünde tanımlanan değişkenlerin (sFONT Font8x8 = {Font8_Table,8, 8};) Global tanımlamamakmış. Header Dosyasında Tekrardan Extern olarak bu değişkenleri tanıtınca düzeldi.

Artık hata vermeyip derleniyor. Fakat main.c dosyası açık iken Code Explorer penceremde Bu değişkenleri global değişken olarak göstermiyor derleyici. Main açık iken sadece main dosyasında tanımlanan global değişkenleri gösteriyor.

JOKERAS

Rica ederiz.

Siz ilgili yapı üzerinde bir işlem yaptınızmı?
İşlem yapmadıysanız derleyici onu sadece derleme aşamasında kullanır initialize etmez.
Bildirim ve tanımlama sadece derleme aşaması için gerekli.
Bağlayıcı,bildirim ve tanımlamalar ile compiler'ı bilgi sahibi yapar,değerleri initialize etmez.
Bence bir işlem yapıp kontrol edin derim.



Mucit23

Evet kütüphane içerisinde kullanıyorum. Şuan sıkıntı yok gibi İstediğim değerleri P10_CurrentFonts içerisinde görebiliyorum.

Tekrardan teşekkür ederim