|
@@ -169,29 +169,13 @@ void* breaker_scanner_thread(void* argv)
|
|
|
//GlobalDeviceManager* gm= (GlobalDeviceManager*)(argv);
|
|
//GlobalDeviceManager* gm= (GlobalDeviceManager*)(argv);
|
|
|
thread_handle_t *h=(thread_handle_t*)(argv);
|
|
thread_handle_t *h=(thread_handle_t*)(argv);
|
|
|
GlobalDeviceManager* gm= (GlobalDeviceManager*)(h->arg);
|
|
GlobalDeviceManager* gm= (GlobalDeviceManager*)(h->arg);
|
|
|
- memset(&breaker_scanner,0,sizeof(breaker_scanner));
|
|
|
|
|
|
|
+ // memset(&breaker_scanner,0,sizeof(breaker_scanner));
|
|
|
int ret = 0;
|
|
int ret = 0;
|
|
|
uint16_t value =0;
|
|
uint16_t value =0;
|
|
|
uint16_t status[BREAKER_485_CHN_MAX] = {0};
|
|
uint16_t status[BREAKER_485_CHN_MAX] = {0};
|
|
|
//scanner all boadr
|
|
//scanner all boadr
|
|
|
- for(int i = 0; i < BREAKER_BOARD_MAX; i++)
|
|
|
|
|
- {
|
|
|
|
|
- ret = breaker_485_get_chn_status((void*)&gm->_globalRelaySampManger,
|
|
|
|
|
- BREADER_485_ADDR+i,BREADER_485_ADDR_CHN_REG,&value);
|
|
|
|
|
- if(ret < 0)
|
|
|
|
|
- {
|
|
|
|
|
- ret = breaker_485_get_chn_status((void*)&gm->_globalRelaySampManger,
|
|
|
|
|
- BREADER_485_ADDR+i,BREADER_485_ADDR_CHN_REG,&value);
|
|
|
|
|
- }
|
|
|
|
|
- if(ret == 0)
|
|
|
|
|
- {
|
|
|
|
|
- breaker_scanner.breaker_flag[i] = 1;
|
|
|
|
|
- }else
|
|
|
|
|
- {
|
|
|
|
|
- breaker_scanner.breaker_flag[i] = 0;
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- int count = 0;
|
|
|
|
|
|
|
+ //int count = 0;
|
|
|
|
|
+ breaker_scanner_t * breaker=get_breaker_scanner();
|
|
|
|
|
|
|
|
while(h->quit==0)
|
|
while(h->quit==0)
|
|
|
{
|
|
{
|
|
@@ -214,12 +198,12 @@ void* breaker_scanner_thread(void* argv)
|
|
|
|
|
|
|
|
for(int i = 0; i < BREAKER_BOARD_MAX; i++)
|
|
for(int i = 0; i < BREAKER_BOARD_MAX; i++)
|
|
|
{
|
|
{
|
|
|
- if(breaker_scanner.breaker_flag[i])
|
|
|
|
|
|
|
+ if(breaker->breaker_flag[i])
|
|
|
{
|
|
{
|
|
|
|
|
|
|
|
breaker_485_get_all_chn_status((void*)&gm->_globalRelaySampManger,BREADER_485_ADDR+i,status);
|
|
breaker_485_get_all_chn_status((void*)&gm->_globalRelaySampManger,BREADER_485_ADDR+i,status);
|
|
|
pthread_mutex_lock(&gm->_breaker_mutex);
|
|
pthread_mutex_lock(&gm->_breaker_mutex);
|
|
|
- memcpy(breaker_scanner.board[i].ch_status,status,sizeof(status));
|
|
|
|
|
|
|
+ memcpy(breaker->board[i].ch_status,status,sizeof(status));
|
|
|
pthread_mutex_unlock(&gm->_breaker_mutex);
|
|
pthread_mutex_unlock(&gm->_breaker_mutex);
|
|
|
// ret = breaker_485_get_chn_status((void*)&gm->_globalRelaySampManger,
|
|
// ret = breaker_485_get_chn_status((void*)&gm->_globalRelaySampManger,
|
|
|
// BREADER_485_ADDR+i,BREADER_485_ADDR_CHN_REG,&value);
|
|
// BREADER_485_ADDR+i,BREADER_485_ADDR_CHN_REG,&value);
|
|
@@ -241,11 +225,10 @@ void* breaker_scanner_thread(void* argv)
|
|
|
{
|
|
{
|
|
|
memset(status,0,sizeof(status));
|
|
memset(status,0,sizeof(status));
|
|
|
pthread_mutex_lock(&gm->_breaker_mutex);
|
|
pthread_mutex_lock(&gm->_breaker_mutex);
|
|
|
- memcpy(breaker_scanner.board[i].ch_status,status,sizeof(status));
|
|
|
|
|
|
|
+ memcpy(breaker->board[i].ch_status,status,sizeof(status));
|
|
|
pthread_mutex_unlock(&gm->_breaker_mutex);
|
|
pthread_mutex_unlock(&gm->_breaker_mutex);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
- count ++;
|
|
|
|
|
sleep(1);
|
|
sleep(1);
|
|
|
}
|
|
}
|
|
|
|
|
|