void Init_Hard(void){ Init_CLK(); gpio_init(); externalInterrupt_CcCv_init(); InitDelTim(); delay_ms(100); Init_Beep(); Init_Timer4(); //FAN_PWM Init_Encoder(); InitAdc(); Init_DAC_CH1(); Init_DAC_CH2(); Init_DS18B20(); Init_PVD(); Init_EXTI1(); Init_SPI2(); uart_init(USART3, BR38400); lcd_init (); //Глючная инициализация lcd_init (); lcd_init (); lcd_init (); timMeasInit(); //DEBUG }
void Init_IMPCard(void) { /*for( int i = 0; i < USAGE_CHANNELS; i++) { qm_ENC[i] = 0; qm_ENC_1[i] = 0; qm_ENC_2[i] = 0; qm_ENC_3[i] = 0; diff_qm_ENC[i] = 0; SetValue[i] = 0; }*/ IMC_OpenDevice(); IMC_GLB_ResetModule(RESET_ALL); Init_DA(); Init_Encoder(); }
int main(int argc, char **argv) { int bufCnt=0; OMX_ERRORTYPE result; struct sigaction sa; memset(&sa, 0, sizeof(sa)); sa.sa_handler = &signal_handler; sigaction(SIGABRT, &sa, NULL); sigaction(SIGUSR1, &sa, NULL); sigaction(SIGUSR2, &sa, NULL); (void) signal(SIGINT, Release_Encoder); pthread_cond_init(&cond, 0); pthread_mutex_init(&lock, 0); pthread_cond_init(&etb_cond, 0); pthread_mutex_init(&etb_lock, 0); pthread_mutex_init(&etb_lock1, 0); if (argc >= 9) { in_filename = argv[1]; out_filename = argv[2]; tunnel = atoi(argv[3]); min_bitrate = atoi(argv[4]); max_bitrate = atoi(argv[5]); cdmarate = atoi(argv[6]); recpath = atoi(argv[7]); // No configuration support yet.. rectime = atoi(argv[8]); } else { DEBUG_PRINT(" invalid format: \n"); DEBUG_PRINT("ex: ./mm-aenc-omxevrc-test INPUTFILE OUTPUTFILE Tunnel MINRATE MAXRATE CDMARATE RECORDPATH RECORDTIME\n"); DEBUG_PRINT("MINRATE MAXRATE and CDMARATE 1 to 4\n"); DEBUG_PRINT("RECORDPATH 0(TX),1(RX),2(BOTH),3(MIC)\n"); DEBUG_PRINT("RECORDTIME in seconds for AST Automation\n"); return 0; } if(recpath != 3) { DEBUG_PRINT("For RECORDPATH Only MIC supported\n"); return 0; } if(tunnel == 0) aud_comp = "OMX.qcom.audio.encoder.evrc"; else aud_comp = "OMX.qcom.audio.encoder.tunneled.evrc"; if(Init_Encoder(aud_comp)!= 0x00) { DEBUG_PRINT("Decoder Init failed\n"); return -1; } fcntl(0, F_SETFL, O_NONBLOCK); if(Play_Encoder() != 0x00) { DEBUG_PRINT("Play_Decoder failed\n"); return -1; } // Wait till EOS is reached... if(rectime && tunnel) { sleep(rectime); rectime = 0; bInputEosReached_tunnel = 1; DEBUG_PRINT("\EOS ON INPUT PORT\n"); }