Jump to content

MTC Display


bill
 Share

Recommended Posts

Hello,

few times ago, i build a midimon http://ucapps.de/midimon.html with it's MTC display (very nice)

midimon_mtc.jpg

Now, i'm interested in driving the Display module, with C code.

But, I dont know how to start (i still dont understand very well the mutliplexing stuff), so i ask you, as usual ;)

I think it could kick ass to see, pattern position, tempo, CC,'s, Hex values etc, on those nice glowing numbers :)

Link to comment
Share on other sites

Hem, i reply to myslelf, not bcause i'm stupid but because i have some clues, and i dont want you waste your time :

I found many interesting informations in the leddigits.inc file, from the midimonV2 application :)

I think the most important was :

;; --------------------------------------------------------------------------
;;  FUNCTION: LEDDIGITS_Update
;;  DESCRIPTION: This function should be called periodically by 
;;  USER_SR_Service_Prepare before the DOUT registers will be updated
;;  from MIOS
;; .....
;; --------------------------------------------------------------------------
LEDDIGITS_Update	
;; increment LED digit counter, wrap at 4
	;; (0, 1, 2, 3, 0, 1, 2, ...)
	SET_BSR	LEDDIGITS_CTR		; (use bank mechanism so that the registers can be located at addresses >= 0x80)
	incf	LEDDIGITS_CTR, W, BANKED
	andlw	0x03
	movwf	LEDDIGITS_CTR, BANKED

	;; get shift register pattern for the select line:
	;;  LED digit 0 and 4 -> b'10001000'
	;;  LED digit 1 and 5 -> b'01000100'
	;;  LED digit 2 and 6 -> b'00100010'
	;;  LED digit 3 and 7 -> b'00010001'

I'm on the way to do it working the same way, but without asm.

Link to comment
Share on other sites

Hi Bill,

as I understood, the main trick is to wire the LEDs correctly (I think a sample can be found with the LED-Rings wiring PDF). Then you need kind of a matrix array for each figure you want to display... this matrix is then switched line-by-line...

sorry if I'm so unconcrete... I'm very short in time these days, I'll watch this thread, maybe I can contribute more details when I get my LED-meters working :)

Cheers,

Michael

@jdelgoulet: thanks for your kind words :)

although this is a bit off-topic, just for the record, my site has never been down: http://www.audiocommander.de/blog/?p=48 and Ben (http://www.1710.co.uk/picosx/) had only temporary troubles 'cause the server got struck by a lightning  :o

Link to comment
Share on other sites

Hello,

the main trick is to wire the LEDs correctly

I have this part done (i allready have my midimon+led display working perfectly)

I tried this simple code, with no success, anyone can help me ?

(i thought) this code should send the pattern 0x7f to every led-chars, but they are all off :(

any idea ?

unsigned char led_c=0;//led counter
const char led_b[8] = {	0,0,0,0,0,0,0,0,};//led buffer
const char led_sr[4] = { 0x88,0x44,0x22,0x11,};//shift register patterns
/*
	;;  LED digit 0 and 4 -> b'10001000' 0x88
	;;  LED digit 1 and 5 -> b'01000100' 0x44
	;;  LED digit 2 and 6 -> b'00100010' 0x22
	;;  LED digit 3 and 7 -> b'00010001' 0x11
*/
void SR_Service_Prepare(void) __wparam
{
	//LEDDIGITS_Update
	MIOS_DOUT_SRSet(1,led_sr[led_c]);//char selection (0123)
	MIOS_DOUT_SRSet(0,0x7f);//first 4 digits (test pattern)
	MIOS_DOUT_SRSet(2,0x7f);//next 4 digits (test pattern)
	led_c++;
	if(led_c>3)led_c=0;
}

Link to comment
Share on other sites

STupid me !!!  ;D

I forget to "init MIOS_SRIO_NumberSet();"

It's working perfectly  8)

7seg.jpg

Now, i'm pretty interested on doing the algorythm to fill the led_buffer (dec2led and hex2led)

then "how to drive 16 chars with another 74hc595"  :)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

×
×
  • Create New...