Applilet EZ PL for RL78 改善要望

Applilet EZ PL for RL78 V1.0J, V2.00J を試してみました。

デジタル回路版電子ブロックという感じで興味深いツールと思いましたが、少々使いづらい点もあったので改善要望として挙げておきます。

> 本ツールは評価版です。本ツールに関するテクニカルサポートは受け付けておりません。

と明記されていることは理解しており、返答等を求めているものではありません。

Parents
  • ・1.25MHz と 2.5MHz 動作時のタイマー割り込みの周期間違い

    コード生成される timer.c の中の TM00_Init() で 0.25ms 周期のタイマー割り込みの初期化がされますが

    	ucsysclocksrc = SYS_CLOCK_SRC;
    	ucsysclockfreq = SYS_CLOCK_FREQ;
    	if( (ucsysclocksrc == CLOCK_SRC_INTERNAL)
    	 && ((ucsysclockfreq == 1)||(ucsysclockfreq == 2))){
    		if(ucsysclockfreq == 1){
    			usTMR00 = TM_250US_1250K;
    		}else{
    			usTMR00 = TM_250US_2500K;
    		}
    	}else{
    		usTMR00 = SYS_CLOCK_FREQ * 250 - 1;
    	}
    	TDR00H = (UCHAR)(usTMR00 >> 8) & 0x00FF;	/* 0.25ms */
    	TDR00L = (UCHAR)usTMR00 & 0x00FF;
    

    高速オンチップオシレータを使用して 1.25MHz か 2.5MHz を選んだ際に使用される定数 TM_250US_1250K と TM_250US_2500K の定義は 

    #define	TM_250US_1250K	312			/* 250us = 1/1.25MHz * 312 */
    #define	TM_250US_2500K	625			/* 250us = 1/2.5MHz  * 625 */
    

    となっており、-1 するのを忘れているようです。

Reply
  • ・1.25MHz と 2.5MHz 動作時のタイマー割り込みの周期間違い

    コード生成される timer.c の中の TM00_Init() で 0.25ms 周期のタイマー割り込みの初期化がされますが

    	ucsysclocksrc = SYS_CLOCK_SRC;
    	ucsysclockfreq = SYS_CLOCK_FREQ;
    	if( (ucsysclocksrc == CLOCK_SRC_INTERNAL)
    	 && ((ucsysclockfreq == 1)||(ucsysclockfreq == 2))){
    		if(ucsysclockfreq == 1){
    			usTMR00 = TM_250US_1250K;
    		}else{
    			usTMR00 = TM_250US_2500K;
    		}
    	}else{
    		usTMR00 = SYS_CLOCK_FREQ * 250 - 1;
    	}
    	TDR00H = (UCHAR)(usTMR00 >> 8) & 0x00FF;	/* 0.25ms */
    	TDR00L = (UCHAR)usTMR00 & 0x00FF;
    

    高速オンチップオシレータを使用して 1.25MHz か 2.5MHz を選んだ際に使用される定数 TM_250US_1250K と TM_250US_2500K の定義は 

    #define	TM_250US_1250K	312			/* 250us = 1/1.25MHz * 312 */
    #define	TM_250US_2500K	625			/* 250us = 1/2.5MHz  * 625 */
    

    となっており、-1 するのを忘れているようです。

Children
No Data