#include <sys/time.h> #include <sys/timeb.h> #include <sys/types.h> #include <sys/stat.h> #include <sys/types.h> #include <sys/ioctl.h> #include <sys/socket.h> #include <sys/ipc.h> #include <sys/shm.h> #include <sys/mman.h> #include <linux/wireless.h> #include <linux/can.h> #include <linux/can/raw.h> #include <arpa/inet.h> #include <netinet/in.h> #include <unistd.h> #include <stdarg.h> #include <stdio.h> /*�зǿ�J��X�w�q*/ #include <stdlib.h> /*�зǨ�Ʈw�w�q*/ #include <unistd.h> /*Unix �зǨ�Ʃw�q*/ #include <fcntl.h> /*�ɱ���w�q*/ #include <termios.h> /*PPSIX �ݱ���w�q*/ #include <errno.h> /*���~���w�q*/ #include <string.h> #include <time.h> #include <ctype.h> #include <ifaddrs.h> #include <math.h> #include "../../define.h" #include <stdbool.h> typedef unsigned char byte; typedef unsigned short word; typedef unsigned int unit; unsigned char _gunCount; struct ChargingInfoData *chargingInfo[CHAdeMO_QUANTITY + CCS_QUANTITY + GB_QUANTITY]; bool isStartOutputSwitch[CHAdeMO_QUANTITY + CCS_QUANTITY + GB_QUANTITY]; struct timespec _cmdSubPsuPriority_time; struct timespec _derating_time; struct timespec _max_time; struct timespec _log_time; byte _maxChargingStatus; bool isReadyToCharging = false; int preChargingTarget; int preChargingCur; float toAverVolPoint; byte toAverVolCount; byte _delayCount; //int connector_1[12]; //int connector_2[12]; //int connector[2][12]; //byte conn_1_count = 0; //byte conn_2_count = 0; enum _CHARGING_GUN_STATUS { _CHARGING_GUN_STATUS_NONE = 0, _CHARGING_GUN_STATUS_COMM, _CHARGING_GUN_STATUS_CHARGING, _CHARGING_GUN_STATUS_STOP }; enum _PSU_CMD_SEQ { _PSU_CMD_STATUS = 1, _PSU_CMD_VERSION = 2, _PSU_CMD_CAP = 10, _PSU_CMD_OUTPUT = 11, _PSU_CMD_IVAILIABLE = 12, _PSU_CMD_TEMP = 13, _PSU_CMD_GETCOUNT = 14, }; enum _CHARGING_LOG_INDEX { _CHARGING_LOG_NEED_VOL = 0, _CHARGING_LOG_NEED_CUR = 1, _CHARGING_LOG_OUTPUT_VOL = 2, _CHARGING_LOG_OUTPUT_CUR = 3 };