| | |
| | | #include "BoardType.h" |
| | | #include "KMachine.h" |
| | | #include "KBus.h" |
| | | |
| | | extern int __Vectors; |
| | | |
| | | #define APP_ADDR 0x08001000 //应用程序首地址定义 (int)(unsigned char *)(&__Vectors) |
| | | #define APPINFOBLOCK_ADDR (APP_ADDR + 0x100) //程序信息块 地址 |
| | | #define INFOBLOCK_ADDR (APP_ADDR + 0x1000) //信息块 地址 |
| | | |
| | | #define APP_START_ADDR IROM1_START_ADDRESS |
| | | extern int Region$$Table$$Limit; |
| | | |
| | | #define MAKE_VER(x,y) ((x<<8)|y) |
| | | #define APP_VER MAKE_VER(1,16) |
| | | |
| | | const stAppInfoBlock AppInfoBlock __attribute__((at(APPINFOBLOCK_ADDR))) = |
| | | { |
| | | 0xAA55, // StartSign |
| | | 0x0301, // BlockType |
| | | sizeof(stAppInfoBlock), //BlockSize |
| | | 0, // Pad, |
| | | APP_VER, //AppVer |
| | | (BOARD_TYPE<<8) + BOARD_VER, //AppDevice; |
| | | 0x1000, //AppSize; |
| | | 0x0C00, //AppDataSize; |
| | | APP_ADDR, //nAppStartAddr |
| | | (int)&Region$$Table$$Limit, //nBtldr_NewAppInfoAddr |
| | | 0x08009000, //nBtldr_NewAppAddr |
| | | 0xCCCC, //crc16; |
| | | 0xAA55 //EndSign; |
| | | |
| | | }; |
| | | |
| | | |
| | | const stKMInfoBlock KMInfoBlock __attribute__((at(INFOBLOCK_ADDR))) = |
| | | { |
| | | // sizeof(stKMInfoBlock), |
| | | (BOARD_TYPE<<8) + BOARD_VER, //nDeviceType BOARD_VER, //nDevieVer |
| | | APP_VER, //ProgVer |
| | | 0x0102, //KLinkVer |
| | | KBUS_VER, //KBusVer |
| | | // 0x0100, //KNetVer |
| | | // 0x0100, //KWLVer |
| | | |
| | | 4, //nCapacity1 ?K |
| | | 1, //nCapacity2 ?k |
| | | |
| | | DINPUT, //nDInput; |
| | | DOUTPUT, //nDOutput |
| | | |
| | | 0, //nAInput |
| | | 0, //nAOutput |
| | | 0, //nHInput |
| | | 0, //nHOutput |
| | | 0, //nExt1; |
| | | 0, //nExt2; |
| | | 0, //nLogSize; |
| | | 2, //nPorts; |
| | | 0, //nManSize; |
| | | 0, //nAbility; |
| | | 6, //nSwitchBits; |
| | | }; |
| | | |
| | | |
| | | const stDeviceInfo MyDeviceInfo={ |
| | | |
| | | (BOARD_TYPE<<8) + BOARD_VER, //nDeviceTypeVer // unsigned short ClientType; // 子机类型 |
| | | APP_VER, //ProgVer // unsigned short ClientVer; // 子机版本 |
| | | |
| | | DINPUT, // unsigned char InBitCount; // 输入开关量数量 |
| | | DOUTPUT, // unsigned char OutBitCount; // 输出开关量数量 |
| | | 0, // unsigned char InDWCount; // 输入数据字数 |
| | | 0, // unsigned char OutDWCount; // 输出数据字数 |
| | | 0, // unsigned char AIWCount; // 输入模拟量通道(字)数 // 16位为一个字(通道) |
| | | 0, // unsigned char AQWCount; // 输出模拟量通道(字)数 // 16位为一个字(通道) |
| | | // 0, // unsigned char AIBits; // 每通道位数 // 16位以下 |
| | | // 0, // unsigned char AQbits; // 每通道位数 // 16位以下 |
| | | }; |
| | | |
| | | const stExDeviceInfo MyExDeviceInfo ={ |
| | | (BOARD_TYPE<<8) + BOARD_VER, //nDeviceTypeVer // unsigned short ClientType; // 子机类型 |
| | | APP_VER, //ProgVer // unsigned short ClientVer; // 子机版本 |
| | | |
| | | DINPUT, // unsigned char InBitCount; // 输入开关量数量 |
| | | DOUTPUT, // unsigned char OutBitCount; // 输出开关量数量 |
| | | 0, // unsigned char InDWCount; // 输入数据字数 |
| | | 0, // unsigned char OutDWCount; // 输出数据字数 |
| | | 0, // unsigned char AIWCount; // 输入模拟量通道(字)数 // 16位为一个字(通道) |
| | | 0, // unsigned char AQWCount; // 输出模拟量通道(字)数 // 16位为一个字(通道) |
| | | // 0, // unsigned char AIBits; // 每通道位数 // 16位以下 |
| | | // 0, // unsigned char AQbits; // 每通道位数 // 16位以下 |
| | | |
| | | }; |
| | | |