(toppers-users 4552) Re: toppers/atk1のSH7147への移植

今井和彦 imai-ka648 @ pref.miyagi.jp
2016年 6月 8日 (水) 09:16:42 JST


吉見様

今井と申します。

 > jmp @r2
 > ldc r3 , sr ; 遅延スロット、割り込み許可

SH7147のハードウェア・マニュアルによると
ldc命令もスロット不当命令になりますので,
例外が発生します。

なので,例示されたように遅延スロットに
別の命令を配置すればOKです。

 > ldc r3 , sr ; 遅延スロット、割り込み許可
 > jmp @r2
 > nop


> しかし、その後モータを動かしていると、
> 頻繁にフリーズするようになりました。

これは,原因が別と思われます。



On 2016/06/04 11:23, Y.Yoshimi wrote:
> 初めまして。 吉見と申します。
> このMLの主旨とは離れる内容なのかもしれませんが、質問(相談)をさせてください。
>
>
> 趣味でマイコンプログラミングをしているのですが、toppersを用いたプログラミングに興味を持ち、見よう見まねでSH7147にtoppers/atk1を移植してみました。
>
>
> 移植したものの、上手く起動せず、
>
> cpu_Support.srcファイル内、activate_rの
>
> jmp @r2
> ldc r3 , sr ; 遅延スロット、割り込み許可
>
>>
> ldc r3 , sr ; 遅延スロット、割り込み許可
> jmp @r2
> nop
>
> としたら、起動するようになりました。
>
> しかし、その後モータを動かしていると、
> 頻繁にフリーズするようになりました。
>
> モータ制御中に止まることがあるので、モータ制御のプログラムが悪い可能性もありますが、
> 上記の変更の結果、「割り込み許可しちゃいけない所で割り込み許可をしてしまったこと」が原因なのかと考えていますが、元に戻すと起動しないという状況で…。
>
> もし、移植時に似たようなトラブルを抱えたことがある方がいらっしゃいましたら
> 何かアドバイスをご教示くださると有難いです。
>
> 以上、よろしくお願いします。
>