⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 global_variable.h

📁 ARM+MP3+USBHOST(at91sam7s64+vs1003b+ch375v)的全套资料
💻 H
字号:
#ifndef GLOBAL_VARIABLE_H__
#define GLOBAL_VARIABLE_H__
#include "disp_buf.h"
#include "datatype.h"
#include "com_variable.h"

/*************************************************************************************
Internal Data Memory:  
			   0x00-0x1f(32bytes)  bank0-bank3  for Interrupt
               0x20-0x3f(32bytes)               for user
			   0x40-                            for stack
External Data Memory:(8k for mcu)  
			   0x0000-0x01ff(512bytes)          for BootLoader
               0x0200-0x03ff(512bytes)          for TaskSwitch 
			   0x0400-0x041e(31bytes)           for BootLoader global varible					
			   0x041f-0x04ff(254bytes)          for other project fixed address variable
			   0x0500-0x1fff(6.75Kbytes)        for other project variable and buffer
**************************************************************************************/
#ifdef R5_MAIN_GLOBALS__
	#define GLV_EXT volatile

	#define  SRAM_USB_BASE_ADDRESS    0x400
//usb global variable
	GLV_EXT INT16U u16UsbEP0inMxPtSz  _at_  (SRAM_USB_BASE_ADDRESS + 0x00);
	GLV_EXT INT16U u16SramStartAddr   _at_  (SRAM_USB_BASE_ADDRESS + 0x02);
	GLV_EXT INT8U  u8VendorCmdRequest _at_  (SRAM_USB_BASE_ADDRESS + 0x04);
	GLV_EXT INT16U u16UsbFifoByteCount _at_ (SRAM_USB_BASE_ADDRESS + 0x05);
	GLV_EXT INT16U u16VendorCmdValue  _at_  (SRAM_USB_BASE_ADDRESS + 0x07); 
	GLV_EXT INT8U usb_interrupt_level0 _at_ (SRAM_USB_BASE_ADDRESS + 0x09);

	#define  SRAM_FMC_BASE_ADDRESS   0x040a//0x0900
//flash global variable
	GLV_EXT INT8U  disk_redt_size_per_page     _at_  (SRAM_FMC_BASE_ADDRESS + 0x00);
	GLV_EXT INT8U  disk_page_per_block         _at_  (SRAM_FMC_BASE_ADDRESS + 0x01);
	GLV_EXT INT8U  disk_large_page             _at_  (SRAM_FMC_BASE_ADDRESS + 0x02);
	GLV_EXT INT16U disk_data_size_per_page     _at_  (SRAM_FMC_BASE_ADDRESS + 0x03);
	GLV_EXT INT8U  disk_row_addr_3rd_byte      _at_  (SRAM_FMC_BASE_ADDRESS + 0x05);
	GLV_EXT INT8U  disk_16bit                  _at_  (SRAM_FMC_BASE_ADDRESS + 0x06);
	GLV_EXT INT8U  disk_address1               _at_  (SRAM_FMC_BASE_ADDRESS + 0x07);
	GLV_EXT INT8U  disk_address2               _at_  (SRAM_FMC_BASE_ADDRESS + 0x08);
	GLV_EXT INT8U  disk_address3               _at_  (SRAM_FMC_BASE_ADDRESS + 0x09);
	GLV_EXT INT8U  disk_maker_id               _at_  (SRAM_FMC_BASE_ADDRESS + 0x0a);
	GLV_EXT INT8U  disk_fmc_id                 _at_  (SRAM_FMC_BASE_ADDRESS + 0x0b);
	GLV_EXT INT16U	gl_sector_size             _at_  (SRAM_FMC_BASE_ADDRESS + 0x0c);

	#define SRAM_BOOT_BASE_ADDRESS   0x0418//0x0a00      
	GLV_EXT INT8U  boot_error_flag             _at_  (SRAM_BOOT_BASE_ADDRESS + 0x00);
	GLV_EXT INT32U u32BootTableAddress         _at_  (SRAM_BOOT_BASE_ADDRESS + 0x01);
	GLV_EXT INT8U  mcu_work_mode 			   _at_  (SRAM_BOOT_BASE_ADDRESS + 0x05); 
	GLV_EXT INT8U  boot_usb_connect            _at_  (SRAM_BOOT_BASE_ADDRESS + 0x06);

	#define FAT_BASE_ADDRESS    0x041F  
	GLV_EXT INT32U fat_ptr_fats            _at_   (FAT_BASE_ADDRESS + 0x00) ;
	GLV_EXT INT32U fat_ptr_rdir            _at_   (FAT_BASE_ADDRESS + 0x04) ;
	GLV_EXT INT32U fat_ptr_data            _at_   (FAT_BASE_ADDRESS + 0x08) ;
	GLV_EXT INT8U  fat_cluster_size        _at_   (FAT_BASE_ADDRESS + 0x0c) ;
	GLV_EXT INT16U fat_sector_size	       _at_   (FAT_BASE_ADDRESS + 0x0d) ;
	GLV_EXT INT16U fat_root_entries        _at_   (FAT_BASE_ADDRESS + 0x0f) ;
