Good day everyone.
I am asking for help here so please be nice as I am not at all program savvy but am trying to understand the timer registries on the nano every. I've downloaded and printed out the entire 551 pages of the Atmega 4809 and I am having some trouble, the code below I have copied from
after lines like
PORTMUX.TCBROUTEA |= PORTMUX_TCB1_bm;
and
TCB1.CTRLB = 0 << TCB_ASYNC_bp /* Asynchronous Enable: disabled */
| 1 << TCB_CCMPEN_bp /* Pin Output Enable: enabled */
| 0 << TCB_CCMPINIT_bp /* Pin Initial State: disabled */
| TCB_CNTMODE_PWM8_gc; /* 8-bit PWM */
Right at the end there is a "_bm" or "_bp" or "_gc" before the semi colon in small letters, I have gone through the entire timer A and B chapters but do not find references to what these small letters mean. could someone please explain them to me or point me to page specifics int the 551 page manual where I might find the references to these lower case letters?
Thank you in advance!
Regards.
pinMode(3, OUTPUT); //Port F, Pin 5 = Arduino ~D3
/* set the alternate pin mux */
PORTMUX.TCBROUTEA |= PORTMUX_TCB1_bm;
TCB1.CCMPL = 255; /* PWM Period*/
TCB1.CCMPH = 128; /* PWM Compare*/
TCB1.CTRLB = 0 << TCB_ASYNC_bp /* Asynchronous Enable: disabled */
| 1 << TCB_CCMPEN_bp /* Pin Output Enable: enabled */
| 0 << TCB_CCMPINIT_bp /* Pin Initial State: disabled */
| TCB_CNTMODE_PWM8_gc; /* 8-bit PWM */
// TCB1.DBGCTRL = 0 << TCB_DBGRUN_bp; /* Debug Run: disabled */
// TCB1.EVCTRL = 0 << TCB_CAPTEI_bp /* Event Input Enable: disabled */
// | 0 << TCB_EDGE_bp /* Event Edge: disabled */
// | 0 << TCB_FILTER_bp; /* Input Capture Noise Cancellation Filter: disabled */
// TCB1.INTCTRL = 0 << TCB_CAPT_bp; /* Setting: disabled */
TCB1.CTRLA = TCB_CLKSEL_CLKDIV1_gc /* CLK_PER (No Prescaling) */
| 1 << TCB_ENABLE_bp /* Enable: enabled */
| 0 << TCB_RUNSTDBY_bp /* Run Standby: disabled */
| 0 << TCB_SYNCUPD_bp; /* Synchronize Update: disabled */
TCB1.CTRLA |= TCB_ENABLE_bm;