瀏覽代碼

Working LCD_USE_DMA_FSMC (#19522)

Tanguy Pruvot 3 年之前
父節點
當前提交
f3de0f6c53
沒有連結到貢獻者的電子郵件帳戶。
共有 2 個檔案被更改,包括 11 行新增1 行删除
  1. 10
    0
      Marlin/src/HAL/STM32F1/tft/tft_fsmc.cpp
  2. 1
    1
      Marlin/src/pins/stm32f1/pins_LONGER3D_LK.h

+ 10
- 0
Marlin/src/HAL/STM32F1/tft/tft_fsmc.cpp 查看文件

@@ -89,6 +89,16 @@ void TFT_FSMC::Init() {
89 89
   uint8_t cs = FSMC_CS_PIN, rs = FSMC_RS_PIN;
90 90
   uint32_t controllerAddress;
91 91
 
92
+  #if PIN_EXISTS(TFT_BACKLIGHT)
93
+    OUT_WRITE(TFT_BACKLIGHT_PIN, DISABLED(DELAYED_BACKLIGHT_INIT));
94
+  #endif
95
+
96
+  #if ENABLED(LCD_USE_DMA_FSMC)
97
+    dma_init(FSMC_DMA_DEV);
98
+    dma_disable(FSMC_DMA_DEV, FSMC_DMA_CHANNEL);
99
+    dma_set_priority(FSMC_DMA_DEV, FSMC_DMA_CHANNEL, DMA_PRIORITY_MEDIUM);
100
+  #endif
101
+
92 102
   #if PIN_EXISTS(TFT_RESET)
93 103
     OUT_WRITE(TFT_RESET_PIN, HIGH);
94 104
     delay(100);

+ 1
- 1
Marlin/src/pins/stm32f1/pins_LONGER3D_LK.h 查看文件

@@ -124,7 +124,7 @@
124 124
 #define FSMC_CS_PIN                         PD7   // pin 88 = FSMC_NE1
125 125
 #define FSMC_RS_PIN                         PD11  // pin 58 A16 Register. Only one address needed
126 126
 
127
-//#define LCD_USE_DMA_FSMC                        // Use DMA transfers to send data to the TFT (broken)
127
+#define LCD_USE_DMA_FSMC                          // Use DMA transfers to send data to the TFT
128 128
 #define FSMC_DMA_DEV                        DMA2
129 129
 #define FSMC_DMA_CHANNEL                 DMA_CH5
130 130
 

Loading…
取消
儲存