//	GLV_EXT INT16U fat32_root_cluster      _at_   (FAT_BASE_ADDRESS + 0x11) ;
	GLV_EXT INT8U  fat_2_is_present        _at_   (FAT_BASE_ADDRESS + 0x13) ;
	GLV_EXT INT32U fat_fat_size            _at_   (FAT_BASE_ADDRESS + 0x14) ;
	GLV_EXT INT32U fat_count_of_clusters   _at_   (FAT_BASE_ADDRESS + 0x18) ;
	GLV_EXT INT8U  fat_type_id             _at_   (FAT_BASE_ADDRESS + 0x1c) ;
	GLV_EXT INT32U fat_max_cluster_number  _at_   (FAT_BASE_ADDRESS + 0x1d) ;
	GLV_EXT INT8U  fat_lib_init_ok         _at_   (FAT_BASE_ADDRESS + 0x21) ;
	GLV_EXT INT32U gl_device_size          _at_   (FAT_BASE_ADDRESS + 0x22) ;

	GLV_EXT	INT8U  disk_copy1              _at_   (FAT_BASE_ADDRESS + 0x26) ;
	GLV_EXT	INT8U  disk_copy2              _at_   (FAT_BASE_ADDRESS + 0x27) ;
	GLV_EXT	INT8U  disk_copy3              _at_   (FAT_BASE_ADDRESS + 0x28) ;
	GLV_EXT	INT32U log32_page_addr         _at_   (FAT_BASE_ADDRESS + 0x29) ;
	GLV_EXT	INT32U log32_page_number       _at_   (FAT_BASE_ADDRESS + 0x2d) ;
	GLV_EXT INT32U fat32_spare_size        _at_   (FAT_BASE_ADDRESS + 0x31) ;
	GLV_EXT INT8U  boot_iap_run            _at_   (FAT_BASE_ADDRESS + 0x35) ;
	GLV_EXT INT8U  boot_fls_wr_length      _at_   (FAT_BASE_ADDRESS + 0x36) ;
	GLV_EXT INT8U  boot_fls_selt_num       _at_   (FAT_BASE_ADDRESS + 0x37) ;
    GLV_EXT INT32U fat32_root_cluster      _at_   (FAT_BASE_ADDRESS + 0x38) ;

    //offset is : 0x454
    GLV_EXT	INT8U  playTaskTrace           _at_   (FAT_BASE_ADDRESS + 0x3c) ;
    GLV_EXT	INT16U  playTaskTracetCount    _at_   (FAT_BASE_ADDRESS + 0x3d) ;

//global buffer
   	GLV_EXT INT8U   gl_buffer[2048]             _at_  0x17c0;
	GLV_EXT INT8U   disk_redundant[64]          _at_  0x1fc0;


	
#else
	#define GLV_EXT extern volatile


//usb global variable
	GLV_EXT INT16U u16SramStartAddr   ;
	GLV_EXT INT8U  u8VendorCmdRequest ;
	GLV_EXT INT16U u16UsbFifoByteCount;
	GLV_EXT INT16U u16VendorCmdValue  ;
	GLV_EXT INT16U u16UsbEP0inMxPtSz  ;
	GLV_EXT INT8U usb_interrupt_level0;

//flash global variable
	GLV_EXT INT8U  disk_redt_size_per_page  ; 
	GLV_EXT INT8U  disk_page_per_block       ; 
	GLV_EXT INT8U  disk_large_page           ;  
	GLV_EXT INT16U disk_data_size_per_page   ; 
	GLV_EXT INT8U  disk_row_addr_3rd_byte    ; 
	GLV_EXT INT8U  disk_16bit                ;
	GLV_EXT INT8U  disk_address1             ; 
	GLV_EXT INT8U  disk_address2             ; 
	GLV_EXT INT8U  disk_address3             ;  
	GLV_EXT INT8U  disk_maker_id             ; 
	GLV_EXT INT8U  disk_fmc_id               ;  
	GLV_EXT INT16U	gl_sector_size            ;


	GLV_EXT INT8U  boot_error_flag           ;
	GLV_EXT INT32U u32BootTableAddress       ; 
	GLV_EXT INT8U  mcu_work_mode             ;
	GLV_EXT INT8U  boot_usb_connect          ;

	GLV_EXT INT32U fat_ptr_fats            ;  
	GLV_EXT INT32U fat_ptr_rdir            ;
	GLV_EXT INT32U fat_ptr_data            ;
	GLV_EXT INT8U  fat_cluster_size        ;
	GLV_EXT INT16U fat_sector_size	       ;
	GLV_EXT INT16U fat_root_entries        ;
	GLV_EXT INT16U fat32_root_cluster      ;
	GLV_EXT INT8U  fat_2_is_present        ;
	GLV_EXT INT32U fat_fat_size            ;
	GLV_EXT INT32U fat_count_of_clusters   ;
	GLV_EXT INT8U  fat_type_id             ;
	GLV_EXT INT32U fat_max_cluster_number  ;
	GLV_EXT INT8U  fat_lib_init_ok         ;
	GLV_EXT INT32U gl_device_size          ;

	GLV_EXT	INT8U  disk_copy1              ;
	GLV_EXT	INT8U  disk_copy2              ;
	GLV_EXT	INT8U  disk_copy3              ;
	GLV_EXT	INT32U log32_page_addr         ;
	GLV_EXT	INT32U log32_page_number       ;
	GLV_EXT INT32U fat32_spare_size        ;
	GLV_EXT INT8U  boot_iap_run            ;
	GLV_EXT INT8U  boot_fls_wr_length      ;
	GLV_EXT INT8U  boot_fls_selt_num       ;

	GLV_EXT	INT8U  playTaskTrace           ;
    GLV_EXT	INT16U  playTaskTracetCount    ;

//global buffer
	GLV_EXT INT8U   gl_buffer[2048]        ;
	GLV_EXT INT8U   disk_redundant[64]     ;


#endif

#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -