Explorar el Código

rebak 0307 modify updateMenu_s

zack hace 1 año
padre
commit
05d0c93592
Se han modificado 4 ficheros con 1376 adiciones y 1362 borrados
  1. 1 0
      Core/Inc/ConfigMacros.h
  2. 32 10
      Core/Src/mba32a.c
  3. 1 1
      MDK-ARM/dtu.uvoptx
  4. 1342 1351
      Output/dtu.hex

+ 1 - 0
Core/Inc/ConfigMacros.h

@@ -8,6 +8,7 @@
 
 #define open4G			0	
 #define openBT			1	
+#define updateMenu		1	
 #define open16			11	//¿ª×Ö
 #define open16			11	//¿ª×Ö
 #define close16			12	//¹Ø×Ö

+ 32 - 10
Core/Src/mba32a.c

@@ -548,8 +548,29 @@ uint8_t in[16] = { 0x02, 0x0C, 0x00, 0x00, 0x00, 0x02, 0x64, 0x74, 0x75, 0x31, 0
     return 0;
 }
 
+void updateMenu_s(uint16_t S, uint16_t mask, uint16_t value) {
+    if (S == 0x1111) {
+        if ((menu.home & mask) == mask) {
+            menu.home = value;
+        } else {
+            menu.home |= value;
+        }
+    } else if (S == 0x2222) {
+        menu.home |= mask;
+    }
+}
+
+
+
 void modifyOledBmp(void)
 {
+	
+#if updateMenu == 1
+	updateMenu_s(S1, 0xF000, 0x1000);
+	updateMenu_s(S2, 0x0F00, 0x0100);
+	updateMenu_s(S3, 0x00F0, 0x0010);
+	updateMenu_s(S4, 0x000F, 0x0001);
+	#else
 	if (S1 == 0x1111)
 	{
 		if(menu.home && 0xF000 == 0xF000)
@@ -571,50 +592,51 @@ void modifyOledBmp(void)
 	{
 		if(menu.home && 0x0F00 == 0x0F00)
 		{
-			menu.home |= 0x0100;
+			menu.home = 0x0100;
 		}
 		else
 		{
-			menu.home = 0x0100;
+			menu.home |= 0x0100;
 		}
 	}
 		
 	if (S2 == 0x2222)
 	{
-		menu.home |= 0xF00;
+		menu.home |= 0x0F00;
 	}
 		
 	if (S3 == 0x1111)
 	{
 		if(menu.home && 0x00F0 == 0x00F0)
 		{
-			menu.home |= 0x0010;
+			menu.home = 0x0010;
 		}
 		else
 		{
-			menu.home = 0x0010;
+			menu.home |= 0x0010;
 		}
 	}
 	if (S3 == 0x2222)
 	{
-		menu.home |= 0xF0;
+		menu.home |= 0x00F0;
 	}
 	if (S4 == 0x1111)
 	{
 		if(menu.home && 0x000F == 0x000F)
 		{
-			menu.home |= 0x0001;
+			menu.home = 0x0001;
 		}
 		else
 		{
-			menu.home = 0x0001;
+			menu.home |= 0x0001;
 		}
 	}
 	if (S4 == 0x2222)
 	{
-		menu.home |= 0xF;
+		menu.home |= 0x000F;
 	}
-	
+
+#endif
 	//ťÖ¸´null
 //	if(S1==0xFFFF)
 //	{

+ 1 - 1
MDK-ARM/dtu.uvoptx

@@ -302,7 +302,7 @@
       <GroupNumber>2</GroupNumber>
       <FileNumber>6</FileNumber>
       <FileType>1</FileType>
-      <tvExp>0</tvExp>
+      <tvExp>1</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
       <bDave2>0</bDave2>
       <PathWithFileName>../Core/Src/main.c</PathWithFileName>

La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 1342 - 1351
Output/dtu.hex