OpenPLC Editor 2.01が2022年11月15日にリリースされました。これで、今まで、直接Arduinoに書き込めなかった状態から改善されました。Thiago Alvesさんありがとうございます。これにより、runtimeを介さずに直接駆動することができるようになりました。
それでは早速、本題で入ります。
アナログ入力は変更することはできませんが、デジタル入出力、アナログ出力を変更することはできます。ここは自己責任で行って下さい。
"C:\Users\*****\OpenPLC_Editor\editor\arduino\src\hal\
uno_leonardo_nano_micro_zero.cpp"
*****はユーザー名
uno_leonardo_nano_micro_zero.cppをテキストエディタで開きます。
変更前 //Define the number of inputs and outputs for this board (mapping for the Arduino Uno) #define NUM_DISCRETE_INPUT 5 #define NUM_ANALOG_INPUT 6 #define NUM_DISCRETE_OUTPUT 4 #define NUM_ANALOG_OUTPUT 3
//Create the I/O pin masks uint8_t pinMask_DIN = {2, 3, 4, 5, 6}; uint8_t pinMask_AIN = {A0, A1, A2, A3, A4, A5}; uint8_t pinMask_DOUT = {7, 8, 12, 13}; uint8_t pinMask_AOUT = {9, 10, 11};
変更後 //Define the number of inputs and outputs for this board (mapping for the Arduino Uno) #define NUM_DISCRETE_INPUT 0 #define NUM_ANALOG_INPUT 6 #define NUM_DISCRETE_OUTPUT 14 #define NUM_ANALOG_OUTPUT 0
//Create the I/O pin masks uint8_t pinMask_DIN = {}; uint8_t pinMask_AIN = {A0, A1, A2, A3, A4, A5}; uint8_t pinMask_DOUT = {0,1,2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13}; uint8_t pinMask_AOUT = {};
%QX0.7の次は%QX1.0となります。
全部出力にすることができました。
|