やっぱり自作のPythonスクリプトを動かすためには、なんかが足りないようです。
ググる先生を検索していると過去の自分の記事を発見しました。
新しいバージョンのBlenderに対して行ったこと
今回も同じことを行うことで無事動きました。
すぐに忘れる脳には、やっぱり必要なんだな。ブログ。
しかし、なんだな。なんにも作業が進まないのに、Blenderのバージョンだけが上がっていくという…
SDCC-3.3.0
MinGW mingw32-base
msys-base
http://sourceforge.net/projects/fx2lib/ からダウンロードした fx2lib-src-0.1.tgz
pfenrirさんちで公開されているヘッダファイルとmakefile
Intel Hex file to EZ-USB Binary file conversion utilityということで、できたようです。
Copyright (c) 2012-2013, Cypress Semiconductor Inc.
4979 Bytes written.
Total Code Bytes = 4726
Conversion completed successfully.
C:\Cypress\USB\CY3684_EZ-USB_FX2LP_DVK\1.0\Bin\hex2bix -i -f 0xC2 -o bulkloop.iic bulkloop.hexのように入れますが、このファイルの指定時にコンパイルするフォルダを指定します↓
C:\Cypress\USB\CY3684_EZ-USB_FX2LP_DVK\1.0\Bin\hex2bix -i -f 0xC2 -o .\build_by_keil\bulkloop.iic .\build_by_keil\bulkloop.hex
C:\CYPRESS\USB\CY3684_EZ-USB_FX2LP_DVK\1.0\TARGET\INC\LPREGS.INC(266): error A10: ATTEMPT TO DEFINE AN ALREADY DEFINED SYMBOLなどと言われますので、その部分をコメントアウトします。
fw.rel: fw.c c:/SDCC/pfenrir_inc/fx2.h c:/SDCC/pfenrir_inc/fx2regs.h \
c:/SDCC/pfenrir_inc/syncdly.h
+ c:\PROGRA~1\SDCC\bin\sdcpp.exe -nostdinc -Wall -MM -I"c:/SDCC/pfenrir_inc" -obj-ext=.rel -D__SDCC_MODEL_SMALL -DSDCC_MODEL_SMALL -D__SDCC_FLOAT_REENT -DSDCC_FLOAT_REENT -D__SDCC=3_3_1 -DSDCC=331 -D__SDCC_REVISION=8894 -DSDCC_REVISION=8894 -D__SDCC_mcs51 -DSDCC_mcs51 -D__mcs51 -D__STDC_NO_COMPLEX__ -D__STDC_NO_THREADS__ -D__STDC_NO_ATOMICS__ -D__STDC_NO_VLA__ -isystem "c:\Program Files\SDCC\bin\..\include\mcs51" -isystem "c:\Program Files\SDCC\bin\..\include" "fw.c"
periph.rel: periph.c c:/SDCC/pfenrir_inc/fx2.h \
c:/SDCC/pfenrir_inc/fx2regs.h c:/SDCC/pfenrir_inc/syncdly.h
+ c:\PROGRA~1\SDCC\bin\sdcpp.exe -nostdinc -Wall -MM -I"c:/SDCC/pfenrir_inc" -obj-ext=.rel -D__SDCC_MODEL_SMALL -DSDCC_MODEL_SMALL -D__SDCC_FLOAT_REENT -DSDCC_FLOAT_REENT -D__SDCC=3_3_1 -DSDCC=331 -D__SDCC_REVISION=8894 -DSDCC_REVISION=8894 -D__SDCC_mcs51 -DSDCC_mcs51 -D__mcs51 -D__STDC_NO_COMPLEX__ -D__STDC_NO_THREADS__ -D__STDC_NO_ATOMICS__ -D__STDC_NO_VLA__ -isystem "c:\Program Files\SDCC\bin\..\include\mcs51" -isystem "c:\Program Files\SDCC\bin\..\include" "periph.c"
fw.rel: fw.c c:/SDCC/pfenrir_inc/fx2.h c:/SDCC/pfenrir_inc/fx2regs.h \となるのは理解出来ました。
c:/SDCC/pfenrir_inc/syncdly.h
periph.rel: periph.c c:/SDCC/pfenrir_inc/fx2.h \
c:/SDCC/pfenrir_inc/fx2regs.h c:/SDCC/pfenrir_inc/syncdly.h
./build_by_sdcc\/fw.rel: fw.c c:/SDCC/pfenrir_inc/fx2.h c:/SDCC/pfenrir_inc/fx2regs.h \
c:/SDCC/pfenrir_inc/syncdly.h
+ c:\PROGRA~1\SDCC\bin\sdcpp.exe -nostdinc -Wall -MM -I"c:\SDCC\./build_by_sdcc\/pfenrir_inc" -obj-ext=.rel -D__SDCC_MODEL_SMALL -DSDCC_MODEL_SMALL -D__SDCC_FLOAT_REENT -DSDCC_FLOAT_REENT -D__SDCC=3_3_1 -DSDCC=331 -D__SDCC_REVISION=8894 -DSDCC_REVISION=8894 -D__SDCC_mcs51 -DSDCC_mcs51 -D__mcs51 -D__STDC_NO_COMPLEX__ -D__STDC_NO_THREADS__ -D__STDC_NO_ATOMICS__ -D__STDC_NO_VLA__ -isystem "c:\Program Files\SDCC\bin\..\include\mcs51" -isystem "c:\Program Files\SDCC\bin\..\include" "fw.c"
./build_by_sdcc\/periph.rel: periph.c c:/SDCC/pfenrir_inc/fx2.h \
c:/SDCC/pfenrir_inc/fx2regs.h c:/SDCC/pfenrir_inc/syncdly.h
+ c:\PROGRA~1\SDCC\bin\sdcpp.exe -nostdinc -Wall -MM -I"c:\SDCC\./build_by_sdcc\/pfenrir_inc" -obj-ext=.rel -D__SDCC_MODEL_SMALL -DSDCC_MODEL_SMALL -D__SDCC_FLOAT_REENT -DSDCC_FLOAT_REENT -D__SDCC=3_3_1 -DSDCC=331 -D__SDCC_REVISION=8894 -DSDCC_REVISION=8894 -D__SDCC_mcs51 -DSDCC_mcs51 -D__mcs51 -D__STDC_NO_COMPLEX__ -D__STDC_NO_THREADS__ -D__STDC_NO_ATOMICS__ -D__STDC_NO_VLA__ -isystem "c:\Program Files\SDCC\bin\..\include\mcs51" -isystem "c:\Program Files\SDCC\bin\..\include" "periph.c"
cat tempfile | sed -e 's/^+.*//g' -e 's/[^\.]*\.rel/$(BUILD_DIR)\/&/g' >> $(BUILD_DIR)/depend.inc; \
sed -e 's/^+.*//g' -e 's/[^\.]*\.rel/\.\/build_by_sdcc\/&/g' .tempfile >> ./build_by_sdcc/depend.inc; \になるでしょう。
./build_by_sdcc/fw.rel: fw.c c:/SDCC/pfenrir_inc/fx2.h c:/SDCC/pfenrir_inc/fx2regs.h \
c:/SDCC/pfenrir_inc/syncdly.h
./build_by_sdcc/periph.rel: periph.c c:/SDCC/pfenrir_inc/fx2.h \
c:/SDCC/pfenrir_inc/fx2regs.h c:/SDCC/pfenrir_inc/syncdly.h
sdcc -c -V --debug --opt-code-speed --model-small -I"C:\SDCC\pfenrir_inc" -I"c:\program files\sdcc\include" -I"C:\Keil\C51\INC" -I"C:\Cypress\USB\CY3684_EZ-USB_FX2LP_DVK\1.0\Target\Inc" -I..//include -o build_by_sdcc/fw.rel fw.c心配した変なファイルパスは通っているようですね。スゴイ変な感じ。ありがたいけど。
+ c:\PROGRA~1\SDCC\bin\sdcpp.exe -nostdinc -Wall -I"C:\SDCC\pfenrir_inc" -I"c:\program files\sdcc\include" -I"C:\Keil\C51\INC" -I"C:\Cypress\USB\CY3684_EZ-USB_FX2LP_DVK\1.0\Target\Inc" -I"..//include" -obj-ext=.rel -D__SDCC_MODEL_SMALL -DSDCC_MODEL_SMALL -D__SDCC_FLOAT_REENT -DSDCC_FLOAT_REENT -D__SDCC=3_3_1 -DSDCC=331 -D__SDCC_REVISION=8894 -DSDCC_REVISION=8894 -D__SDCC_mcs51 -DSDCC_mcs51 -D__mcs51 -D__STDC_NO_COMPLEX__ -D__STDC_NO_THREADS__ -D__STDC_NO_ATOMICS__ -D__STDC_NO_VLA__ -isystem "c:\Program Files\SDCC\bin\..\include\mcs51" -isystem "c:\Program Files\SDCC\bin\..\include" "fw.c"
sdcpp.exe: fatal error: when writing output to : Invalid argument
C:/SDCC/pfenrir_inc/fx2.h:166: syntax error: token -> 'BOOL' ; column 16
#define at __at #define xdata __xdata
が追加されています。
#ifndef _nop_としました。
#ifndef SDCC //added 2013-11-17
#define _nop_() { \
_asm \
nop \
_endasm; \
}
#else//added 2013-11-17 bigin
#define _nop_() { \
__asm \
nop \
__endasm; \
}
#endif//added 2013-11-17 end
#endif
//-----------------------------------------------------------------------------の下に、
// Interrupt Functions For SDCC
//-----------------------------------------------------------------------------
#ifdef SDCC
#ifndef interruptを追加しました。
#define interrupt __interrupt
#endif
#include "syncdly.h"をコメントアウトして
#include "fx2sdly.h"を足しました。
export PATH=/usr/bin:/usr/local/bin:$PATH; \
rm -f ./build_by_sdcc/depend.inc; \
for i in fw.c periph.c; do \
sdcc -E -MMM -I../pfenrir_inc -V $i 1>> tempfile; \
if ! [ $? = 0 ]; then \
rm -f tempfile; \
exit 1; \
fi; \
done; \
#cat tempfile | sed -e 's/^+.*//g' -e 's/[^\.]*\.rel/./build_by_sdcc\/&/g' >> ./build_by_sdcc/depend.inc; \
sed -e 's/^+.*//g' -e 's/[^\.]*\.rel/\.\/build_by_sdcc\/&/g' tempfile > ./build_by_sdcc/depend.inc; \
cat tempfile > ./build_by_sdcc/tempfile.txt; \
rm -f tempfile
export PATH=/usr/bin:/usr/local/bin:$PATH; \
cp USBJmpTb.asm ./build_by_sdcc/; \
cd ./build_by_sdcc; \
sdas8051 -plosgff USBJmpTb.asm
export PATH=/usr/bin:/usr/local/bin:$PATH; \
cp dscr.asm ./build_by_sdcc/; \
cd ./build_by_sdcc; \
sdas8051 -plosgff dscr.asm
export PATH=/usr/bin:/usr/local/bin:$PATH; \
sdcc -V --debug --model-small --xram-loc 0xe000 --xram-size 0x200 --iram-size 0x100 -I../pfenrir_inc -o build_by_sdcc/bulkloop.hex -L ../pfenrir_lib -l ezusb build_by_sdcc/fw.rel build_by_sdcc/periph.rel build_by_sdcc/USBJmpTb.rel build_by_sdcc/dscr.rel
?ASlink-Error-Bad offset in library file ../pfenrir_lib/ezusb.lib(discon)
+ c:\PROGRA~1\SDCC\bin\sdld.exe -nf "build_by_sdcc/bulkloop.lk"
+ c:\PROGRA~1\SDCC\bin\sdld.exe -nf "build_by_sdcc/bulkloop.lk" returned errorcode 1
make: *** [build_by_sdcc/bulkloop.hex] Error 1
Usage | You can browse through the tree structure of the api. Each child object appears in a list
that tries to be representative of its type. These lists are :
* Items (for an iterable object) * Item Values (for an iterable object wich only support index) * Modules * Types * Properties * Structs and Functions * Methods and Functions * Attributes * Inaccessible (some objects may be listed but inaccessible)
The lists can be filtered to help search in the tree. Just enter the text in the filter section. It is also possible to explore other modules. Go to the root and select it from the list of available modules. It will be imported dynamically.
In the text section, some information is displayed. The type of the object, what it returns, and its docstring. We could hope that these docstrings will be as descriptive as possible. This text data block named api_doc_ can be toggled on and off with the Escape key. |
---|
次の週末には、基盤に対して平行方向に線が出るようにデザインしたUSB 本体モジュールへの結線用基盤を作成することになるでしょう。。。
まずはFinderでblender.appを表示します
次に、blender.appを右クリックしてパッケージの内容を表示
Contentsフォルダの中にあるMacOSフォルダの中のblenderをダブルクリック
globals()["HOGE"]
locals()["HOGE"] # 変更禁止らしい。
getattr(Module.Submodule, "HOGE")
ロボットの動きがメカメカしいのは、モーションの作成が面倒くさいというのもあると思うけど(モーション作成者のセンスの問題?)、使っている動力の違いによるものが大きいと思います。脱力するだけでぶらぶら受動的に動く筋肉は、同時に、電気モーターに比べればかなりの瞬発力を発揮します。電気モーターでは颯爽とした動きが難しいのはこの点に問題があると思うのです。また、能動的に制御しなければ筋肉のあの受動的な「ぶらぶら」感は表現できません。高橋智隆さんにモーションの生成プログラムの作成指揮をとってもらえば、「ぶらぶら」感を自動的に再現できるモーションエディタができるかもしれませんね。