⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bluetooth_lib2_sfun_c4.c

📁 在matlab的simulink中实现的无线蓝牙模块
💻 C
📖 第 1 页 / 共 5 页
字号:
      _SFD_CT_CALL(TRANSITION_WHEN_VALID_TAG,0);
      _SFD_CT_CALL(TRANSITION_INACTIVE_TAG,0);
      sf_label_3:;
      _SFD_CS_CALL(EXIT_OUT_OF_FUNCTION_TAG,7);
      break;
     case IN_m1_c4_s2_SCORT:
      CV_CHART_EVAL(0,0,2);
      _SFD_CS_CALL(STATE_ENTER_DURING_FUNCTION_TAG,12);
      _SFD_CCS_CALL(STATE_DURING_COVERAGE_TAG,12,0);
      switch(chartInstance->State.is_m1_c4_s2_SCORT) {
       case IN_m1_c4_s3_Slot_pair_1:
        CV_STATE_EVAL(12,0,1);
        _SFD_CS_CALL(STATE_ENTER_DURING_FUNCTION_TAG,9);
        _SFD_CCS_CALL(STATE_DURING_COVERAGE_TAG,9,0);
        switch(chartInstance->State.is_m1_c4_s3_Slot_pair_1) {
         case IN_m1_c4_s4_Bad:
          CV_STATE_EVAL(9,0,1);
          _SFD_CS_CALL(STATE_ENTER_DURING_FUNCTION_TAG,8);
          _SFD_CCS_CALL(STATE_DURING_COVERAGE_TAG,8,0);
          _SFD_CT_CALL(TRANSITION_BEFORE_PROCESSING_TAG,11);
          if(CV_TRANSITION_EVAL(11,
            _SFD_CCP_CALL(11,0,(InputData_m1_c4_d5_Slot_OK))) != 0) {
            _SFD_CT_CALL(TRANSITION_ACTIVE_TAG,11);
            _SFD_CT_CALL(TRANSITION_WHEN_VALID_TAG,11);
            _SFD_CT_CALL(TRANSITION_BEFORE_COND_ACTION_TAG,11);
            _SFD_CHART_CALL(EVENT_OBJECT,EVENT_BEFORE_BROADCAST_TAG,0);
            if(chartInstance->chartInfo.chartInitialized==false) {
              sf_mex_error_message("Cannot broadcast function call output event 'Latch_Payload' during initialization. "
               "You have set 'Execute At Initialization' flag on the chart properties "
               "that caused the chart to be executed at startup time. During startup, "
               "function call output event broadcast is disallowed.");
            }
            ssCallSystem(chartInstance->S,0);
            if(sf_mex_get_halt_simulation()) sf_mex_long_jump_on_error(2);
            _SFD_CHART_CALL(EVENT_OBJECT,EVENT_AFTER_BROADCAST_TAG,0);
            _SFD_CCT_CALL(TRANSITION_CONDITION_ACTION_COVERAGE_TAG,11,0);
            _SFD_CT_CALL(TRANSITION_AFTER_COND_ACTION_TAG,11);
            _SFD_CT_CALL(TRANSITION_INACTIVE_TAG,11);
            exit_internal_m1_c4_s3_Slot_pair_1(chartInstance);
            exit_atomic_m1_c4_s3_Slot_pair_1(chartInstance);
            enter_atomic_m1_c4_s6_Slot_pair_2(chartInstance);
            enter_atomic_m1_c4_s8_Good(chartInstance);
          } else {
            _SFD_CT_CALL(TRANSITION_ACTIVE_TAG,26);
            _SFD_CT_CALL(TRANSITION_WHEN_VALID_TAG,26);
            _SFD_CT_CALL(TRANSITION_INACTIVE_TAG,26);
            exit_internal_m1_c4_s3_Slot_pair_1(chartInstance);
            exit_atomic_m1_c4_s3_Slot_pair_1(chartInstance);
            enter_atomic_m1_c4_s6_Slot_pair_2(chartInstance);
            _SFD_CS_CALL(STATE_ENTER_ENTRY_FUNCTION_TAG,5);
            _SFD_CCS_CALL(STATE_ENTRY_COVERAGE_TAG,5,0);
            chartInstance->State.is_m1_c4_s6_Slot_pair_2 = IN_m1_c4_s7_Bad;
            _SFD_CS_CALL(STATE_ACTIVE_TAG,5);
            _SFD_CS_CALL(EXIT_OUT_OF_FUNCTION_TAG,5);
          }
          _SFD_CS_CALL(EXIT_OUT_OF_FUNCTION_TAG,8);
          break;
         case IN_m1_c4_s5_Good:
          CV_STATE_EVAL(9,0,2);
          _SFD_CS_CALL(STATE_ENTER_DURING_FUNCTION_TAG,2);
          _SFD_CCS_CALL(STATE_DURING_COVERAGE_TAG,2,0);
          _SFD_CT_CALL(TRANSITION_ACTIVE_TAG,25);
          _SFD_CT_CALL(TRANSITION_WHEN_VALID_TAG,25);
          _SFD_CT_CALL(TRANSITION_INACTIVE_TAG,25);
          exit_internal_m1_c4_s3_Slot_pair_1(chartInstance);
          exit_atomic_m1_c4_s3_Slot_pair_1(chartInstance);
          enter_atomic_m1_c4_s6_Slot_pair_2(chartInstance);
          enter_atomic_m1_c4_s8_Good(chartInstance);
          _SFD_CS_CALL(EXIT_OUT_OF_FUNCTION_TAG,2);
          break;
         default:
          CV_STATE_EVAL(9,0,0);
          break;
        }
        _SFD_CS_CALL(EXIT_OUT_OF_FUNCTION_TAG,9);
        break;
       case IN_m1_c4_s6_Slot_pair_2:
        CV_STATE_EVAL(12,0,2);
        _SFD_CS_CALL(STATE_ENTER_DURING_FUNCTION_TAG,4);
        _SFD_CCS_CALL(STATE_DURING_COVERAGE_TAG,4,0);
        switch(chartInstance->State.is_m1_c4_s6_Slot_pair_2) {
         case IN_m1_c4_s7_Bad:
          CV_STATE_EVAL(4,0,1);
          _SFD_CS_CALL(STATE_ENTER_DURING_FUNCTION_TAG,5);
          _SFD_CCS_CALL(STATE_DURING_COVERAGE_TAG,5,0);
          _SFD_CT_CALL(TRANSITION_BEFORE_PROCESSING_TAG,7);
          if(CV_TRANSITION_EVAL(7,
            _SFD_CCP_CALL(7,0,(InputData_m1_c4_d5_Slot_OK))) != 0) {
            _SFD_CT_CALL(TRANSITION_ACTIVE_TAG,7);
            _SFD_CT_CALL(TRANSITION_WHEN_VALID_TAG,7);
            _SFD_CT_CALL(TRANSITION_BEFORE_COND_ACTION_TAG,7);
            _SFD_CHART_CALL(EVENT_OBJECT,EVENT_BEFORE_BROADCAST_TAG,0);
            if(chartInstance->chartInfo.chartInitialized==false) {
              sf_mex_error_message("Cannot broadcast function call output event 'Latch_Payload' during initialization. "
               "You have set 'Execute At Initialization' flag on the chart properties "
               "that caused the chart to be executed at startup time. During startup, "
               "function call output event broadcast is disallowed.");
            }
            ssCallSystem(chartInstance->S,0);
            if(sf_mex_get_halt_simulation()) sf_mex_long_jump_on_error(2);
            _SFD_CHART_CALL(EVENT_OBJECT,EVENT_AFTER_BROADCAST_TAG,0);
            _SFD_CCT_CALL(TRANSITION_CONDITION_ACTION_COVERAGE_TAG,7,0);
            _SFD_CT_CALL(TRANSITION_AFTER_COND_ACTION_TAG,7);
            _SFD_CT_CALL(TRANSITION_INACTIVE_TAG,7);
            exit_internal_m1_c4_s6_Slot_pair_2(chartInstance);
            exit_atomic_m1_c4_s6_Slot_pair_2(chartInstance);
            enter_atomic_m1_c4_s9_Slot_pair_3(chartInstance);
            enter_atomic_m1_c4_s11_Good(chartInstance);
          } else {
            _SFD_CT_CALL(TRANSITION_ACTIVE_TAG,9);
            _SFD_CT_CALL(TRANSITION_WHEN_VALID_TAG,9);
            _SFD_CT_CALL(TRANSITION_INACTIVE_TAG,9);
            exit_internal_m1_c4_s6_Slot_pair_2(chartInstance);
            exit_atomic_m1_c4_s6_Slot_pair_2(chartInstance);
            enter_atomic_m1_c4_s9_Slot_pair_3(chartInstance);
            _SFD_CS_CALL(STATE_ENTER_ENTRY_FUNCTION_TAG,3);
            _SFD_CCS_CALL(STATE_ENTRY_COVERAGE_TAG,3,0);
            chartInstance->State.is_m1_c4_s9_Slot_pair_3 = IN_m1_c4_s10_Bad;
            _SFD_CS_CALL(STATE_ACTIVE_TAG,3);
            _SFD_CS_CALL(STATE_BEFORE_ENTRY_ACTION_TAG,3);
            m1_c4_s14_Reject_Payload(chartInstance);
            _SFD_CCS_CALL(STATE_ENTRY_COVERAGE_TAG,3,1);
            _SFD_CS_CALL(STATE_AFTER_ENTRY_ACTION_TAG,3);
            _SFD_CS_CALL(EXIT_OUT_OF_FUNCTION_TAG,3);
          }
          _SFD_CS_CALL(EXIT_OUT_OF_FUNCTION_TAG,5);
          break;
         case IN_m1_c4_s8_Good:
          CV_STATE_EVAL(4,0,2);
          _SFD_CS_CALL(STATE_ENTER_DURING_FUNCTION_TAG,13);
          _SFD_CCS_CALL(STATE_DURING_COVERAGE_TAG,13,0);
          _SFD_CT_CALL(TRANSITION_ACTIVE_TAG,35);
          _SFD_CT_CALL(TRANSITION_WHEN_VALID_TAG,35);
          _SFD_CT_CALL(TRANSITION_INACTIVE_TAG,35);
          exit_internal_m1_c4_s6_Slot_pair_2(chartInstance);
          exit_atomic_m1_c4_s6_Slot_pair_2(chartInstance);
          enter_atomic_m1_c4_s9_Slot_pair_3(chartInstance);
          enter_atomic_m1_c4_s11_Good(chartInstance);
          _SFD_CS_CALL(EXIT_OUT_OF_FUNCTION_TAG,13);
          break;
         default:
          CV_STATE_EVAL(4,0,0);
          break;
        }
        _SFD_CS_CALL(EXIT_OUT_OF_FUNCTION_TAG,4);
        break;
       case IN_m1_c4_s9_Slot_pair_3:
        CV_STATE_EVAL(12,0,3);
        _SFD_CS_CALL(STATE_ENTER_DURING_FUNCTION_TAG,0);
        _SFD_CCS_CALL(STATE_DURING_COVERAGE_TAG,0,0);
        _SFD_CT_CALL(TRANSITION_BEFORE_PROCESSING_TAG,3);
        if(CV_TRANSITION_EVAL(3,
          _SFD_CCP_CALL(3,0,(InputData_m1_c4_d5_Slot_OK))) != 0) {
          _SFD_CT_CALL(TRANSITION_ACTIVE_TAG,3);
          _SFD_CT_CALL(TRANSITION_WHEN_VALID_TAG,3);
          _SFD_CT_CALL(TRANSITION_BEFORE_COND_ACTION_TAG,3);
          _SFD_CHART_CALL(EVENT_OBJECT,EVENT_BEFORE_BROADCAST_TAG,0);
          if(chartInstance->chartInfo.chartInitialized==false) {
            sf_mex_error_message("Cannot broadcast function call output event 'Latch_Payload' during initialization. "
             "You have set 'Execute At Initialization' flag on the chart properties "
             "that caused the chart to be executed at startup time. During startup, "
             "function call output event broadcast is disallowed.");
          }
          ssCallSystem(chartInstance->S,0);
          if(sf_mex_get_halt_simulation()) sf_mex_long_jump_on_error(2);
          _SFD_CHART_CALL(EVENT_OBJECT,EVENT_AFTER_BROADCAST_TAG,0);
          _SFD_CCT_CALL(TRANSITION_CONDITION_ACTION_COVERAGE_TAG,3,0);
          OutputData_m1_c4_d10_Pass_Frame = 0.0;
          _SFD_CCT_CALL(TRANSITION_CONDITION_ACTION_COVERAGE_TAG,3,1);
          _SFD_CT_CALL(TRANSITION_AFTER_COND_ACTION_TAG,3);
          _SFD_CT_CALL(TRANSITION_INACTIVE_TAG,3);
          exit_internal_m1_c4_s9_Slot_pair_3(chartInstance);
          exit_atomic_m1_c4_s9_Slot_pair_3(chartInstance);
          enter_atomic_m1_c4_s3_Slot_pair_1(chartInstance);
          enter_atomic_m1_c4_s5_Good(chartInstance);
        } else {
          _SFD_CT_CALL(TRANSITION_ACTIVE_TAG,18);
          _SFD_CT_CALL(TRANSITION_WHEN_VALID_TAG,18);
          _SFD_CT_CALL(TRANSITION_BEFORE_COND_ACTION_TAG,18);
          OutputData_m1_c4_d10_Pass_Frame = 0.0;
          _SFD_CCT_CALL(TRANSITION_CONDITION_ACTION_COVERAGE_TAG,18,0);
          _SFD_CT_CALL(TRANSITION_AFTER_COND_ACTION_TAG,18);
          _SFD_CT_CALL(TRANSITION_INACTIVE_TAG,18);
          exit_internal_m1_c4_s9_Slot_pair_3(chartInstance);
          exit_atomic_m1_c4_s9_Slot_pair_3(chartInstance);
          enter_atomic_m1_c4_s3_Slot_pair_1(chartInstance);
          enter_atomic_m1_c4_s4_Bad(chartInstance);
        }
        _SFD_CS_CALL(EXIT_OUT_OF_FUNCTION_TAG,0);
        break;
       default:
        CV_STATE_EVAL(12,0,0);
        break;
      }
      _SFD_CS_CALL(EXIT_OUT_OF_FUNCTION_TAG,12);
      break;
     case IN_m1_c4_s12_Unknown_Packet_Type:
      CV_CHART_EVAL(0,0,3);
      _SFD_CS_CALL(STATE_ENTER_DURING_FUNCTION_TAG,6);
      _SFD_CCS_CALL(STATE_DURING_COVERAGE_TAG,6,0);
      _SFD_CT_CALL(TRANSITION_ACTIVE_TAG,16);
      _SFD_CT_CALL(TRANSITION_WHEN_VALID_TAG,16);
      _SFD_CT_CALL(TRANSITION_INACTIVE_TAG,16);
      _SFD_CT_CALL(TRANSITION_BEFORE_PROCESSING_TAG,29);
      if(CV_TRANSITION_EVAL(29,
        _SFD_CCP_CALL(29,0,(InputData_m1_c4_d6_Packet_Type != 13.0))) != 0) {
        if(sf_debug_transition_conflict_check_enabled()) {
          unsigned int transitionList[2];
          unsigned int numTransitions=1;
          transitionList[0] = 29;
          sf_debug_transition_conflict_check_begin();
          if(InputData_m1_c4_d6_Packet_Type == 13.0) {
            transitionList[numTransitions] = 1;
            numTransitions++;
          }
          sf_debug_transition_conflict_check_end();
          if(numTransitions>1) {
            _SFD_TRANSITION_CONFLICT(&(transitionList[0]),numTransitions);
          }
        }
        _SFD_CT_CALL(TRANSITION_ACTIVE_TAG,29);
        _SFD_CT_CALL(TRANSITION_WHEN_VALID_TAG,29);
        _SFD_CT_CALL(TRANSITION_INACTIVE_TAG,29);
        exit_atomic_m1_c4_s12_Unknown_Packet_Type(chartInstance);
        _SFD_CS_CALL(STATE_ENTER_ENTRY_FUNCTION_TAG,7);
        _SFD_CCS_CALL(STATE_ENTRY_COVERAGE_TAG,7,0);
        chartInstance->State.is_bluetooth_lib2_sfun_c4 = IN_m1_c4_s1_Not_SCORT;
        _SFD_CS_CALL(STATE_ACTIVE_TAG,7);
        _SFD_CS_CALL(EXIT_OUT_OF_FUNCTION_TAG,7);
        _SFD_CT_CALL(TRANSITION_ACTIVE_TAG,30);
        _SFD_CT_CALL(TRANSITION_WHEN_VALID_TAG,30);
        _SFD_CT_CALL(TRANSITION_INACTIVE_TAG,30);
        _SFD_CT_CALL(TRANSITION_BEFORE_PROCESSING_TAG,33);
        if(CV_TRANSITION_EVAL(33,
          !(_SFD_CCP_CALL(33,0,(InputData_m1_c4_d4_HEC_OK)) != 0)) != 0) {
          if(sf_debug_transition_conflict_check_enabled()) {
            unsigned int transitionList[2];
            unsigned int numTransitions=1;
            transitionList[0] = 33;
            sf_debug_transition_conflict_check_begin();
            if(InputData_m1_c4_d4_HEC_OK != 0.0) {
              transitionList[numTransitions] = 22;
              numTransitions++;
            }
            sf_debug_transition_conflict_check_end();
            if(numTransitions>1) {
              _SFD_TRANSITION_CONFLICT(&(transitionList[0]),numTransitions);
            }
          }
          _SFD_CT_CALL(TRANSITION_ACTIVE_TAG,33);
          _SFD_CT_CALL(TRANSITION_WHEN_VALID_TAG,33);
          _SFD_CT_CALL(TRANSITION_INACTIVE_TAG,33);
          _SFD_CT_CALL(TRANSITION_ACTIVE_TAG,27);
          _SFD_CT_CALL(TRANSITION_WHEN_VALID_TAG,27);
          _SFD_CT_CALL(TRANSITION_INACTIVE_TAG,27);
          goto sf_label_4;
        } else {
          _SFD_CT_CALL(TRANSITION_BEFORE_PROCESSING_TAG,22);
          if(CV_TRANSITION_EVAL(22,
            _SFD_CCP_CALL(22,0,(InputData_m1_c4_d4_HEC_OK))) != 0) {
            _SFD_CT_CALL(TRANSITION_ACTIVE_TAG,22);
            _SFD_CT_CALL(TRANSITION_WHEN_VALID_TAG,22);
            _SFD_CT_CALL(TRANSITION_INACTIVE_TAG,22);
            _SFD_CT_CALL(TRANSITION_BEFORE_PROCESSING_TAG,13);
            if(CV_TRANSITION_EVAL(13,
              !(_SFD_CCP_CALL(13,0,(InputData_m1_c4_d3_AM_ADDR_OK)) != 0)) != 0)
            {
              if(sf_debug_transition_conflict_check_enabled()) {
                unsigned int transitionList[2];
                unsigned int numTransitions=1;
                transitionList[0] = 13;
                sf_debug_transition_conflict_check_begin();
                if(InputData_m1_c4_d3_AM_ADDR_OK != 0.0) {
                  transitionList[numTransitions] = 23;
                  numTransitions++;
                }
                sf_debug_transition_conflict_check_end();
                if(numTransitions>1) {
                  _SFD_TRANSITION_CONFLICT(&(transitionList[0]),numTransitions);
                }
              }
              _SFD_CT_CALL(TRANSITION_ACTIVE_TAG,13);
              _SFD_CT_CALL(TRANSITION_WHEN_VALID_TAG,13);
              _SFD_CT_CALL(TRANSITION_INACTIVE_TAG,13);
              goto sf_label_4;
            } else {
              _SFD_CT_CALL(TRANSITION_BEFORE_PROCESSING_TAG,23);
              if(CV_TRANSITION_EVAL(23,
                _SFD_CCP_CALL(23,0,(InputData_m1_c4_d3_AM_ADDR_OK))) != 0) {
                _SFD_CT_CALL(TRANSITION_ACTIVE_TAG,23);
                _SFD_CT_CALL(TRANSITION_WHEN_VALID_TAG,23);
                _SFD_CT_CALL(TRANSITION_INACTIVE_TAG,23);
                _SFD_CT_CALL(TRANSITION_BEFORE_PROCESSING_TAG,32);
                if(CV_TRANSITION_EVAL(32,
                  _SFD_CCP_CALL(32,0,(InputData_m1_c4_d7_DM_DH_DV))) != 0) {
                  if(sf_debug_transition_conflict_check_enabled()) {
                    unsigned int transitionList[2];
                    unsigned int numTransitions=1;
                    transitionList[0] = 32;
                    sf_debug_transition_conflict_check_begin();
                    if(!(InputData_m1_c4_d7_DM_DH_DV != 0.0)) {
                      transitionList[numTransitions] = 28;
                      numTransitions++;
                    }
                    sf_debug_transition_conflict_check_end();

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -