A
Artem
Guest
Konteks waktu switching terlihat sedikit lama.Butuh waktu sekitar 80 usec untuk
membuatnya.
Perkiraan mengukur dilakukan sebagai:
spi_sendbyte (INT8U byte)
(
SPDR = byte
OSSemPend (spi_IsrSemaphore);
PORTB & = ~ (0x80);
)spi_UcosSpiIsrHandler (void)
(
PORTB | = 0x80;
OSSemPend (spi_IsrSemaphore);
)
SPI telah diatur ke kecepatan tertinggi sehingga mengambil 2 usec untuk menyelesaikan transfer.
Tugas prioritas tertinggi adalah memohon yang spi_sendbyte () dan kemudian.
Portb diatur ketika transfer selesai SPI dihasilkan dan reset setelah tugas dilanjutkan bila OSSemPend dikembalikan.
UCOS Frek Atmega128 bekerja pada 16 MHz, 64 SRAM eksternal.
Apakah konteks somene beralih UCOS mengukur waktu dan itu biasanya memiliki konteks 80-100usec AVR beralih di bawah?
membuatnya.
Perkiraan mengukur dilakukan sebagai:
spi_sendbyte (INT8U byte)
(
SPDR = byte
OSSemPend (spi_IsrSemaphore);
PORTB & = ~ (0x80);
)spi_UcosSpiIsrHandler (void)
(
PORTB | = 0x80;
OSSemPend (spi_IsrSemaphore);
)
SPI telah diatur ke kecepatan tertinggi sehingga mengambil 2 usec untuk menyelesaikan transfer.
Tugas prioritas tertinggi adalah memohon yang spi_sendbyte () dan kemudian.
Portb diatur ketika transfer selesai SPI dihasilkan dan reset setelah tugas dilanjutkan bila OSSemPend dikembalikan.
UCOS Frek Atmega128 bekerja pada 16 MHz, 64 SRAM eksternal.
Apakah konteks somene beralih UCOS mengukur waktu dan itu biasanya memiliki konteks 80-100usec AVR beralih di bawah?