#ifndef __CONFIG_H__ #define __CONFIG_H__ #include "afxdef.h" //--------------------------------------------------------------- #define VER_CODE_M '1','0' #define VER_CODE_S '0','1' #define VER_CODE_D '0','1' #define GAUF_PMB1 0x100 // 绘图仪主板 #define GAUF_EMB1 0x101 // 绣花/布线主板 #define GAUF_EHA1 0x501 // 平绣机头板 #define GAUF_EHB1 0x502 // 布线机头板 #define CUR_UPFL GAUF_EMB1 //--------------------------------------------------------------- // 客户定义 // 客户代码 #define CLIENT_NONE 0 // 默认客户 #define CLIENT_GOA 3 // 再登 #define CUR_CLINET CLIENT_GOA //--------------------------------------------------------------- #define CORE_BOARD_BOOT 0 // 启动代码 #define CORE_BOARD_APP 1 // 应用代码 #define CUR_CORE_BOARD CORE_BOARD_APP //--------------------------------------------------------------- #define VERSION_DEBUG 0 // 调试版本 #define VERSION_RELEASE 1 // 发布版本 #define CUR_VERSION VERSION_DEBUG //--------------------------------------------------------------- // 机器配置 #define MACH_NONE 0 // 未知机器 // 001~099 李劲松 #define MACH_EMB 1 // 绣花机 #define MACH_WIRE 2 // 布线机 // 100~149 李富恒 // 150~199 杨梦 #define MACH_SCANNER 150 // 扫描仪 #define MACH_PLATECUT 151 // 平板切割机 // 200~255 王春刚 #define MACH_MILLING 201 // 铣切机 #define MACH_BEDSKIRT 202 // 床笠裙边机 #define MACH_OPTICAL 203 // 光纤布线机 #define MACH_PES 210 // 冲绣缝 #if (CUR_CORE_BOARD == CORE_BOARD_APP) #define CUR_MACHINE MACH_OPTICAL #else #define CUR_MACHINE MACH_NONE #endif //--------------------------------------------------------------- #define USE_PASSWORD 0 // 使用分期付款密码 //--------------------------------------------------------------- #define USE_IWDOG 0 // 使用看门狗 //--------------------------------------------------------------- //--------------------------------------------------------------- #ifndef SYSCLK #define SYSCLK 180000000L // 180M #endif //--------------------------------------------------------------- // bootloader 大小 #define STM32_BOOT_SIZE (64*1024) #define VERSION_LEN 48 #define EX_VER_LEN 32 #define NO_BUFF_WHEN_WT 1 // st flash 无缓写入 #define APP_SAVE_TO APP_SAVE_NORFLASH // APP升级存放区域 //#define APP_SAVE_TO APP_SAVE_EXRAM // APP升级存放区域 //--------------------------------------------------------------- // 通讯端口选择 #if (1) #define COMM_NONE 0 // 不使用,无效 #define COMM_USART1 1 // 串口1, 232 #define COMM_USART6 6 // 串口6, 485 #define COMM_ETHERNET 10 // 以太网 #define COMM_CAN 11 // CAN网络 #define CONSOLE_PORT COMM_USART1 // 控制台通讯口 #define USART6_485OutEn SetEn485OutOff #define USART6_485OutDis SetEn485OutOn #define MAX_STBUF1_SIZE (1024+512) #define MAX_SRBUF1_SIZE (512) // 控制台通讯串口1收发缓冲区大小设置 #define CONTROL_BUS COMM_CAN // 扩展板通讯口 #define HCAN hcan1 #define OPERATOR_PORT COMM_ETHERNET // 操作箱通讯口 #if (CUR_CORE_BOARD == CORE_BOARD_APP) #define MODBUS_M #endif #endif // 通讯端口选择 //--------------------------------------------------------------- #if (CUR_CORE_BOARD == CORE_BOARD_APP) #define STM32_MOTOS_NUM 6 // #define SPEED_TIM TIM8 #define MOTO1_TIM TIM9 #define MOTO2_TIM TIM10 #define MOTO3_TIM TIM11 #define MOTO4_TIM TIM12 #define MOTO5_TIM TIM13 #define MOTO6_TIM TIM14 #define MOOT_TIM_PSC 300 #endif //--------------------------------------------------------------- // SPI 端口使用定义 #define SRW_SPI1 // w5500 #define SRW_SPI2 // 串行FLASH(norflash) #define SRW_SPI3 // FRAM #define SERVER_NUM 1 // TCP 服务器个数 //--------------------------------------------------------------- #define SERNORFLASHTYPE W25Q256 // norflash型号选择 //--------------------------------------------------------------- // 加密芯片 #define SMEC_CHIP #define USE_SMEC 0 //--------------------------------------------------------------- #define TRANS_APP_FILE 1 #define TRANS_DATA_FILE 1 //--------------------------------------------------------------- #if (CUR_MACHINE == MACH_EMB) #define EMB_MC_FLAT 10 // 平绣 #define EMB_MC_NSTC 11 // 标准型单头帽绣(凸轮换色) normal single Tubular/Cap #define EMB_MC_FLOCK 12 // 植绒绣 #define EMB_MC_FLTIF 13 // 平绣,独立压脚 #define EMB_MC_FECC 50 // 平绣+毛巾绣 #define EMB_MC_CC 51 // 毛巾绣 #define EMB_MC_FECT 52 // 平绣+缠绕绣 #define EMB_MC_FECCC 53 // 平绣+毛巾+缠绕 #define EMB_MC_QUISN 100 // 绗绣机,单个机头针数等于1,无勾剪扣换 #define EMB_MC_QUIDN 101 // 绗绣机,单个机头针数等于2,有勾剪扣换,D86剪线 #define EMB_MC_QUIMN 102 // 绗绣机,单个机头针数大于等于4,有勾剪扣换,D86剪线 //----------------- #define EMB_MC_TYPE EMB_MC_FLAT // 当前机器选择 #define MC_TYPE EMB_MC_TYPE #define ROT_PULSE_PER_CIRCLE (1000) // 旋转电机每圈脉冲数 #define TRANS_PKT_LIST_NUM 128 #define RESV_PKT_LIST_NUM 128 // CAN收发缓冲区大小配置 #define COLOR_NODEID_BASE 2 #define HEAD_NODEID_BASE 11 #define RD_HEAD_PARA_NUM 4 // (平绣机头板+毛巾机头板+缠绕机头板+毛巾换色板) //----------------- #if (EMB_MC_TYPE == EMB_MC_NSTC) #define MAX_SUPPORT_HEAD 1 #elif (EMB_MC_TYPE == EMB_MC_FECC) #define MAX_SUPPORT_COLOR 2 #define MAX_SUPPORT_HEAD 60 #elif (EMB_MC_TYPE == EMB_MC_CC) #define MAX_SUPPORT_COLOR 2 #define MAX_SUPPORT_HEAD 40 #elif (EMB_MC_TYPE == EMB_MC_FECT) #define MAX_SUPPORT_COLOR 1 #define MAX_SUPPORT_HEAD 48 #elif (EMB_MC_TYPE == EMB_MC_FECCC) #define MAX_SUPPORT_COLOR 2 #define MAX_SUPPORT_HEAD 40 #elif (EMB_MC_TYPE == EMB_MC_QUISN) #define MAX_SUPPORT_HEAD 132 #elif (EMB_MC_TYPE == EMB_MC_QUIDN || EMB_MC_TYPE == EMB_MC_QUIMN) #define MAX_SUPPORT_HEAD 48 #else #define MAX_SUPPORT_COLOR 1 #define MAX_SUPPORT_HEAD 32 #endif //----------------- #define TEMP_DATA1_SIZE (4*1024) // 隔头绣数据,4K,1024个色序 #define TEMP_DATA2_SIZE (2*1024) // 贴布绣(按色)数据大小,2K,1024个色序 #define TEMP_DATA3_SIZE (1024) // 扩展色序大小,1K(扩展512个色序) #define TEMP_DATA4_SIZE (1024) // 毛巾高度数据大小,1k,1024个色序 #define DATA_FILE_SIZE3 (48*1024) // 边框刺绣数据文件空间大小,48K #define DATA3_BASE_ADDR (EXRAM1_BASE_ADDR+TEMP_DATA1_SIZE+TEMP_DATA2_SIZE+TEMP_DATA3_SIZE+TEMP_DATA4_SIZE) #define EMB_MAX_SIZE (TEMP_DATA1_SIZE+TEMP_DATA2_SIZE+TEMP_DATA3_SIZE+TEMP_DATA4_SIZE+DATA_FILE_SIZE3) // 绣花使用数据空间大小 #define EXRAM1_DATA_ADDR_BEG (EXRAM1_BASE_ADDR+EMB_MAX_SIZE) #define MAX_DATA_EXRAM1_SIZE (EXRAM1_BYTE_SIZE-EMB_MAX_SIZE) #elif (CUR_MACHINE == MACH_WIRE) #define WIRE_MC_WIRE 1 // 布线机 #define WIRE_MC_TYPE WIRE_MC_WIRE #define ROT_PULSE_PER_CIRCLE (1000) // 旋转电机每圈脉冲数 #define MC_TYPE WIRE_MC_TYPE #define MAX_SUPPORT_HEAD 20 #define MAX_SUPPORT_EXTIO 1 #define TRANS_PKT_LIST_NUM 128 #define RESV_PKT_LIST_NUM 128 // CAN收发缓冲区大小配置 #define RD_HEAD_PARA_NUM 4 #elif (CUR_MACHINE == MACH_MILLING) #define DEF_MILL 1 // 铣切机 #define MILL_MC_TYPE DEF_MILL #define MC_TYPE MILL_MC_TYPE #elif (CUR_MACHINE == MACH_BEDSKIRT) #define DEF_BEDSKIRT 1 // 床笠裙边机机 #define BED_MC_TYPE DEF_BEDSKIRT #define MC_TYPE BED_MC_TYPE #elif (CUR_MACHINE == MACH_PES) #define PES_MC_RHNR 1 // 旋转缝纫机 #define PES_MC_DHP 20 // 双头冲孔机 #define PES_MC_DRHP 21 // 双头旋转冲孔机 #define PES_MC_NPES 50 // 普通冲绣缝 #define PES_MC_APERS 51 // 异形旋转冲绣缝 #define PES_MC_DPENS 52 // 旋转冲绣缝 #define PES_MC_HPS 53 // 冲缝 #define PES_MC_TYPE PES_MC_APERS #elif(CUR_MACHINE == MACH_SCANNER) #define RUANYI 1 #define LEISAI 2 #define BUSCTRL_MOTO LEISAI // #endif //--------------------------------------------------------------- #if (CUR_MACHINE == MACH_PES) #if (PES_MC_TYPE == PES_MC_RHNR) #define MAX_SUPPORT_SEWHD 1 #define AUTO_ELEC_CLIP 1 #elif (PES_MC_TYPE == PES_MC_NPES) #define MAX_SUPPORT_SEWHD 1 #define USE_IOEX 1 // 使用IO扩展板 #define MAX_SUPPORT_HEAD 2 #elif (PES_MC_TYPE == PES_MC_APERS) #define MAX_SUPPORT_HEAD 1 #define MAX_SUPPORT_SEWHD 1 #define USE_IOEX 1 // 使用IO扩展板 #define AUTO_ELEC_CLIP 1 #elif (PES_MC_TYPE == PES_MC_DHP) #define USE_IOEX 2 // 使用IO扩展板 #endif #endif //--------------------------------------------------------------- #if (CUR_CORE_BOARD == CORE_BOARD_BOOT) #define VER_TYPE 'G','O','A' #define VER_PROD 'B','O','O','T',' ' #define VER_CODE_M '1','0' // 主版本号 #define VER_CODE_S '0','1' // 子版本号 #define VER_CODE_D '0','1' // 修正版本号 #else #if (CUR_MACHINE == MACH_EMB) #define VER_TYPE 'E','M','B' #if (EMB_MC_TYPE == EMB_MC_FLAT) #define VER_PROD 'F','L','A','T',' ' #elif (EMB_MC_TYPE == EMB_MC_NSTC) #define VER_PROD 'N','S','T','C',' ' #elif (EMB_MC_TYPE == EMB_MC_FLOCK) #define VER_PROD 'F','L','O','C','K' #elif (EMB_MC_TYPE == EMB_MC_FLTIF) #define VER_PROD 'F','L','T','I','F' #elif (EMB_MC_TYPE == EMB_MC_FECC) #define VER_PROD 'F','E','+','C','C' #elif (EMB_MC_TYPE == EMB_MC_CC) #define VER_PROD 'C','C',' ',' ',' ' #elif (EMB_MC_TYPE == EMB_MC_FECT) #define VER_PROD 'F','E','+','C','T' #elif (EMB_MC_TYPE == EMB_MC_FECCC) #define VER_PROD 'F','E','C','C','C' #elif (EMB_MC_TYPE == EMB_MC_QUISN) #define VER_PROD 'Q','U','I','S','N' #elif (EMB_MC_TYPE == EMB_MC_QUIDN) #define VER_PROD 'Q','U','I','D','N' #elif (EMB_MC_TYPE == EMB_MC_QUIMN) #define VER_PROD 'Q','U','I','M','N' #else #define VER_PROD ' ',' ',' ',' ',' ' #endif #elif (CUR_MACHINE == MACH_WIRE) #define VER_TYPE 'A','S','W' #define VER_PROD 'W','I','R','E',' ' #elif (CUR_MACHINE == MACH_MILLING) #define VER_TYPE 'G','O','A' #define VER_PROD 'M','I','L','L',' ' #elif (CUR_MACHINE == MACH_BEDSKIRT) #define VER_TYPE 'B','E','D' #define VER_PROD 'S','K','I','R','T' #elif (CUR_MACHINE == MACH_PES) #if (EMB_MC_TYPE == PES_MC_RHNR) #define VER_TYPE 'S','E','W' #define VER_PROD 'R','H','N','R',' ' #elif (EMB_MC_TYPE == EMB_MC_NPES) #define VER_PROD 'N','P','E','S',' ' #elif (EMB_MC_TYPE == EMB_MC_DHP) #define VER_PROD 'D','H','P',' ',' ' #endif #elif (CUR_MACHINE == MACH_SCANNER) #define VER_TYPE 'G','O','A' #define VER_PROD 'S','C','A','N',' ' #elif (CUR_MACHINE == MACH_OPTICAL) #define VER_TYPE 'G','O','A' #define VER_PROD 'O','P','T','I','C' #else #define VER_TYPE 'G','O','A' #define VER_PROD 'C','O','R','E','A' #endif /* CUR_MACHINE */ #endif /* CUR_CORE_BOARD */ //--------------------------------------------------------------- #ifndef EXRAM1_DATA_ADDR_BEG #define EXRAM1_DATA_ADDR_BEG (EXRAM1_BASE_ADDR) // 数据文件使用空间1 #endif #ifndef MAX_DATA_EXRAM1_SIZE #define MAX_DATA_EXRAM1_SIZE (EXRAM1_BYTE_SIZE) // 数据文件使用空间1 #endif #ifndef EXRAM2_DATA_ADDR_BEG #define EXRAM2_DATA_ADDR_BEG (EXRAM2_BASE_ADDR) // 数据文件使用空间2 #endif #ifndef MAX_DATA_EXRAM2_SIZE #define MAX_DATA_EXRAM2_SIZE (EXRAM2_BYTE_SIZE) // 数据文件使用空间2 #endif //--------------------------------------------------------------- void GetVersionStr(char * str); void GetBuildStr(char * str); //--------------------------------------------------------------- // 机器类型 #ifndef MC_TYPE #define MC_TYPE 0 #endif #ifndef VER_TYPE #define VER_TYPE 'X','X','X' #endif #ifndef VER_PROD #define VER_PROD 'X','X','X','X','X' #endif //--------------------------------------------------------------- #include "main.h" #endif