Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: com порт и at91sam7S256
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему > ARM, 32bit
KeySi
Есть ли у кого простой пример реализации обмена данными по com порту с компьютером.
KeySi
И еще, для IAR есть функция реализации задержки?)) Нет, не циклом фор, а что бы сек. совпадали реальности -)
aaarrr
Цитата(KeySi @ Apr 21 2010, 19:53) *
Есть ли у кого простой пример реализации обмена данными по com порту с компьютером.

Простенький пример для DBGU.
Код
#define    DRXD    (1UL << 27)
#define    DTXD    (1UL << 28)
#define    DBGU_BAUDRATE    115200
unsigned int mck = 48000000;

void dbgu_ini(void)
{
    AT91C_BASE_SYS->PIOA_PDR = DRXD | DTXD;

    AT91C_BASE_DBGU->DBGU_MR = AT91C_US_USMODE_NORMAL | AT91C_US_PAR_NONE;
    AT91C_BASE_DBGU->DBGU_BRGR = (mck + (DBGU_BAUDRATE * 8)) / (DBGU_BAUDRATE * 16);
    AT91C_BASE_DBGU->DBGU_CR = AT91C_US_TXEN + AT91C_US_RXEN;

    AT91C_BASE_DBGU->DBGU_IDR = ~0;
}

void dbgu_send_byte(unsigned int byte)
{
    while(!(AT91C_BASE_DBGU->DBGU_CSR & AT91C_US_TXRDY));
    AT91C_BASE_DBGU->DBGU_THR = byte;
}

А уж дальше разбирайтесь самостоятельно. То же самое можно сказать и по следующему вопросу -
Цитата(KeySi @ Apr 21 2010, 23:46) *
И еще, для IAR есть функция реализации задержки?)) Нет, не циклом фор, а что бы сек. совпадали реальности -)

У процессора имеется целый набор различных таймеров - RTT, PIT, TC. Описание их работы и примерные области применения подробно изложены в документации на процессор.
KeySi
Благодарю smile.gif Только жаль код, без комментов
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.