26.8.2.1.2 Code
Copy-paste the following setup code to your user application:
Add to user application initialization (typically the start of main()):boolvolatiletrng_read_done =false;voidconfigure_trng(void);voidconfigure_trng_callback(void);voidtrng_complete_callback(structtrng_module *constmodule_inst);/* TRNG module software instance (must not go out of scope while in use) */staticstructtrng_module trng_instance;voidconfigure_trng(void){/* Create a new configuration structure for the TRNG settings* and fill with the default module settings. */structtrng_config config_trng;trng_get_config_defaults(&config_trng);/* Alter any TRNG configuration settings here if required *//* Initialize TRNG with the user settings */trng_init(&trng_instance, TRNG, &config_trng);}voidtrng_complete_callback(structtrng_module *constmodule_inst){trng_read_done =true;}voidconfigure_trng_callback(void){trng_register_callback(&trng_instance, trng_complete_callback,TRNG_CALLBACK_READ_BUFFER);trng_enable_callback(&trng_instance, TRNG_CALLBACK_READ_BUFFER);}
system_init();configure_trng();configure_trng_callback();trng_enable(&trng_instance);
