FAQ
- M051 Base Series(95)
- M0518 Series(97)
- M0519 Series(43)
- M0564 Series(1)
- Mini51 Base Series(90)
- Nano100/102 Base Series(101)
- Nano103 Base Series(10)
- Nano110/112 LCD Series(100)
- Nano120 USB Series(111)
- Nano130 Advanced Series(110)
- NUC029 Series(94)
- NUC100/200 Advanced Series(102)
- NUC120/122/123/220 USB Series(116)
- NUC121/125 Series(1)
- NUC126 USB Series(2)
- NUC130/230 CAN Series(103)
- NUC131/NUC1311 CAN Series(98)
- NUC140/240 Connectivity Series(114)
- M451 Base Series(118)
- M451M Series(117)
- M452 USB Series(130)
- M4521 USB Series(1)
- M453 CAN Series(128)
- M463 CAN FD/USB HS Series(1)
- M467 Ethernet/Crypto Series(1)
- M471 Series(1)
- M479 Motor Control Series(1)
- M481 Base Series(4)
- M482 USB FS OTG Series(4)
- M483 CAN Series(4)
- M484 USB HS OTG Series(4)
- M485 Crypto Series(4)
- M487 Ethernet Series(4)
- M4TK Touch Key Series(25)
- NUC442/472 Series(130)
- NUC472 Series(1)
- NUC505 Series(138)
FAQ
Why did the phenomenon of data sent by PDMA being displaced occur? Issue Date:2016-06-27
When the source or destination address is set as the array starting address, the user must check whether the array starting address is word aligned.
In the following example, the starting address of a buffer is 0x2000_0039. Since the ordering of memory is determined by a compiler, the non-word aligned situation may occur.
unsigned int test2;
unsigned char test1;
unsigned char buffer[100];
When the PDMA source or destination address is set as buffer (0x2000_0039), PDMA hardware will be set as word accessed (0x2000_0038).
If using the PDMA with UART to send data, the data to be sent will be 0x01, 0x03 …, instead of starting from 0X03.
In the case that memory is not word aligned, aligned (4) can be used such that the array can be aligned with the byte in memory.
unsigned char buffer[100] __attribute__ ((aligned (4)));
The starting address of the array buffer will be arranged and aligned with 4 bytes.
When the PDMA source or destination address is set as buffer (0x2000_003C), there are words being aligned. If using the PDMA with UART to send data, the data to be sent will start from 0X03.
Products: | Microcontrollers ,Arm Cortex-M0 MCUs ,M051 Base Series ,M0518 Series ,M0519 Series ,Nano100/102 Base Series ,Nano110/112 LCD Series ,Nano120 USB Series ,Nano130 Advanced Series ,NUC029 Series ,NUC100/200 Advanced Series ,NUC120/122/123/220 USB Series ,NUC130/230 CAN Series ,NUC131/NUC1311 CAN Series ,NUC140/240 Connectivity Series ,Arm Cortex-M4 MCUs ,M451 Base Series ,M451M Series ,M452 USB Series ,M453 CAN Series ,NUC442/472 Series ,NUC505 Series |
---|---|
Applications: | |
Function: | Peripherals,Connectivity,DMA (PDMA) |