📄 cosine_crt.h
字号:
#include "comdef.h"/*错误性系统状态位*/#define FLASH_TYPE_ERR (0x00000001) //FLASH类型有误#define SYSTEM_DATA_CRC_ERR (0x00000002) //系统数据CRC有误#define FONT_CRC_ERR (0x00000004) //字库CRC有误#define SYSTEM_PROG_ERR (0x00000008) //系统程序CRC#define PROG_HEAD_INFO_CRC_ERR (0x00000010) //程序头信息CRC有误#define PROG_DATA_CRC_ERR (0x00000020) //程序数据CRC有误#define PROJECT_INFO_CRC_ERR (0x00000040) //工程信息CRC有误#define MAP_INDEX_CRC_ERR (0x00000080) //画面索引CRC有误#define MAP_DATA_CRC_ERR (0x00000100) //画面数据CRC有误#define READ_SN_ERR (0x00000200) //读取DS2401SN码错误 #define CHECK_SN_ERR (0x00000400) //校验SN码错误#define MEMORY_ERROR (0x00000800) //内存错误#define PROJECT_LEN_ERR (0x00001000) //工程属性长度有误#define READSTATUSLIST_ERR (0x00002000) //读状态列表有误#define READERRLIST_ERR (0x00004000) //读故障列表有误#define LOADBMP_ERR (0x00008000) //加载bmp图有误#define SYSTEM_HEAD_ERR (0x00010000) //系统程序头信息CRC错误//按钮定义#define NUMBER_INPUT 20 //数值输入按钮#define NUMBER_DISPLAY 21 //数值显示按钮#define TEXT_STATUS 22 //文字状态显示#define SWITCH_MAP_BUTTON 23 //换画面按钮#define MULTI_BUTTON 24 //多态按钮#define SET_VALUE 25 //设值按钮#define DATE_TIME_DISPLAY 26 //日期、时间显示#define DATE_TIME_SET 27 //日期、时间设置 #define SET_PASSWORD 28 //设置密码#define SYS_FUNCTION 29 //系统功能#define ERR_LIST 30 //故障(警报)控件#define TURN_BUTTON 31#define STATUS_LAMP 32 //状态指示灯#define SWITCH_BUTTON 33 //开关量切换按钮#define USER_BUTTON 120 //用户定义按钮#define MAX_MAPS 240 //允许的最多画面数#define MAX_COMMANDLENS 16 //允许最长的命令串长度#define ELEMENT_ATTRI_OFF 4 //元件属性对元件地址的偏移#define TRUE 1#define FALSE 0#define UART_SEND 0 //通讯方式:串口#define NET_SEND 1 //通讯方式:网卡#define UART0 0 //串口选择0#define UART1 1 //串口选择1#define UART2 2 //串口选择2#define FONT_NAND_ADDR 0x0 //字库存放到NandFlash中地址#define STATUS_NAND_ADDR 0x50000 //状态列表存放到NandFlash中地址#define ERRLIST_NAND_ADDR 0x60000 //故障列表存放到NandFlash中地址#define BMP_NAND_INDEX 0x74000 //工程属性、画面地址、长度索引存放到NandFlash中地址#define BMP_NAND_ADDR 0x78000 //画面存放到NandFlash中地址#define BmpStartBlock (BMP_NAND_ADDR/BLOCK_BYTES)//bmp存放在nandflash的起始块#define ALLBMP_BYTES 0x1E00000 //定义给保存bmp数据的nandflash空间#define BMP_BLOCKS (ALLBMP_BYTES/BLOCK_BYTES)//保存bmp数据的块数#define BMP_SIZE 0xea600 //一个800*600的16色位图的大小#define NO_TOUCH 0xffff //触摸屏无触摸#define INVALID_DATA 5000 //触摸屏触摸采集无效时返回的非法数据extern unsigned long dwSystemStatus; //系统状态extern unsigned long dwErrSystemStatus; //错误性系统状态/*************************** int_handler.c ***************************/extern unsigned long get_millisecond (void); //返回毫秒数void HandleTimer4(void); //定时中断4服务程序void HandleUart0(void); //串口0中断服务程序void UartSend(unsigned char port); //串口发送中断服务void UartReceve(unsigned char port); //串口接收中断服务void HandleErr0(void); //串口错误中断服务void HandleNet(void); //网络中断服务 /* 串口中断设置,UartBit为串口屏蔽位,如串口0为BIT_UART0,UartSubBit为子 屏蔽位,如串口0发中断为如BIT_SUB_TXD0*/void UartInt_Set (unsigned long UartBit, unsigned short UartSubBit);/*************************** cmd_flash.c ************************//* norflash 扇区擦除函数, addr_first为扇区起始址,addr_last为结束地址*/int flash_sect_erase (unsigned long addr_first, unsigned long addr_last);/* norflash 扇区保护函数,返回:为1则错误的保护地址,0保护成功。 p为norflash保护与否,0:不保护,1:保护*/int flash_sect_protect (int p, unsigned long addr_first, unsigned long addr_last);/*************************** flash.c *****************************//* 写norflash函数,src为数据指针,addr为flash写始地址,cnt为写入长度 = 扇区*n 返回: * ERR_OK 0 - OK * ERR_TIMOUT 1 - write timeout * ERR_NOT_ERASED 2 - Flash not erased * ERR_PROTECTED 4 - target range includes protected sectors * ERR_INVAL 8 - target address not in Flash memory * ERR_ALIGN 16 - target address not aligned on boundary*/int flash_write (unsigned char *src, unsigned long addr, unsigned long cnt);/************************** mmcard.c *******************************///sd卡初始化,在卡复位前void MmCardInit(void);//sd卡复位,在读写前,返回:为1读成功,0不成功unsigned char MmCardReset(void);/* sd卡读函数,address为第几个扇区,每个扇区为512字节。DataBuf 为数据缓冲区 返回:为1读成功,0不成功*/unsigned char MmCardReadData(unsigned short address,unsigned char *DataBuf);//sd卡写扇区addressunsigned char MmCardWriteData(unsigned short address,unsigned char *WriteBuf,unsigned short wLen);/************************** sm5.c *******************************//*软件配置显存大小, size:=2,4,8,16,32,64.单位MB*/void dram_config(unsigned char size);//改变显存的起始地址,addressoffset+0x20000000=显存新起始地址void dram_addrss(unsigned long addressoffset);/************************** usb.c ******************************///usb发现函数,发现u盘时间大约要829ms,当无u盘时,函数空转要100ms.int Usb_Find(void);//初始化usb设备,开始对usb进行工作,返回:0,成功,-1不成功int Usb_Reset(void);//停止usb设备工作,返回:0,成功,-1不成功int usb_stop(void);/************************** usb_storage.c ******************************//* 从u盘读数据 blk起始块,blkcnt读块数,每个blkcnt=512B,buffer为内存。 返回:0,成功,1不成功*/int UsbReadData(unsigned long blknr, unsigned long blkcnt, unsigned long *buffer);/* 写数据到u盘, blk起始块,len写字节数,每个blkcnt=512B,buffer为数据缓存。 返回:0,成功,1不成功.另外,最后写到u盘字节为4个0x55AA作为标志。*/int UsbWriteData(unsigned long blknr, unsigned long len, unsigned long *buffer);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -