unknown 4 днів тому
батько
коміт
88825cf399

+ 28 - 42
.obsidian/workspace.json

@@ -8,63 +8,49 @@
         "type": "tabs",
         "type": "tabs",
         "children": [
         "children": [
           {
           {
-            "id": "2c70f6f41521fcbf",
+            "id": "990423f4157765d6",
             "type": "leaf",
             "type": "leaf",
             "state": {
             "state": {
               "type": "markdown",
               "type": "markdown",
               "state": {
               "state": {
-                "file": "proGit.md",
+                "file": "ROTEK/bt67xx/common.md",
                 "mode": "source",
                 "mode": "source",
                 "source": false
                 "source": false
               },
               },
               "icon": "lucide-file",
               "icon": "lucide-file",
-              "title": "proGit"
+              "title": "common"
             }
             }
           },
           },
           {
           {
-            "id": "2894bdddb1d8c676",
+            "id": "d4b52c21606641d7",
             "type": "leaf",
             "type": "leaf",
             "state": {
             "state": {
               "type": "markdown",
               "type": "markdown",
               "state": {
               "state": {
-                "file": "todo/Разное.md",
+                "file": "ROTEK/bt67xx/common.md",
                 "mode": "source",
                 "mode": "source",
                 "source": false
                 "source": false
               },
               },
               "icon": "lucide-file",
               "icon": "lucide-file",
-              "title": "Разное"
+              "title": "common"
             }
             }
           },
           },
           {
           {
-            "id": "eacc9ea5aceb9106",
+            "id": "d4231455d8b000ce",
             "type": "leaf",
             "type": "leaf",
             "state": {
             "state": {
               "type": "markdown",
               "type": "markdown",
               "state": {
               "state": {
-                "file": "English/Theory.md",
+                "file": "ROTEK/bt67xx/Команды.md",
                 "mode": "source",
                 "mode": "source",
                 "source": false
                 "source": false
               },
               },
               "icon": "lucide-file",
               "icon": "lucide-file",
-              "title": "Theory"
-            }
-          },
-          {
-            "id": "3a1c3ec8c8fdc971",
-            "type": "leaf",
-            "state": {
-              "type": "markdown",
-              "state": {
-                "file": "English/words.md",
-                "mode": "source",
-                "source": false
-              },
-              "icon": "lucide-file",
-              "title": "words"
+              "title": "Команды"
             }
             }
           }
           }
         ],
         ],
-        "currentTab": 1
+        "currentTab": 2
       }
       }
     ],
     ],
     "direction": "vertical"
     "direction": "vertical"
@@ -87,7 +73,7 @@
                 "autoReveal": false
                 "autoReveal": false
               },
               },
               "icon": "lucide-folder-closed",
               "icon": "lucide-folder-closed",
-              "title": "Файловый менеджер"
+              "title": "Files"
             }
             }
           },
           },
           {
           {
@@ -187,23 +173,31 @@
   },
   },
   "left-ribbon": {
   "left-ribbon": {
     "hiddenItems": {
     "hiddenItems": {
-      "switcher:Меню быстрого перехода": false,
-      "graph:Граф": false,
-      "canvas:Создать новый холст": false,
-      "command-palette:Открыть палитру команд": false,
-      "markdown-importer:Импорт Markdown-файлов": false
+      "switcher:Open quick switcher": false,
+      "graph:Open graph view": false,
+      "canvas:Create new canvas": false,
+      "command-palette:Open command palette": false,
+      "markdown-importer:Open format converter": false
     }
     }
   },
   },
