Hi, I updated the library https://github.com/jallib/jallib/blob/master/include/external/seven_segment/seven_segment_multiplexer.jal
On Tuesday, February 3, 2026 at 7:57:35 PM UTC-5 Matthew Schinkel wrote: > Hi yes, that would be fine. > > When writing the library _seven_segment_multiplexer_digit wasn't meant to > be used in samples, but you found a good use for it. > > > On Monday, February 2, 2026 at 5:08:48 PM UTC-5 [email protected] wrote: > >> Hi Matt >> I tried to send you personel a question and maybe it was not succesfull. >> So one another try. I spoke Rob J and he said it was not common on the >> user side to start an assignment with an underscore. >> Is it possible to convert the assignment into a standard assignment with, >> for example, a procedure? So change _seven_segment_multiplexer_digit[] to >> seven_segment_multiplexer_one_digit[]. >> Rob J can then update the library so that everyone can use the command. >> I'm curious. >> Greetings Peter >> Op donderdag 22 januari 2026 om 23:33:18 UTC+1 schreef Zet Weeh: >> >>> Hi Matt >>> >>> Thanks for your clear answer. >>> I'll get started on it this week. >>> >>> Regards, Peet >>> >>> Op donderdag 22 januari 2026 om 01:13:21 UTC+1 schreef Matthew Schinkel: >>> >>>> >>>> 1) 4 digits, but “2+2 independent”? >>>> Yes, but not with seven_segment_multiplexer = value / put(word), >>>> because that only formats one number across all digits. To do 2+2, you >>>> must >>>> set the digit buffer per position (each digit is updated independently by >>>> the ISR). >>>> >>>> -- up: 0..99 (displayed on digits 1..0) >>>> -- down: 0..99 (displayed on digits 3..2) >>>> var byte up = 23 >>>> var byte down = 99 >>>> >>>> procedure display_update_2plus2() is >>>> var byte tens >>>> var byte ones >>>> >>>> tens = up / 10 >>>> ones = up - (tens * 10) >>>> _seven_segment_multiplexer_digit[0] = ones >>>> _seven_segment_multiplexer_digit[1] = tens >>>> >>>> tens = down / 10 >>>> ones = down - (tens * 10) >>>> _seven_segment_multiplexer_digit[2] = ones >>>> _seven_segment_multiplexer_digit[3] = tens >>>> >>>> if up < 10 then >>>> _seven_segment_multiplexer_digit[1] = 27 -- space >>>> end if >>>> end procedure >>>> >>>> 2) Using seven_segment characters in the multiplexer >>>> The multiplexer already uses seven_from_digit(...). So you can show any >>>> seven_segment “character index” by putting that index into the digit >>>> buffer >>>> (e.g. 10 = “A”, 27 = space, 34 = “-”, etc.). >>>> >>>> _seven_segment_multiplexer_digit[0] = 10 -- "A" >>>> _seven_segment_multiplexer_digit[1] = 11 -- "b" >>>> _seven_segment_multiplexer_digit[3] = 27 -- "space" >>>> >>>> 3) Showing sbyte negative (e.g. -4) >>>> Yes: display "-" (character index 34) on one digit and 4 on the other. >>>> >>>> _seven_segment_multiplexer_digit[0] = 4 -- "4" >>>> _seven_segment_multiplexer_digit[1] = 34 -- "-" (minus) >>>> >>>> 4) Digits set to input go blank; when set back to output the old value >>>> is gone >>>> To blank/re-enable while keeping the previous value, keep multiplexing >>>> running and blank via the digit data (e.g., use space index 27) rather >>>> than >>>> changing pin direction. >>>> >>>> Matt. >>>> On Monday, January 19, 2026 at 5:20:16 PM UTC-5 [email protected] >>>> wrote: >>>> >>>>> Hi Matthew >>>>> Hi Matthew >>>>> >>>>> I have some question about the lib 'seven_segment' and >>>>> 'seven_segment_multiplexer'. >>>>> >>>>> 1 It is possible to connect 4 displays but is it also possible to use >>>>> 2 displays independent of the other 2? >>>>> For example: 2 digits for up to 99 and 2 digits for down from 99 >>>>> >>>>> 2 How can I use the characters of the lib 'seven_segment' in >>>>> 'seven_segment_multiplexer'? >>>>> >>>>> 3 Is it possible to get a sbyte (-4) on the display? >>>>> >>>>> 4 When I make 2 displays 'input' their displays are off; when I make >>>>> them 'output again the last information on the displays is gone and the >>>>> displays give the start information. Is it possible the information will >>>>> come back on the displays? >>>>> >>>>> Regards, Peet >>>>> >>>> -- You received this message because you are subscribed to the Google Groups "jallib" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion visit https://groups.google.com/d/msgid/jallib/547638b7-a818-406f-888c-8bea399b674en%40googlegroups.com.
