ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Суббота
21 сентября
35403 Топик полностью
VladislavS (13.07.2005 18:53, просмотров: 1) ответил д__ на Не выходи из прерывания до тех пор пока все символы не вычитаешь из US_RHR там имеет место буферизация... И еще
Я только передаю. И обрабатываю опустение буфера. Впрочем, код внутри Делаю вот так

//Прерывание таймера TC0 100 Гц
void Interrupt_Source17(void)
{
  USART0_TPR = (unsigned long) txbuf;  //Адерс буфера
  USART0_TCR = 0x08;                   //8 байт на передачу
  USART0_PTCR = 0x00000100; //TXTEN
  if(TC012_SR) return;
};

//Прерывание USART0
void Interrupt_Source6(void)
{
  if(USART0_CSR&0x00000010)
  {
    //Тут нужный мне код
  }
  return;
};

Во второе прерывание попадаю бесконечно. Само собой, данные успевают передаться с многократным запасом между прерываниями таймера.