-  "active": "2894bdddb1d8c676",
+  "active": "d4231455d8b000ce",
   "lastOpenFiles": [
   "lastOpenFiles": [
+    "ROTEK/bt67xx/common.md",
+    "ROTEK/bt67xx/Команды.md",
+    "English/Homework/Homework 8.md",
+    "ASM/asm_x64.md",
+    "English/img/33-5.jpg",
+    "English/img/33-4.jpg",
+    "English/img/33-3.jpg",
+    "English/img/33-2.jpg",
+    "English/img/33-1.jpg",
+    "todo/Разное.md",
     "todo/Задачи по направлениям.md",
     "todo/Задачи по направлениям.md",
     "Кодинг.md",
     "Кодинг.md",
     "Комментарии.md",
     "Комментарии.md",
-    "English/Homework/Homework 8.md",
     "English/words.md",
     "English/words.md",
     "English/Theory.md",
     "English/Theory.md",
     "proGit.md",
     "proGit.md",
-    "ROTEK/bt67xx/common.md",
     "English/Texts/Text 9.md",
     "English/Texts/Text 9.md",
     "tools.md",
     "tools.md",
     "hardcore web development/11. SQL/room_1.sql",
     "hardcore web development/11. SQL/room_1.sql",
@@ -216,11 +210,8 @@
     "linux/Tmux.md",
     "linux/Tmux.md",
     "linux/linux common.md",
     "linux/linux common.md",
     "ASM/gdb.md",
     "ASM/gdb.md",
-    "ASM/asm_x64.md",
     "todo/Счета.md",
     "todo/Счета.md",
     "linux/vim.md",
     "linux/vim.md",
-    "English/img/31-2.jpg",
-    "English/img/31-1.jpg",
     "English/Texts/Text 0.md",
     "English/Texts/Text 0.md",
     "ROTEK/allwinner 069 070.md",
     "ROTEK/allwinner 069 070.md",
     "English/Homework/Homework 7.md",
     "English/Homework/Homework 7.md",
@@ -229,18 +220,13 @@
     "ROTEK/Arbiter.md",
     "ROTEK/Arbiter.md",
     "STM32/Makefile template.md",
     "STM32/Makefile template.md",
     "common.md",
     "common.md",
-    "todo/Разное.md",
     "Python/venv.md",
     "Python/venv.md",
-    "linux/server.md",
     "STM32/Makefile_template.txt",
     "STM32/Makefile_template.txt",
     "English/img/29-10.jpg.~tmp",
     "English/img/29-10.jpg.~tmp",
     "English/img/29-9.jpg.~tmp",
     "English/img/29-9.jpg.~tmp",
     "English/img/29-8.jpg.~tmp",
     "English/img/29-8.jpg.~tmp",
     "English/img/29-7.jpg.~tmp",
     "English/img/29-7.jpg.~tmp",
     "English/img/29-6.jpg.~tmp",
     "English/img/29-6.jpg.~tmp",
-    "English/img/29-5.jpg.~tmp",
-    "English/img/29-10.jpg",
-    "English/img/29-9.jpg",
-    "English/img/29-8.jpg"
+    "English/img/29-5.jpg.~tmp"
   ]
   ]
 }
 }

+ 32 - 1
ASM/asm_x64.md

@@ -51,6 +51,11 @@ movw 4(%rbx, %rcx, 2), %ax
 movb data(%rip), %al
 movb data(%rip), %al
 ```
 ```
 
 
+Поместить значение регистра rip в другой регистр
+```asm
+leaq (%rip) %rax
+```
+
 **PIC (PIE) - Position Independent Code**
 **PIC (PIE) - Position Independent Code**
 Это код, который не зависит от абсолютных адресов. Все ссылки на ячейки памяти относительные (например относительно счетчика команд). Этот код может быть размещен в любой области памяти. Может использоваться при создании динамических библиотек.
 Это код, который не зависит от абсолютных адресов. Все ссылки на ячейки памяти относительные (например относительно счетчика команд). Этот код может быть размещен в любой области памяти. Может использоваться при создании динамических библиотек.
 
 
@@ -137,4 +142,30 @@ count - загружается в регистр %rdx - количество в
 
 
 *Сегмент данных* начинается с директивы .data.
 *Сегмент данных* начинается с директивы .data.
 
 
-~={green}остановился на начале 14=~
+~={yellow}JMP - команда безусловного перехода=~
+
+```asm
+// Переход по на метку
+jmp M
+
+// или
+addr:
+	.quad 0x401023
+_start:
+	jmp *addr
+
+// или загрузить адрес метки в регистр
+_start
+	movq $M, %rax
+	jmp *%rax
+
+// или поместить нужный адрес в сегмент стека
+
+_start:
+	movq %rsp, %rdp
+	movq $M, -8(%rdp)
+	jmpq *-8(%rdp); // jmpq - если адрес перехода где-то хранится
+
+```
+
+~={green}остановился на начале 16=~

