5.8.1.1.2 Code
Copy-paste the following setup code to your user application:
Add to user application initialization (typically the start of main()):voidconfigure_ccl(void){structccl_config conf;ccl_get_config_defaults(&conf);ccl_init(&conf);}voidconfigure_ccl_lut0(void){structccl_lut_config conf;ccl_lut_get_config_defaults(&conf);conf.truth_table_value = 0x02;conf.input0_src_sel = CCL_LUT_INPUT_SRC_IO;conf.input1_src_sel = CCL_LUT_INPUT_SRC_IO;conf.input2_src_sel = CCL_LUT_INPUT_SRC_IO;conf.filter_sel = CCL_LUTCTRL_FILTSEL_FILTER;structsystem_pinmux_config lut0_input_pin0_conf, lut0_input_pin1_conf, lut0_input_pin2_conf;system_pinmux_get_config_defaults(&lut0_input_pin0_conf);system_pinmux_get_config_defaults(&lut0_input_pin1_conf);system_pinmux_get_config_defaults(&lut0_input_pin2_conf);lut0_input_pin0_conf.direction = SYSTEM_PINMUX_PIN_DIR_INPUT;lut0_input_pin0_conf.mux_position = CCL_LUT0_IN0_MUX;lut0_input_pin1_conf.direction = SYSTEM_PINMUX_PIN_DIR_INPUT;lut0_input_pin1_conf.mux_position = CCL_LUT0_IN1_MUX;lut0_input_pin2_conf.direction = SYSTEM_PINMUX_PIN_DIR_INPUT;lut0_input_pin2_conf.mux_position = CCL_LUT0_IN2_MUX;system_pinmux_pin_set_config(CCL_LUT0_IN0_PIN, &lut0_input_pin0_conf);system_pinmux_pin_set_config(CCL_LUT0_IN1_PIN, &lut0_input_pin1_conf);system_pinmux_pin_set_config(CCL_LUT0_IN2_PIN, &lut0_input_pin2_conf);structsystem_pinmux_config lut0_out_pin_conf;system_pinmux_get_config_defaults(&lut0_out_pin_conf);lut0_out_pin_conf.direction = SYSTEM_PINMUX_PIN_DIR_OUTPUT;lut0_out_pin_conf.mux_position = CCL_LUT0_OUT_MUX;system_pinmux_pin_set_config(CCL_LUT0_OUT_PIN, &lut0_out_pin_conf);ccl_lut_set_config(CCL_LUT_0, &conf);}voidconfigure_ccl_lut1(void){structccl_lut_config conf;ccl_lut_get_config_defaults(&conf);conf.truth_table_value = 0x02;conf.input0_src_sel = CCL_LUT_INPUT_SRC_IO;conf.input1_src_sel = CCL_LUT_INPUT_SRC_IO;conf.input2_src_sel = CCL_LUT_INPUT_SRC_IO;conf.filter_sel = CCL_LUTCTRL_FILTSEL_FILTER;structsystem_pinmux_config lut1_input_pin0_conf, lut1_input_pin1_conf, lut1_input_pin2_conf;system_pinmux_get_config_defaults(&lut1_input_pin0_conf);system_pinmux_get_config_defaults(&lut1_input_pin1_conf);system_pinmux_get_config_defaults(&lut1_input_pin2_conf);lut1_input_pin0_conf.direction = SYSTEM_PINMUX_PIN_DIR_INPUT;lut1_input_pin0_conf.mux_position = CCL_LUT1_IN0_MUX;lut1_input_pin1_conf.direction = SYSTEM_PINMUX_PIN_DIR_INPUT;lut1_input_pin1_conf.mux_position = CCL_LUT1_IN1_MUX;lut1_input_pin2_conf.direction = SYSTEM_PINMUX_PIN_DIR_INPUT;lut1_input_pin2_conf.mux_position = CCL_LUT1_IN2_MUX;system_pinmux_pin_set_config(CCL_LUT1_IN0_PIN, &lut1_input_pin0_conf);system_pinmux_pin_set_config(CCL_LUT1_IN1_PIN, &lut1_input_pin1_conf);system_pinmux_pin_set_config(CCL_LUT1_IN2_MUX, &lut1_input_pin2_conf);structsystem_pinmux_config lut1_out_pin_conf;system_pinmux_get_config_defaults(&lut1_out_pin_conf);lut1_out_pin_conf.direction = SYSTEM_PINMUX_PIN_DIR_OUTPUT;lut1_out_pin_conf.mux_position = CCL_LUT1_OUT_MUX;system_pinmux_pin_set_config(CCL_LUT1_OUT_PIN, &lut1_out_pin_conf);ccl_lut_set_config(CCL_LUT_1, &conf);}
configure_ccl();configure_ccl_lut0();configure_ccl_lut1();ccl_seq_config(CCL_SEQ_0, CCL_SEQ_D_FLIP_FLOP);
ccl_lut_enable(CCL_LUT_0);ccl_lut_enable(CCL_LUT_1);ccl_module_enable();
