X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=bertos%2Fcpu%2Fcortex-m3%2Fdrv%2Fser_sam3.c;fp=bertos%2Fcpu%2Fcortex-m3%2Fdrv%2Fser_sam3.c;h=d9c2bc65c4693787a85e3dc00566b1fb55a92000;hb=f24ae17a2dcab5997de211f66fcec0a6e446bb84;hp=e7835bc314fb38b0c8251558c8702eb3f4664f79;hpb=38c3e464e1619549111a1c4d941e21b408ed5126;p=bertos.git diff --git a/bertos/cpu/cortex-m3/drv/ser_sam3.c b/bertos/cpu/cortex-m3/drv/ser_sam3.c index e7835bc3..d9c2bc65 100644 --- a/bertos/cpu/cortex-m3/drv/ser_sam3.c +++ b/bertos/cpu/cortex-m3/drv/ser_sam3.c @@ -91,6 +91,7 @@ #endif #define SER_UART0_BUS_TXINIT do { \ PIOA_PDR = BV(RXD0) | BV(TXD0); \ + PIO_PERIPH_SEL(PIOA_BASE, BV(RXD0) | BV(TXD0), PIO_PERIPH_A); \ } while (0) #endif @@ -132,6 +133,7 @@ #endif #define SER_UART1_BUS_TXINIT do { \ PIOA_PDR = BV(RXD1) | BV(TXD1); \ + PIO_PERIPH_SEL(PIOA_BASE, BV(RXD1) | BV(TXD1), PIO_PERIPH_A); \ } while (0) #endif @@ -178,9 +180,8 @@ #define SER_SPI0_BUS_TXINIT do { \ /* Disable PIO on SPI pins */ \ PIOA_PDR = BV(SPI0_SPCK) | BV(SPI0_MOSI) | BV(SPI0_MISO); \ - /* PIO is peripheral A */ \ - PIOA_ABCDSR1 &= ~(BV(SPI0_SPCK) | BV(SPI0_MOSI) | BV(SPI0_MISO)); \ - PIOA_ABCDSR2 &= ~(BV(SPI0_SPCK) | BV(SPI0_MOSI) | BV(SPI0_MISO)); \ + /* SPI is peripheral A on SAM3X,A,N,S,U */ \ + PIO_PERIPH_SEL(PIOA_BASE, BV(SPI0_SPCK) | BV(SPI0_MOSI) | BV(SPI0_MISO), PIO_PERIPH_A); \ } while (0) #else #define SER_SPI0_BUS_TXINIT do { \