+ 23 - 0
English/Homework/Homework 8.md

@@ -228,3 +228,26 @@
 8. Do you know how to use a gear stick?
 8. Do you know how to use a gear stick?
 9. Where has Mary learnt to cook potato pancakes?
 9. Where has Mary learnt to cook potato pancakes?
 10. It is necessary to know how to use a gear stick, isn't it?
 10. It is necessary to know how to use a gear stick, isn't it?
+
+---
+~={green}174 Поставь глагол в скобках в Past Perfect, Past Simple.=~
+1. Ann had cooked dinner by the time we came home.
+2. Before the TV programme was over the children had fallen asleep.
+3. We came back from the party at 10 p.m.
+4. He had come back from the party by 10 p.m.
+5. The children had fallen asleep before supper was served.
+6. By the time we left school, we has learnt English well.
+7. He studed last night.
+8. After she had read the book, she gave it to me.
+9. The workers went home after they had finished their day task.
+10. I already had finished my composition when you rang me up.
+11. By the end of June Ann had passed all her exams.
+12. By the time parents returned Mike had switched off the computer.
+
+~={green}175 Поставь глагол в скобках в Past Simple или Past Perfect.=~
+1. Nick finished his homework at seven o'clock.
+2. Nick had finished his homework by seven o'clock.
+3. He had traveled all over Britain before he began to write books.
+4. I had knowen all the names of the pupils by the end of the month.
+5. When John came to the station, the train had already left.
+6. When Pete woke, his father had already gone to work.

BIN
English/img/33-1.jpg


BIN
English/img/33-2.jpg


BIN
English/img/33-3.jpg


BIN
English/img/33-4.jpg


BIN
English/img/33-5.jpg


+ 55 - 0
ROTEK/bt67xx/Команды.md

@@ -0,0 +1,55 @@
+~={yellow}Проблема сброса ошибки 13=~
+
+```c
+void UPS_OverTempratureMonitor(void)
+{
+    if ((UPS.fault_type == 0x41) && (UPS.Temp < 55) && ((UPS.Status >> 7) & 0x01)) 
+    {
+	    // Команда из enum cmdMegaTecEnums_t (32)
+        UPScmd(ups_remote_turn_off);
+        xTimerStart(UPSRestartTimer, 0);
+        UPS.fault_type = 0;
+    }
+}
+```
+
+```c
+typedef enum {
+    ups_status_req,   // 0 Q1\n
+    ups_test_10sec,   // 1 T\n
+    ups_test_low_bat, // 2 TL\n
+    ups_test_time,    // 3 T
+    ups_beep,         // 4 Q\r
+    ups_shutdown,     // 5 S
+    ups_shutdown_restore,   // 6 R
+    ups_cancel_shut_down,   // 7 C\r
+    ups_cancel_test,        // 8 CT\r
+    ups_info,               // 9 I\r
+    ups_rating_info,        // 10 F\r
+    ups_remain_time_reg,    // 11 Q2\r
+    ups_general_status_req, // 12 QGS\r
+    ups_akb_info,     // 13 QBV\r
+    ups_model_req,    // 14 QMD\r
+    ups_version_req,  // 15 QVFW\r
+    ups_version2_req, // 16 QVFW2\r
+    ups_serial_req,   // 17 QID\r
+    ups_protocol_id_req,    // 18 QPI\r 
+    ups_offline_status_req, // 19 QS\r
+    ups_passw_req,      // 20 M\r
+    ups_buzzer_cntrl,   // 21 PDA\r
+    ups_mode_req,       // 22 QMOD\r
+    ups_remote_turn_on, // 23 SON\r
+    ups_warning_status, // 24 QWS\r
+    ups_bypass_volt_range,    // 25 QBYV\r
+    ups_bypass_hvolt_264_set, // 26 PHV264\r
+    ups_qflag_status,      // 27 QFLAG\r
+    ups_cmd_enable_flag_l, // 28 PEL\r
+    ups_kstar_status,      // 29 BT\r
+    ups_temperature,       // 30 QTPR\r
+    ups_fault_status,      // 31 QFS
+    ups_remote_turn_off,   // 32 SOFF
+
+    MegaTec_cmd_max
+
+} cmdMegaTecEnums_t;
+```