[H8-ML(4926)] SCI制御について
From: m-takaha@xxxxxxxxxxxxxxxxx
Date: 2004年08月27日(金)10時03分33秒
高橋と申します。

初めて投稿します。
H8マイコンボード(主に秋月H8/3048F)を組み込んだ電子機器を製造しています。
最近3048F(16MHz)から3069F(25MHz)に変更する必要があり、ソフトを移植したので
すがSCIがうまく動作せず、あれこれやったのですがどうしてもうまくいきません。
(SCI制御のやり方はほとんど同じはずと思うのですが)
どなたか解決方法、またはそのヒントをご教示下さい。
なお、言語はアセンブラで書いてます。


方式、現象
・調歩同期(9.6Kbps)で送受信とも割込処理を使用(TXIとRXI)
・送信:ソフトからは見かけ上動いているがTXDラインに信号が出ない。
    TDRにデータ設定→TDREクリア→TXI割込→TDRにデータ設定にもどる
    処理は正常、ただしTDREクリア→TXI割込が10μS位???
・受信:受信割込発生せず
・SCI1の処理は以下の通りです。




●初期設定

		SUB.B		R0L,R0L			;
		MOV.B		R0L,@SCR1		; Stop SCI1,Use internal clock
		MOV.B		R0L,@SMR1		; 8data,1stop,noParity,1clock
		MOV.B		#80,R0L			; 9600bps=25MHz
		MOV.B		R0L,@BRR1		; 9600bps=25MHz
		MOV.W		#450,R0			; Wait 1 bit
INIT_11:
		DEC.W		#1,R0			; Wait 1 bit
		BNE			INIT_11			; Wait 1 bit
		MOV.B		@SSR1,R0L		; SSR read
		MOV.B		#H'80,R0L		; 
		MOV.B		R0L,@SSR1		; Clear error flag
		MOV.B		#H'70,R0L		; 
		MOV.B		R0L,@SCR1		; Start SCI1(RIE,TE,RE)

●送信処理(最初の1文字)

		MOV.B		R0L,@TDR1		; Set Transmit Data
		BSET		TIE1			; Enable TXI
		BCLR		TDRE1			; Transmit Start

●TXI割込(2文字目以降)

		MOV.B		R0L,@TDR1		; Set Transmit Data
		BCLR		TDRE1			; Transmit Start

●TXI割込(最終文字送信後の)

		BCLR		TIE1			; Disable TXI





スレッド概略
[表示中](起点)
 ├[4927(1)]
 ├[4929(2)]
 └[4931(3)]


投稿順に移動
[←前の記事へ(P)]
[→次の記事へ(N)]


リスト表示へ
[このスレッド(T)]
[本記事の前後(L)]