-florian66-

header

Aug 26th, 2015
175
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 10.49 KB | None | 0 0
  1. struct st_scif {                                        /* struct SCIF  */
  2.                union {                                  /* SCSMR        */
  3.                      unsigned short WORD;               /*  Word Access */
  4.                      struct {                           /*  Bit  Access */
  5.                             unsigned short     :8;      /*              */
  6.                             unsigned short CA  :1;      /*    CA        */
  7.                             unsigned short CHR :1;      /*    CHR       */
  8.                             unsigned short PE  :1;      /*    PE        */
  9.                             unsigned short OE  :1;      /*    O/E       */
  10.                             unsigned short STOP:1;      /*    STOP      */
  11.                             unsigned short     :1;      /*              */
  12.                             unsigned short CKS :2;      /*    CKS       */
  13.                             }       BIT;                /*              */
  14.                      }          SCSMR;                  /*              */
  15.                char             wk1[2];                 /*              */
  16.                unsigned char    SCBRR;                  /* SCBRR        */
  17.                char             wk2[3];                 /*              */
  18.                union {                                  /* SCSCR        */
  19.                      unsigned short WORD;               /*  Word Access */
  20.                      struct {                           /*  Bit  Access */
  21.                             unsigned short     :8;      /*              */
  22.                             unsigned short TIE :1;      /*    TIE       */
  23.                             unsigned short RIE :1;      /*    RIE       */
  24.                             unsigned short TE  :1;      /*    TE        */
  25.                             unsigned short RE  :1;      /*    RE        */
  26.                             unsigned short REIE:1;      /*    REIE      */
  27.                             unsigned short     :1;      /*              */
  28.                             unsigned short CKE :2;      /*    CKE       */
  29.                             }       BIT;                /*              */
  30.                      }          SCSCR;                  /*              */
  31.                char             wk3[2];                 /*              */  
  32.                unsigned char    SCFTDR;                 /* SCFTDR       */
  33.                char             wk4[3];                 /*              */
  34.                union {                                  /* SCFSR        */
  35.                      unsigned short WORD;               /*  Word Access */
  36.                      struct {                           /*  Bit  Access */
  37.                             unsigned short PERC:4;      /*     PERC     */
  38.                             unsigned short FERC:4;      /*     FERC     */
  39.                             unsigned short ER  :1;      /*     ER       */
  40.                             unsigned short TEND:1;      /*     TEND     */
  41.                             unsigned short TDFE:1;      /*     TDFE     */
  42.                             unsigned short BRK :1;      /*     BRK      */
  43.                             unsigned short FER :1;      /*     FER      */
  44.                             unsigned short PER :1;      /*     PER      */
  45.                             unsigned short RDF :1;      /*     RDF      */
  46.                             unsigned short DR  :1;      /*     DR       */
  47.                             }       BIT;                /*              */
  48.                      }          SCFSR;                  /*              */
  49.                char             wk5[2];                 /*              */
  50.                unsigned char    SCFRDR;                 /* SCFRDR       */
  51.                char             wk6[3];                 /*              */
  52.                union {                                  /* SCFCR        */
  53.                      unsigned short WORD;               /*  Word Access */
  54.                      struct {                           /*  Bit  Access */
  55.                             unsigned short TSE  :1;     /*    TSE       */
  56.                             unsigned short TCRST:1;     /*    TCRST     */
  57.                             unsigned short      :3;     /*              */
  58.                             unsigned short RSTRG:3;     /*    RSTRG     */
  59.                             unsigned short RTRG :2;     /*    RTRG      */
  60.                             unsigned short TTRG :2;     /*    TTRG      */
  61.                             unsigned short MCE  :1;     /*    MCE       */
  62.                             unsigned short TFRST:1;     /*    TFRST     */
  63.                             unsigned short RFRST:1;     /*    RFRST     */
  64.                             unsigned short LOOP :1;     /*    LOOP      */
  65.                             }       BIT;                /*              */
  66.                      }          SCFCR;                  /*              */
  67.                char             wk7[2];                 /*              */
  68.                union {                                  /* SCFDR        */
  69.                      unsigned short WORD;               /*  Word Access */
  70.                      struct {                           /*  Byte Access */
  71.                             unsigned short     :3;      /*              */
  72.                             unsigned short TFDC:5;      /*    TFDC      */
  73.                             unsigned short     :3;      /*              */
  74.                             unsigned short RFDC:5;      /*    RFDC      */
  75.                             }       BIT;                /*              */
  76.                      }          SCFDR;                  /*              */
  77.                 char             wk8[6];                /*              */  
  78.                 union {                                 /* SCLSR        */
  79.                      unsigned short WORD;               /*  Word Access */
  80.                      struct {                           /*  Byte Access */
  81.                             unsigned short     :15;     /*              */
  82.                             unsigned short ORER:1;      /*    ORER      */
  83.                             }      BIT;
  84.                     }           SCLSR;                  /*              */
  85.                      
  86.                      
  87.            
  88. };    
  89.        
  90. // all the com's are to SCIFO_TXD
  91.  
  92. /* PTF2 (SCIF0_TXD)
  93. Drive Control Bit           : DRVA[7:6]
  94. Hi-Z Control Bit            : HIZA[7]
  95. Port Control Bit            : PFCR[5:4]
  96. Function 1/2/3 Select Bit   : PSA[6]
  97. */
  98.  
  99. union p_drva { /* I/o bufffer Drive Control Register A, DRVCRA*/
  100.     unsigned short WORD;
  101.     struct {
  102.         unsigned char DRVA15 :1;
  103.         unsigned char DRVA14 :1;
  104.         unsigned char DRVA13 :1;
  105.         unsigned char DRVA12 :1;
  106.         unsigned char DRVA11 :1;
  107.         unsigned char DRVA10 :1;
  108.         unsigned char DRVA9  :1;
  109.         unsigned char DRVA8  :1;
  110.         unsigned char DRVA7  :1; //1 -> max
  111.         unsigned char DRVA6  :1; //1 -> max
  112.         unsigned char DRVA5  :1;
  113.         unsigned char DRVA4  :1;
  114.         unsigned char        :2;
  115.         unsigned char DRVA1  :1;
  116.         unsigned char DRVA0  :1;
  117.        
  118.     } BIT;
  119.    
  120. };  
  121.  
  122. union p_hizcra {
  123.     unsigned short WORD;
  124.     struct {
  125.         unsigned char HIZA15 :1;
  126.         unsigned char HIZA14 :1;
  127.         unsigned char HIZA13 :1;
  128.         unsigned char HIZA12 :1;
  129.         unsigned char HIZA11 :1;
  130.         unsigned char HIZA10 :1;
  131.         unsigned char HIZA9  :1;
  132.         unsigned char HIZA8  :1;
  133.         unsigned char HIZA7  :1; //1 I/O buffer input fixed and output == Hi-Z
  134.         unsigned char HIZA6  :1;
  135.         unsigned char        :4;
  136.         unsigned char HIZA1  :1;
  137.         unsigned char HIZA0  :1;
  138.     } BIT;
  139. };
  140.  
  141. union p_pfcr {
  142.     unsigned short WORD;
  143.     struct {
  144.         unsigned char PF7MD1 :1;
  145.         unsigned char PF7MD0 :1;
  146.         unsigned char PF6MD1 :1;
  147.         unsigned char PF6MD0 :1;
  148.         unsigned char PF5MD1 :1;
  149.         unsigned char PF5MD0 :1;
  150.         unsigned char PF4MD1 :1;
  151.         unsigned char PF4MD0 :1;
  152.         unsigned char PF3MD1 :1;
  153.         unsigned char PF3MD0 :1;
  154.         unsigned char PF2MD1 :1; // 0
  155.         unsigned char PF2MD0 :1; // 1
  156.         unsigned char PF1MD1 :1;
  157.         unsigned char PF1MD0 :1;
  158.         unsigned char PF0MD1 :1;
  159.         unsigned char PF0MD0 :1;
  160.     } BIT;
  161. };
  162.  
  163. union p_psela { /* Port select Register A*/
  164.         unsigned short WORD;
  165.         struct {
  166.             unsigned char PSA15 : 1;
  167.             unsigned char PSA14 : 1;
  168.             unsigned char PSA13 : 1;
  169.             unsigned char PSA12 : 1;
  170.             unsigned char       : 1;
  171.             unsigned char PSA10 : 1;
  172.             unsigned char PSA9  : 1; // 1-> SCIFA_5 RXD et TXD
  173.             unsigned char PSA8  : 1;
  174.             unsigned char PSA7  : 1; // 1-> SCIF_0 SCK
  175.             unsigned char PSA6  : 1; // 1-> SCIF_0 TXD et RXD
  176.             unsigned char PSA5  : 1;
  177.             unsigned char       : 1;
  178.             unsigned char PSA3  : 1; // 0-> SCIFA_4 TXD et RXD
  179.             unsigned char PSA2  : 1; // 1-> SCIFA_4 TXD et RXD
  180.             unsigned char PSA1  : 1;
  181.             unsigned char PSA0  : 1;   
  182.         }  BIT;
  183. };                                
  184.  
  185.  
  186. union p_pfdr { /*Port F Data register*/
  187.     unsigned char BYTE;
  188.     struct {
  189.         unsigned char PF7DT :1;
  190.         unsigned char PF6DT :1;
  191.         unsigned char PF5DT :1;
  192.         unsigned char PF4DT :1;
  193.         unsigned char PF3DT :1;
  194.         unsigned char PF2DT :1; // PTF2
  195.         unsigned char PF1DT :1;
  196.         unsigned char PF0DT :1;
  197.     } BIT;
  198.  
  199. };
  200.  
  201.  
  202. #define SCIF0  (*(volatile struct st_scif  *)0xFFE00000)
  203. #define SCIF1  (*(volatile struct st_scif  *)0xFFE10000)
  204. #define SCIF2  (*(volatile struct st_scif  *)0xFFE20000)
  205.  
  206. #define DRVA   (*(volatile struct p_drva   *)0xA405018A)
  207. #define HIZCRA (*(volatile struct p_hizcra *)0xA4050158)
  208. #define PFCR   (*(volatile struct p_pfcr   *)0xA405010A)
  209. #define PSELA  (*(volatile struct p_psela  *)0xA405014E)
  210.  
  211.  
  212. #define PFDR   (*(volatile struct p_pfdr   *)0xA405012A)
  213.  
  214.  
  215. // #define PFC    (*(volatile struct st_pfc   *)0xA4000100)/* PFC   Address*/
  216. // #define STBCR3 (*(volatile union  un_stbcr3*)0xA40A0000)/* STBCR3Address*/
  217. // #define PA     (*(volatile struct st_pa    *)0xA4000120)/* PA    Address*/
  218. // #define PB     (*(volatile struct st_pb    *)0xA4000122)/* PB    Address*/
  219. // #define PC     (*(volatile struct st_pc    *)0xA4000124)/* PC    Address*/
  220. // #define PD     (*(volatile struct st_pd    *)0xA4000126)/* PD    Address*/
  221. // #define PE     (*(volatile struct st_pe    *)0xA4000128)/* PE    Address*/
  222. // #define PF     (*(volatile struct st_pf    *)0xA400012A)/* PF    Address*/
  223. // #define PG     (*(volatile struct st_pg    *)0xA400012C)/* PG    Address*/
  224. // #define PH     (*(volatile struct st_ph    *)0xA400012E)/* PH    Address*/
  225. // #define PJ     (*(volatile struct st_pj    *)0xA4000130)/* PJ    Address*/
  226. // #define PK     (*(volatile struct st_pk    *)0xA4000132)/* PK    Address*/
  227. // #define PL     (*(volatile struct st_pl    *)0xA4000134)/* PL    Address*/
  228. // #define SCP    (*(volatile struct st_scp   *)0xA4000136)/* SCP   Address*/
  229. // #define PM     (*(volatile struct st_pm    *)0xA4000138)/* PM    Address*/
  230. // #define PN     (*(volatile struct st_pn    *)0xA400013A)/* PN    Address*/
  231.  
  232. extern volatile struct st_scif *SCIF;
Advertisement
Add Comment
Please, Sign In to add comment