В доисторческую эпоху, до "всеобщего интеренета" для изучения архитектуры микроконтроллеров их программирования приходилось читать документацию от корки до корки. Разбиратся что в какой регистр нужно положить и в какой последовательности. Чтобы коректно все работало.
Когда изучал AT91SAM7 пришлось разбиратся с тактированием, PLL, и т.д.
Но от производителя уже была библиотечка с "человеческими функциями" типа "ConfigureIt", "EnableIt".
Сейчас запускаю проект на LM3S6633.
Для програмирования PLL, заменил цифру 6 на 8 в константе SYSCTL_XTAL_8MHZ
SysCtlClockSet(SYSCTL_SYSDIV_1 | SYSCTL_USE_OSC | SYSCTL_OSC_MAIN |SYSCTL_XTAL_8MHZ);
Для програмирования UART, поменял только скорость обмена
UARTConfigSetExpClk(UART0_BASE, SysCtlClockGet(), 9600,
(UART_CONFIG_WLEN_8 | UART_CONFIG_STOP_ONE |
UART_CONFIG_PAR_NONE));
Скопировал, для настройки, функцию прерывания по приему полностью.
С одной стороны - облегчение труда, но квалификация по моему падает?