| TCD->SADDR = &p; | TCD->SADDR = &p; | ||||
| TCD->SOFF = 0; | TCD->SOFF = 0; | ||||
| TCD->ATTR_SRC = 0; | TCD->ATTR_SRC = 0; | ||||
| if ((uint32_t)p < 0x40000000 || TCD->NBYTES == 0) TCD->NBYTES = 1; | |||||
| if ((uint32_t)&p < 0x40000000 || TCD->NBYTES == 0) TCD->NBYTES = 1; | |||||
| TCD->SLAST = 0; | TCD->SLAST = 0; | ||||
| } | } | ||||
| void source(volatile const signed short &p) { source(*(volatile const uint16_t *)&p); } | void source(volatile const signed short &p) { source(*(volatile const uint16_t *)&p); } | ||||
| TCD->SADDR = &p; | TCD->SADDR = &p; | ||||
| TCD->SOFF = 0; | TCD->SOFF = 0; | ||||
| TCD->ATTR_SRC = 1; | TCD->ATTR_SRC = 1; | ||||
| if ((uint32_t)p < 0x40000000 || TCD->NBYTES == 0) TCD->NBYTES = 2; | |||||
| if ((uint32_t)&p < 0x40000000 || TCD->NBYTES == 0) TCD->NBYTES = 2; | |||||
| TCD->SLAST = 0; | TCD->SLAST = 0; | ||||
| } | } | ||||
| void source(volatile const signed int &p) { source(*(volatile const uint32_t *)&p); } | void source(volatile const signed int &p) { source(*(volatile const uint32_t *)&p); } | ||||
| TCD->SADDR = &p; | TCD->SADDR = &p; | ||||
| TCD->SOFF = 0; | TCD->SOFF = 0; | ||||
| TCD->ATTR_SRC = 2; | TCD->ATTR_SRC = 2; | ||||
| if ((uint32_t)p < 0x40000000 || TCD->NBYTES == 0) TCD->NBYTES = 4; | |||||
| if ((uint32_t)&p < 0x40000000 || TCD->NBYTES == 0) TCD->NBYTES = 4; | |||||
| TCD->SLAST = 0; | TCD->SLAST = 0; | ||||
| } | } | ||||
| TCD->DADDR = &p; | TCD->DADDR = &p; | ||||
| TCD->DOFF = 0; | TCD->DOFF = 0; | ||||
| TCD->ATTR_DST = 0; | TCD->ATTR_DST = 0; | ||||
| if ((uint32_t)p < 0x40000000 || TCD->NBYTES == 0) TCD->NBYTES = 1; | |||||
| if ((uint32_t)&p < 0x40000000 || TCD->NBYTES == 0) TCD->NBYTES = 1; | |||||
| TCD->DLASTSGA = 0; | TCD->DLASTSGA = 0; | ||||
| } | } | ||||
| void destination(volatile signed short &p) { destination(*(volatile uint16_t *)&p); } | void destination(volatile signed short &p) { destination(*(volatile uint16_t *)&p); } | ||||
| TCD->DADDR = &p; | TCD->DADDR = &p; | ||||
| TCD->DOFF = 0; | TCD->DOFF = 0; | ||||
| TCD->ATTR_DST = 1; | TCD->ATTR_DST = 1; | ||||
| if ((uint32_t)p < 0x40000000 || TCD->NBYTES == 0) TCD->NBYTES = 2; | |||||
| if ((uint32_t)&p < 0x40000000 || TCD->NBYTES == 0) TCD->NBYTES = 2; | |||||
| TCD->DLASTSGA = 0; | TCD->DLASTSGA = 0; | ||||
| } | } | ||||
| void destination(volatile signed int &p) { destination(*(volatile uint32_t *)&p); } | void destination(volatile signed int &p) { destination(*(volatile uint32_t *)&p); } | ||||
| TCD->DADDR = &p; | TCD->DADDR = &p; | ||||
| TCD->DOFF = 0; | TCD->DOFF = 0; | ||||
| TCD->ATTR_DST = 2; | TCD->ATTR_DST = 2; | ||||
| if ((uint32_t)p < 0x40000000 || TCD->NBYTES == 0) TCD->NBYTES = 4; | |||||
| if ((uint32_t)&p < 0x40000000 || TCD->NBYTES == 0) TCD->NBYTES = 4; | |||||
| TCD->DLASTSGA = 0; | TCD->DLASTSGA = 0; | ||||
| } | } | ||||