Для моего проекта нужно 32 Ain , 56 Din , 64 dout и 4 энкодера . В прошивке Midibox64е нет Ain.
И еще вопрос , можно ли все это сделать при помощи MIOS.
Можно скомпилировать прошивку , но не могу разобраться с исходниками ,в папке с прошивкой лежит файл ASM ,но он по размеру какой-то маленький.
Там как раз все прописано , но при компиляции энкодеров дает ошибку на эту строку dw (mode << 8) | (din_0 + 8*(sr-1)),без нее компилирует но прошивка по размеру получается в 10 раз меньше .
На эту тоже ругается #include "src/main.inc" за место нее пишешь END - компилирует.
Можно ли этоту часть прошивки как то присоединить к основной :
org 0x3280 ; never change the origin!
;; encoder entry structure
ENC_ENTRY MACRO sr, din_0, mode
dw (mode << 8) | (din_0 + 8*(sr-1))
ENDM
ENC_EOT MACRO
dw 0xffff
ENDM
MIOS_ENC_PIN_TABLE
;; encoders 1-16
;; SR Pin Mode
ENC_ENTRY 9, 0, MIOS_ENC_MODE_NON_DETENTED ; V-Pot 1
ENC_ENTRY 9, 2, MIOS_ENC_MODE_NON_DETENTED ; V-Pot 2
ENC_ENTRY 9, 4, MIOS_ENC_MODE_NON_DETENTED ; V-Pot 3
ENC_ENTRY 9, 6, MIOS_ENC_MODE_NON_DETENTED ; V-Pot 4
ENC_ENTRY 10, 0, MIOS_ENC_MODE_NON_DETENTED ; V-Pot 5
ENC_ENTRY 10, 2, MIOS_ENC_MODE_NON_DETENTED ; V-Pot 6
ENC_ENTRY 10, 4, MIOS_ENC_MODE_NON_DETENTED ; V-Pot 7
ENC_ENTRY 10, 6, MIOS_ENC_MODE_NON_DETENTED ; V-Pot 8
ENC_ENTRY 11, 0, MIOS_ENC_MODE_NON_DETENTED ; V-Pot 9
ENC_ENTRY 11, 2, MIOS_ENC_MODE_NON_DETENTED ; V-Pot 10
ENC_ENTRY 11, 4, MIOS_ENC_MODE_NON_DETENTED ; V-Pot 11
ENC_ENTRY 11, 6, MIOS_ENC_MODE_NON_DETENTED ; V-Pot 12
ENC_ENTRY 12, 0, MIOS_ENC_MODE_NON_DETENTED ; V-Pot 13
ENC_ENTRY 12, 2, MIOS_ENC_MODE_NON_DETENTED ; V-Pot 14
ENC_ENTRY 12, 4, MIOS_ENC_MODE_NON_DETENTED ; V-Pot 15
ENC_ENTRY 12, 6, MIOS_ENC_MODE_NON_DETENTED ; V-Pot 16
;; encoders 17-32
ENC_ENTRY 13, 0, MIOS_ENC_MODE_NON_DETENTED ; V-Pot 17
ENC_ENTRY 13, 2, MIOS_ENC_MODE_NON_DETENTED ; V-Pot 18
ENC_ENTRY 13, 4, MIOS_ENC_MODE_NON_DETENTED ; V-Pot 19
ENC_ENTRY 13, 6, MIOS_ENC_MODE_NON_DETENTED ; V-Pot 20
ENC_ENTRY 14, 0, MIOS_ENC_MODE_NON_DETENTED ; V-Pot 21
ENC_ENTRY 14, 2, MIOS_ENC_MODE_NON_DETENTED ; V-Pot 22
ENC_ENTRY 14, 4, MIOS_ENC_MODE_NON_DETENTED ; V-Pot 23
ENC_ENTRY 14, 6, MIOS_ENC_MODE_NON_DETENTED ; V-Pot 24
ENC_ENTRY 15, 0, MIOS_ENC_MODE_NON_DETENTED ; V-Pot 25
ENC_ENTRY 15, 2, MIOS_ENC_MODE_NON_DETENTED ; V-Pot 26
ENC_ENTRY 15, 4, MIOS_ENC_MODE_NON_DETENTED ; V-Pot 27
ENC_ENTRY 15, 6, MIOS_ENC_MODE_NON_DETENTED ; V-Pot 28
ENC_ENTRY 16, 0, MIOS_ENC_MODE_NON_DETENTED ; V-Pot 29
ENC_ENTRY 16, 2, MIOS_ENC_MODE_NON_DETENTED ; V-Pot 30
ENC_ENTRY 16, 4, MIOS_ENC_MODE_NON_DETENTED ; V-Pot 31
ENC_ENTRY 16, 6, MIOS_ENC_MODE_NON_DETENTED ; V-Pot 32
;; encoders 33-48
ENC_EOT
ENC_EOT
ENC_EOT
ENC_EOT
ENC_EOT
ENC_EOT
ENC_EOT
ENC_EOT
ENC_EOT
ENC_EOT
ENC_EOT
ENC_EOT
ENC_EOT
ENC_EOT
ENC_EOT
ENC_EOT
;; encoders 49-64
ENC_EOT
ENC_EOT
ENC_EOT
ENC_EOT
ENC_EOT
ENC_EOT
ENC_EOT
ENC_EOT
ENC_EOT
ENC_EOT
ENC_EOT
ENC_EOT
ENC_EOT
ENC_EOT
ENC_EOT
ENC_EOT
#include "src/main.inc"
Здесь как я думаю можно прописать ригистры и их ноги на которых будут энкодеры, но как это запихать в основную прошивку ?
Edited by SokolVadim, 24 March 2012 - 08:27.