Про піки і їх програмування

Мені, зокрема, не сподобалося, що конфігурація всієї периферії відбувалася шляхом запису деяких неоднозначних чисел в конфігураційні регістри. Але шансу розвинути дискусію не дали. Тому тим, кому цікаво, як це відносно просто і красиво зробити в MPLAB з компілятором C30, наприклад, прошу під кат.


Отже, я програмую DSPIC33. Зокрема роблю на них управління двигунами постійного струму.
Взагалі, 33-піки не сильно відрізняються від 30 серії. Правда, в кращу сторону. Вони менше гріються на максимальній частоті, у них можна переконфігурувати Піни периферії. Однак деякий геморой додається. Але все це можна вирішити.

Не знаю як інші, але я вважаю хорошим тоном ставити конфігурацію процесора прямо в коді, бо тоді відразу дивлячись на исходник стає зрозуміло як і що працює. наприклад:


Про те, що дані конкретні макроси значать можна почитати в документації на процесор (правда зараз з ходу не знайшов, якщо хто підкаже де це лежить - буду вдячний).

Function Prototype
void OpenUART1 (unsigned int config1,

unsigned int config2, unsigned int ubrg);

void OpenUART2 (unsigned int config1,

unsigned int config2, unsigned int ubrg);

Description
This function configures the UART module.

Arguments
config1 - This contains the parameters to be configured in the UxMODE register as defined below.

UART Idle mode operation

UART communication with alternate TX / RX pins *

* UART communication with alternate pins is available only for certain devices and the suitable data sheet should be referred to.

UART Wake-up on Start

UART Loopback mode enable / disable

Input to Capture module

Схожі статті