Lab4 DMA2D Embedded Systems

Dependencies:   BSP_DISCO_F746NG mbed

Revision:
2:b4b0e5e08b0a
Parent:
1:751d3c9544ea
Child:
3:ed3e2096b46f
--- a/main.cpp	Sat Oct 21 15:49:21 2017 +0000
+++ b/main.cpp	Tue Oct 24 06:27:04 2017 +0000
@@ -49,9 +49,16 @@
         // fill the previous position of image
         hdma2d.Init.Mode = DMA2D_R2M;
         HAL_DMA2D_Init(&hdma2d);
-        //HAL_DMA2D_Start(&hdma2d, 0x00000000, LCD_FB_START_ADDRESS + offset + xpos_offset, 150, 150);
-        HAL_DMA2D_Start(&hdma2d, 0x00000000, LCD_MEM_ADDR, 480, 272);
+        HAL_DMA2D_Start(&hdma2d, 0x00ff0000, LCD_MEM_ADDR, 480, 272);
         while(HAL_DMA2D_PollForTransfer(&hdma2d, 1000) != HAL_OK);
+        
+        // draw red square in position 10,10
+        hdma2d.Init.Mode = DMA2D_R2M;
+        hdma2d.Init.OutputOffset = 480 - 50;
+        HAL_DMA2D_Init(&hdma2d);
+        HAL_DMA2D_Start(&hdma2d, 0xffff0000, LCD_MEM_ADDR + (10 * 480 + 10) * 4, 50, 50);
+        while(HAL_DMA2D_PollForTransfer(&hdma2d, 1000) != HAL_OK);
+        
         // and move to the next
         xpos_offset += 4;
         if (xpos_offset == 300)