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

📄 ist.h

📁 arm嵌入式开发实例
💻 H
字号:
/**************************************************************************************************
 *                                                                          
 * Copyright (c) 2002 - 2003 Isteki Electronics (kunshan) Corp. All rights reserved.      
 *                                                                         
 * FILENAME
 *     ist.h
 *
 * VERSION
 *     1.0
 *
 * DESCRIPTION
 *     This file contains the register map of W90N740 processor.
 *
 * DATA STRUCTURES
 *     None
 *
 * FUNCTIONS
 *     None
 *
 * HISTORY
 *     10/28/2003		 Ver 1.0 Created by Jim Lin
 *
 * REMARK
 *     None
 *     
 *************************************************************************************************/

/****************************************************/
/*	define function and data struct in all .c file	*/
/****************************************************/
#define nops        __asm { nop  }

#define SetBit(var,bit) (var |= (1<<bit))	
#define ClrBit(var,bit) (var &= ~(1<<bit))
#define ValBit(var,bit) (var & (1<<bit))

#define Power_on	 (GPIO_DATAOUT |= (0x00000001<<0))		//gpio 0
#define Power_off	 (GPIO_DATAOUT &= ~(0x00000001<<0))
#define Lock_open    (GPIO_DATAOUT |= (0x00000001<<1))		//gpio 1
#define Lock_close   (GPIO_DATAOUT &= ~(0x00000001<<1))
#define Led_redon	 (GPIO_DATAOUT &= ~(0x00000001<<2))		//gpio 2
#define Led_redoff   (GPIO_DATAOUT |= (0x00000001<<2))
#define Led_greenon  (GPIO_DATAOUT &= ~(0x00000001<<3))		//gpio 3
#define Led_greenoff (GPIO_DATAOUT |= (0x00000001<<3))
#define Buzz_on		 (GPIO_DATAOUT |= (0x00000001<<12))		//gpio 12
#define Buzz_off	 (GPIO_DATAOUT &= ~(0x00000001<<12))

typedef struct 
{
  uint8 head;
  uint8 command;
  uint16 size;
  uint8 error;
  uint8 parity;
  uint8 end;
}com_string;


/************************************************/
/*			define MACRO in all .c file			*/
/************************************************/
/*--------- True and False ---------*/
#define True 0
#define False 1

/*--------- hardware address ---------*/
#define cs2 (*(volatile unsigned char *)(0x30000000))
#define cs3 (*(volatile unsigned char *)(0x40000000))

#define Flash_baseaddr	0x7f000000

#define Flash_Ctlreg1	(VPchar(Flash_baseaddr+0x5555))
#define Flash_Ctlreg2	(VPchar(Flash_baseaddr+0x2aaa))

#define Flash_page0	0
#define Flash_page1	8
#define Flash_page2	16
#define Flash_page3	24

#define	MA_PARAM_PAGE	1534	//PARAMETER FIRST ADDRESS

#define	MA_PROG_PAGE	96		//PROGRAM FIRST ADDRESS

#define	MA_USER1_PAGE	1536	//USER 1 TEMPLATE FIRST ADDRESS
#define	MA_USER2_PAGE	1568	//USER 2 TEMPLATE FIRST ADDRESS
#define	MA_USER3_PAGE	1600	//USER 2 TEMPLATE FIRST ADDRESS



/*------- const in communication.c ------*/
#define CMD_SEND_PROG_BEGIN		18
#define CMD_SEND_PROG_NEXT		19
#define CMD_SEND_PROG_AGAIN		20
#define CMD_SEND_PROG_END		21
#define CMD_SEND_POW_OFF		16
#define CMD_TEST				1

#define	ERR_NONE			0
#define ERR_PARAMETER		4
#define ERR_ERR				8
#define	ERR_PARITY			5
#define	ERR_SIZE			7
#define ERR_WRITE_ERR		10



#define PCCOM_HEAD	0x0B
#define PCCOM_END	0x0E

#define MAX_BYTE_NUM	128



/************************************************/
/*				variable in all .c file			*/
/************************************************/
/*--------- define variable in main.c ---------*/
#ifdef C_main
  #define Main_ext			
#else
  #define Main_ext extern
#endif  


/*--------- define variable in timer.c ---------*/
#ifdef C_Timer
  #define Timer_ext			
#else
  #define Timer_ext extern
#endif  

Timer_ext unsigned int cur_ticks; 	//1 sec = 100 ticks
Timer_ext unsigned int b_times; 	
Timer_ext volatile bool Flag_timer;

/*--------- define variable in flash.c ---------*/
#ifdef C_Flash
  #define Flash_ext
#else
  #define Flash_ext extern
#endif  

Flash_ext uint8 flash_buffer[256];


/*--------- define variable in com.c ---------*/
#ifdef C_Com
  #define Com_ext  
#else
  #define Com_ext extern
#endif  

Com_ext uint16 Flash_current_page;
Com_ext com_string pcdata;
Com_ext uint8 RevData[150];

/************************************************/
/*			declare function in all .c file		*/
/************************************************/
extern void Fun_init_system(void);
extern uint8 check_sum(uint8 *pData,uint16 Num);
extern void Fun_buzzer1(void);
extern void Fun_buzzer2(void);
extern void Fun_delay_10ms(uint16 t);
extern void Fun_delay_1ms(uint16 t);

extern void Fun_flash_writepage(uint16 page);
extern void Fun_flash_readpage(uint16 page);

extern void Fun_SetIntISR(int, void (*)());
extern __irq void IRQ_IntHandler(void);
extern void Fun_TimerInitialize(int channel,unsigned int total_times);

extern void Fun_UART_SetBaudRate(uint32 baud_rate);
extern int Fun_UART_Initialize(uint32 baud_rate);
extern uint8 Fun_UART_getchar(void);
extern uint16 Fun_UART_getdata(uint8 *getdata);
extern bool Fun_UART_putchar(uint8 ch);
extern bool Fun_UART_senddata(uint8 *pSenddata,uint16 Num,uint8 mode);
extern bool atoi(uint8 asciiData);
extern void itoa(uint8 inData);

extern bool Fun_pccom(void);
extern void Fun_SEND_PROG_BEGIN(void);
extern void Fun_SEND_PROG_NEXT(void);
extern void Fun_SEND_PROG_AGAIN(void);
extern void Fun_SEND_PROG_END(void);
extern void Fun_pccom_test(void);

⌨️ 快捷键说明

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