255 word Speech IC

erco

Senior Member
I got a picaxe mp3 player. What's wrong with that?
Ain't nuttin' wrong with dat! Wish I had one. I couldn't find one to buy in the US. Have to add one or two to my next Rev_Ed order, but that may be a while. I really stocked up last time for classes.
 

stan74

Senior Member
The picaxe mp3 is nice but socket it. You might not need the board later. lots of picaxe hardware finds new homes. and anthropomorphise robots with wheels with a face. works for toy manufacturers.
 

newplumber

Senior Member
Before I attempt to make a 10 digit display..i figured to try a big clock display
and when my sound chips arrive ...I could make it cool by sending off a AIR hoRn every morning at 7 am (when I'm out of town of course)
and then play some "good morning" sound...just to make sure everyone wakes up on time...
of course nobody at my house knows it yet ...to them its just going to be a big clock :)

I thought about using a max7219...but with 12v to run the strips ...I couldn't compute how to wire them up
so I will attemp this schematic ...with more caps that didn't fit in to draw

I have to first test out the mp3 ..and will let you know what problems I run into
 

Attachments

techElder

Well-known member
Wow! 14 inch displays and RGB. You are a glutton for punishment! :D (Power is going to be a fun project, too!)
 

hippy

Technical Support
Staff member
I thought about using a max7219...but with 12v to run the strips ...I couldn't compute how to wire them up
so I will attemp this schematic ...
Would it not make sense to use APA102 RGB LED strips. That would greatly simplify the wiring and components needed.
 

newplumber

Senior Member
Wow! 14 inch displays and RGB. You are a glutton for punishment!
yes i always am
actually ...I changed my mind ...I'm going to go 16" displays ...go big or go home...wait..i'm already home..so nothing will go wrong :)




Would it not make sense to use APA102 RGB LED strips. That would greatly simplify the wiring and components needed.
of course it would simplify ..and I have lots of them but ...hate to build it all and have one go berserk and quits the whole display.
I'm testing my apa102 stair leds right now with adding alot of capacitors thru out both led strips ...so far so good...2 weeks going strong
I'm going to test it for about 2 months before installing them again and see if any led freaks out with out stair vibrations

Maybe if I put caps on every segment with rgb apa102s ..it will be my friend ...I'll do some more figuring out
I have never had a uln2803 or a 74hc595 go wierd..(with right code) so i guess I have more confidence doing it that way
but I'm always into making it simplier...so heres my plan...I start out with rgb apa102 and make it so if my apa102s are junk
then i can rip it out and do my plan A...
One thing thats a plus with apa102 is pretty easily a person can change what ever color they want
but i was planing on using only red,blue,green,redgreen,greenblue,redblue...and it would change every minute or so

I know I will need help coding it...but first I will make the first go around.
 

premelec

Senior Member
I'm not such a fan of digital clocks.... how about a nice huge analog multi color clock? ;-0 could cheat and use a stepper motor drive on the lit hands instead of hundreds of LEDs in circles... then you'd have a satisfying click sound every second too... :cool: Throw in a pendulum and strobe and you're off - to the janitor's closet...
 

newplumber

Senior Member
yes good idea premelec...the stepping motor would work perfect ....awhile ago i was thinking like for jokes...have the minute do every second and hour do every 5 seconds and use a router tool for the second hand :)
then a person can say "yes I think its showing a little fast too"
IMHO digital displays are almost as good for the blind ....since lcd can show so much more info
but I have a plant shelf that needs a little light ...and want to make sure anyone in my living room wont ask for the time (maybe sun glasses)
maybe some year I will get to build a clock like your idea
 

premelec

Senior Member
I want to be a bit more explicit about analog vs digital - and it goes for multimeters too - you can glance at an analog clock and get the hand position instantly - with digital you must absorb the numbers into you brain and interpret what they mean. More important to us experimenters is what happens with a digital volt meter with a rapidly changing voltage - are the numbers increasing or decreasing or both is often hard to tell. With an analog meter [or bargraph display] you can see right away if it's going up or down or both... When things are slow enough no problem... With my suggested analog clock I'd have 60 LEDs racing around for the seconds - perhaps changing color - and make it reverse able. I have a quartz analog [novelty] clock that runs counter clockwise... ;-0 maybe it works looking in a mirror...
 

hippy

Technical Support
Staff member
I would personally use MP3's and the SPE035. I created a program which concatenated words and worked as I think a voltmeter, reported ADC values or counted up and that worked well. I thought I had posted that to the forum but cannot find that now.

I would be tempted to design things so there were two PICAXE's. The master simply sending SEROUT data for what words to say, another taking those in then controlling the SPE035. That way the master can continue without having to spend time handling the speech. It should be possible to connect the AXE171+SPE035 up just as one connects an AXE133 LCD/OLED display.
 

techElder

Well-known member
Erco's Digital Clock Kit

Take erco's digital clock kit, but add your 16" display (and growing) to it using your high current drivers.
 

newplumber

Senior Member
@premelec yes you make a good point (analog)...but since I'm going to try using strips...its hard to bend them in circle unless you flip them sideways



westaust55 said:
How about design and building a talking clock
I was planning on making something like that ...still waiting on the mp3s for testing...maybe today is the day

hippy said:
I would be tempted to design things so there were two PICAXE's. The master simply sending SEROUT data for what words to say, another taking those in then controlling the SPE035. That way the master can continue without having to spend time handling the speech
another good idea hippy ...it would make it easier for me if I did use two picaxe chips ...but also I think one 20X2 chip would easily handle the job since the display would only need to up date
once a minute ...but I will need to first do some testing on the mp3

texasclod said:
Take erco's digital clock kit
If my clock "kit" fails then I will definitely be back on that suggestion
but its funner for me to build from scratch (hardware) and find all the "how to" software on this best forum

If my mp3 shows up today ....I do have a small chance to finish this project this weekend
now back to routering out the digits
and thanks all of you
 

newplumber

Senior Member
@ westaust55 ....I know you underlined the "design" for a reason...for me that might be a big challenge but I'll do my best
after I build something worth designing :)



FWIW I did get my mp3 in today so tomorrow ...I'll be back on here asking questions like "whats a mp3?" :)
first step is to get the display lit up ...waiting for paint to dry ...(wood seems to inhale a few cans)
2nd step is add time on digits
3rd which will be the hardest is to add sound threw the mp3, speakers ..etc
by tomorrow nite I should have something cool picaxe 20X2 is controlling
 

westaust55

Moderator
@ westaust55 ....I know you underlined the "design" for a reason...for me that might be a big challenge but I'll do my best
after I build something worth designing :)
The “design” was not emphasized as a dig at you NP.
Suggest have a read at post 50.

However at the end of the day, everyone has to start somewhere and learn the required skills.

For me these days not a lot of spare time for “doing” projects for my hobbies.
Over 200 hours in the air in the past 4 months and working weekdays 2500 km from home.
But I still drop-in on the PICAXE forum by iPhone each day. :)
 

newplumber

Senior Member
westaust55 said:
The “design” was not emphasized as a dig at you NP.
I understand ...but I will still try to design something after I get it working
"200" hours? ...thats got to get old...same with the food on board ...and I'm sure you understand how to buckle your seat beat :)

fwiw...I will learn to code the mp3 next week (from all the awesome samples) ...my soldering is slow and time consuming with all the extra caps ..etc
but tonight I should have the display lit up...then its onto coding data for each digit (which is the fun part)
 

stan74

Senior Member
@stan thats cool....I'm guessing it took some time to program that display like that?
It's just filled circles and triangles...arduino nano and different compiler...not c!!
The point was the picaxe mp3 could do speech..with enough picaxe memory to control the speech...not allophone-make words, but a large vocabulary on sd card and you could code it down to abreviations or summat...use imagination.
nice device to play with as option for speech.
edit it's a ssd1306 glcd and needs 1k ram buffer for display graphics so 28x2 with 1.5k ram needed...or use a display that needs no ram screen buffer for graphics.
erco -- srf04 us and sharp ir look like eyes :) yes?
robot toy with face gets https://www.google.co.uk/search?q=robot+toy+with+face&tbm=isch&tbo=u&source=univ&sa=X&ved=0ahUKEwjFlOjSp4baAhWEyKQKHUzqAKIQsAQInAE&biw=1440&bih=769
I saw cozmo and thought try that erco
Next I thought a mouth that animates to the speech...that's where it's time and effort to sync
I took inspiration from bender from futurama. ha
 
Last edited:

newplumber

Senior Member
Hi

I have my sign lit up using rgb apa102s ...which is awesome
only for me to struggle with a very sophisticated code ...which is totally normal
I have a question and I don't have a schematic yet...which might be hard to understand (but I will have one later this week)
my clock is 1 2 : 3 4

5 leds per segment....very first led on the display starts with G on digit 4 and the last led ends on 1st digit


--------AAAAA------flows like........>>>>>
--------F-----B------flows like.......^------v
--------F-----B------flows like.......^------v
--------F-----B------flows like.......^------v
--------GGG1-------flows like.......^<<<:v
--------2-----C------flows like......**----- v
--------E-----C------flows like......^------ v
--------E-----C------flows like......^------ v
--------DDDDD-----flows like.......^<<<< (so starts with 1 and ends with 2 on each digit.....35 leds per segment)


the middle cursor or [ : ] uses 4 leds...2 leds for each digit dot

the 1st digit is just a 1 and uses 10 leds
so total is 119 rgb apa102 leds


My simple test code which makes all leds turn on and off

Code:
'testing 14" clock display
#picaxe 20x2    
#no_table
#no_data
setfreq m64
Let DIRSB = %10000000 : Let DIRSC = %00000010
; Set how many LED modules in the strip
symbol HOW_MANY_LEDS = 119 ;display takes 119 

; Set the brightness of the LED while testing
symbol brightLED  = 230 ; 0 to 255 (I have a good power supply and extra power leads to each digit)
symbol dimLED     = 15  ; 0 to 255 (255 full on)
; Initialise the HSPI interface
#macro init()
  hspisetup spimode00, spislow
#endmacro

; Send a four byte packet out via HSPI
#macro sendPacket( n1, n2, n3, n4 )
  hspiout( n1, n2, n3, n4 )
#endmacro
; Send the start of data header
#macro head()
  sendPacket( $00 ,$00 ,$00 ,$00 )
#endmacro
; Send a LED controlling command
#macro send( red, white, blue)
  sendPacket( $FF, red, white, blue ) 
#endmacro

; Send the end of data tail
#macro tail()
   sendPacket( $00 ,$00 ,$00 ,$00 )'1-64
   sendPacket( $00 ,$00 ,$00 ,$00 )
   sendPacket( $00 ,$00 ,$00 ,$00 )
#endmacro

; Turn a single LED off
#macro led_Off
  send( $00, $00, $00 )
#endmacro

; Turn LED on color
#macro LED_RED    
send( $00,$00,brightLED ) 
#endmacro
#macro LED_GREEN   
send( $00,brightLED,$00 )  
#endmacro
#macro LED_BLUE 
send( brightLED,$00,$00 ) 
#endmacro


PowerOnReset: 
  init; Initialise the HSPI interface
START: '==========================================MAIN PROGRAM====================
DO
  head 
for b1 = 1 to HOW_MANY_LEDS 
led_Off 
next b1
 tail 
pause 10000 'turns all leds off
 
 gosub frst_digit 
 gosub secd_digit 
 gosub curs_digit
 gosub thrd_digit 
 gosub frth_digit :pause 10000 'turn all leds on
 
LOOP

frst_digit: 'turns on digit 1..which only is a 1 (10 leds)
head 

for b1 = 1 to 109   
     led_off
next 

for b1 = 1 to 10 
     led_red
next b1 
Tail
RETURN
secd_digit:' turns on digit 2...  (35 leds)
head

for b1 = 1 to 74  
     led_off
next 
 
for b1 = 1 to 35 
     led_red
next b1  

Tail
RETURN

curs_digit:' turns on cursor digit...(4 leds)
head

for b1 = 1 to 70   
     led_off
next 
 
for b1 = 1 to 4 
     led_red
next b1  

Tail
RETURN

thrd_digit:' turns on digit 3...  (35 leds)
head

for b1 = 1 to 35   
     led_off
next 
 
for b1 = 1 to 35 
     led_red
next b1  

Tail
RETURN

frth_digit:' turns on digit 4...  (35 leds)
head
 
for b1 = 1 to 35 
     led_red
next b1  

Tail
RETURN
My question is
is it possible/worth while to write data in using macros
Code:
#macro  display_num_one 
'certain number of leds off   
'certain of leds on 
#endmacro
for each number 0-9
Well I'm just excited it all works awesome now back to 1000 more testing plans



stan74 said:
Next I thought a mouth that animates to the speech
that would be cool
 
Last edited:

inglewoodpete

Senior Member
My question is
is it possible/worth while to write data in using macros
Hey, that's actually two questions!

Yes, it is possible.

Worthwhile? Quite a bit of work. I'd be passing a parameter (0-9) to the macro or subroutine. The macro/subroutine would include branching to select the required digit pattern. Otherwise, you'll be doing a lot of branching in your calling code.
 

newplumber

Senior Member
inglewoodpete said:
Hey, that's actually two questions!
yep true ...you caught me! I was trying to slip in another one undercover!

and yes i know it going to be alot of work...but....alot of FUN work for me now that soldering is over

so I have it counting using this part of code as example
Code:
let b11 = w4 DIG 3 : let b12 = w4 DIG 2 :let b13 = w4 DIG 1:let b14 = w4 DIG 0
If b12 = 0 then gosub zero
If b12 = 1 then gosub one
If b12 = 2 then gosub two
If b12 = 3 then gosub three
If b12 = 4 then gosub four
If b12 = 5 then gosub five 
If b12 = 6 then gosub six
If b12 = 7 then gosub seven 
If b12 = 8 then gosub eight
If b12 = 9 then gosub nine
inc w4

ZERO:' shows number 0
for b1 = 1 to 5
 led_off
 next 
for b1 = 1 to 30
 led_blue
 next
RETURN
ONE:' shows number 1
for b1 = 1 to 15
 led_off
 next 
for b1 = 1 to 10
 led_blue
 next 
for b1 = 1 to 10
 led_off
 next  
RETURN
TWO:' shows number 2
for b1 = 1 to 5
 led_blue
 next 
for b1 = 1 to 5
 led_off
 next 
for b1 = 1 to 10
 led_blue
 next
for b1 = 1 to 5
 led_off
 next
for b1 = 1 to 10
 led_blue
 next
RETURN
THREE:' shows number 3
for b1 = 1 to 5 
 led_blue
 next 
for b1 = 1 to 5 
 led_off
 next 
for b1 = 1 to 20 
 led_blue
 next 
for b1 = 1 to 5
 led_off
 next 
RETURN
FOUR:' shows number 4
for b1 = 1 to 10 
 led_blue
 next 
for b1 = 1 to 5 
 led_off
 next 
for b1 = 1 to 10 
 led_blue
 next 
for b1 = 1 to 10
 led_off
 next 
RETURN
FIVE: ' shows number 5
for b1 = 1 to 15 
 led_blue
 next 
for b1 = 1 to 5 
 led_off
 next 
for b1 = 1 to 10 
 led_blue
 next 
for b1 = 1 to 5 
 led_off
 next 
RETURN
SIX:  ' shows number 6
for b1 = 1 to 15 
 led_blue
 next 
for b1 = 1 to 5 
 led_off
 next 
for b1 = 1 to 15 
 led_blue
 next 
RETURN
SEVEN:' shows number 7
for b1 = 1 to 10 
 led_off
 next 
for b1 = 1 to 15
 led_blue
 next 
for b1 = 1 to 10 
 led_off
 next 
RETURN
EIGHT:' shows number 8
for b1 = 1 to 35
 led_blue
 next  
RETURN
NINE:' shows number 9
for b1 = 1 to 30 
 led_blue
 next 
for b1 = 1 to 5
 led_off
 next 
RETURN
and I guess wondering if it would be fastER to somehow put it in macros
I'm still learning the macro and cheese stuff
 
Last edited:

techElder

Well-known member
Remember one main thing about macros, please. :D

A macro is a more complicated form of #DEFINE. You will read that #DEFINE is preprocessor code for SUBSTITUTION. Substitution means, "Replace this with that."

So, EVERY time that you reference the defined procedure between #MACRO and #ENDMACRO, the preprocessor SUBSTITUTES that procedure name with ALL of the code in the defined procedure.

One thing a macro will do is quickly increase the SIZE of your program. Every time you reference a macro, a chunk of the same code is added.

That's where the speed of your program MIGHT increase; depends on the program. You might save some time by not having to use GOSUB/RETURN four times to display something in each digit. The trade off would be the simultaneous increase in program SIZE due to code being duplicated four times while using a macro to perform the same function.
 

hippy

Technical Support
Staff member
My question is is it possible/worth while to write data in using macros for each number 0-9
The main point of using macros is to make the program easier to write, easier to understand. It allows what is being done to be succinctly stated without worrying as to how it is done. It's a lot like using an abbreviation or acronym to save having to type those out in full every time.

As to how a macro is implemented; that can either be in-line code or use GOSUB commands to what handles what the macro needs to do.

You can create macros but whether worthwhile depends on whether they will, or may, serve any useful purpose or not. In a program which outputs numbers and therefore digits then being able to output individual digits is very likely useful.

It's how those macros are then used, what's in the macro, how they achieve what they need to achieve in the way they are being used, which is probably most important.
 

hippy

Technical Support
Staff member
To apply macros to your example I would use something like the following -

Code:
#Macro ShowDigit(wVar,digitNumber)
  b0 = wVar DIG digitNumber
  Gosub Do_ShowDigit
#EndMacro

#Macro N_x_SendRGB(n,r,g,b)
  For b1 = 1 To n
    SendRGB(r,g,b)
  Next
#EndMacro

#Macro Led_Off(n)
  N_x_SendRGB(n,0,0,0 )
#EndMacro

#Macro Led_Blue(n)
  N_x_SendRGB(n,0,0,$FF )
#EndMacro

w4 = 1234
Do
  Head
  ShowDigit(w4,3)
  ShowDigit(w4,2)
  ShowDigit(w4,1)
  ShowDigit(w4,0)
  Tail
  w4 = w4 + 1
Loop

Do_Show_Digit:
  On b0 GOTO Zero, One, Two ... Nine

Zero:
  Led_Off(5)
  Led_Blue(30)
  Return

One:
  Led_Off(15)
  Led_Blue(10)
  Led_Off(10)
  Return
 

lbenson

Senior Member
Instead of this:
Code:
If b12 = 0 then gosub zero
If b12 = 1 then gosub one
If b12 = 2 then gosub two
If b12 = 3 then gosub three
If b12 = 4 then gosub four
If b12 = 5 then gosub five 
If b12 = 6 then gosub six
If b12 = 7 then gosub seven 
If b12 = 8 then gosub eight
If b12 = 9 then gosub nine
there's this: "ON b12 GOSUB address0, address1, ...addressN"

Every one of your "IF" statements will be executed with each pass; with "ON ... GOSUB", it will resume with the next statement after a match (I assume--depends on firmware coding). If you just want to speed up what you have, replace each "IF" after the first one with "ELSEIF", and place an "END" after the last "ELSEIF" (you may need ":" at the end of each line and after "then").
 

newplumber

Senior Member
Well thanks you all...I got kicked out of town this week ...and totally forgot the mp3 ..etc to bring with me... even left a note to bring it(but not the display cause took to much room)
was hoping I had the week off ...but I will set up something tonight and practice using all your good info
now i'm back to making water stay INside the pipes
 

newplumber

Senior Member
hippy said:
The main point of using macros is to make the program easier to write, easier to understand
Thanks again Hippy I seem to understand the main point ...I just need to flow it over and over in sim ...step by step
Its like I missed where the tracks split into 8+ pairs and I don't know what pair I'm on...but I do see all tracks
I will take your sample and see what i can obtain


lbenson said:
ON b12 GOSUB address0, address1, ...addressN
I seen it over and over on different threads ...just didn't think of using it and also
I will see how much difference it (time)will make when I just change all the rest of "If" to Elseif
when i hammer home
good stuff thanks

FWIW just worked a rarely 24 hr shift...when snow melts it causes floods luckily i can blame weather
was at a gas station and people would seem to get upset/deranged if they pay fuel prices as they
put water in their gas/petro tank but luckily we were able to keep that from happening
 

newplumber

Senior Member
Hi
I keep getting a syntax error
here is my code trying to use hippys example (which btw...is impressive if I am following along correctly)

Code:
'Testing 14" clock display
#picaxe 20x2    
#no_table
#no_data
'#Terminal 76800
setfreq m64
Let DIRSB = %10000000 : Let DIRSC = %00000010
; Set how many LED modules in the strip
symbol HOW_MANY_LEDS = 119 ;display takes 119 

; Set the brightness of the LED 
symbol Brts_Led  = 230 ; 0 to 255 brightness (I have a good power supply and extra power leads to each digit)
; Initialise the HSPI interface
#macro init()
  hspisetup spimode00, spimedium
#endmacro

; Send a four byte packet out via HSPI
#macro sendPacket( n1, n2, n3, n4 )
  hspiout( n1, n2, n3, n4 )
#endmacro
; Send the start of data header
#macro head()
  sendPacket( $00 ,$00 ,$00 ,$00 )
#endmacro

; Send the end of data tail
#macro tail()
   sendPacket( $00 ,$00 ,$00 ,$00 )'1-64
   sendPacket( $00 ,$00 ,$00 ,$00 )'64-128  
#endmacro

#Macro ShowDigit(wVar,digitNumber)
  b0 = wVar DIG digitNumber
  Gosub Do_ShowDigit
#EndMacro

#Macro N_x_SendRGB(n,r,g,b)
  For b1 = 1 To n
    SendRGB(r,g,b)
  Next
#EndMacro

#Macro Led_Off(n)
  N_x_SendRGB(n,0,0,0 )
#EndMacro

#Macro Led_Blue(n)
  N_x_SendRGB(n,Brts_Led,0,0 )
#EndMacro

#Macro Led_Red(n)
  N_x_SendRGB(n,0,0,Brts_Led )
#EndMacro

#Macro Led_Green(n)
  N_x_SendRGB(n,0,Brts_Led,0 )
#EndMacro


init

w4 = 1234
Do '=====================main program=============================
  Head
  ShowDigit(w4,3)
  ShowDigit(w4,2)
  Gosub colon
  ShowDigit(w4,1)
  ShowDigit(w4,0)
  Tail
  w4 = w4 + 1
  pause 8000
Loop

Do_Show_Digit:
  On b0 GOTO Zero,One,Two,Three,Four,Five,Six,Seven,Eight,Nine

Zero:
  Led_Off(5)
  Led_Blue(30)
  Return
One:
  Led_Off(15)
  Led_Blue(10)
  Led_Off(10)
  Return
Two:
  Led_Blue(5)
  Led_Off(5)
  Led_Blue(10)
  Led_Off(5)
  Led_Blue(10)
RETURN
Three:
  Led_Blue(5)
  Led_Off(5)
  Led_Blue(20)
  Led_Off(5)
RETURN
Four:
  Led_Blue(10)
  Led_Off(5)
  Led_Blue(10)
  Led_Off(10)
RETURN
Five:
  Led_Blue(15)
  Led_Off(5)
  Led_Blue(10)
  Led_Off(5) 
RETURN
Six:
  Led_Blue(15)
  Led_Off(5)
  Led_Blue(15) 
RETURN
Seven:
  Led_Off(10)
  Led_Blue(15)
  Led_Off(10) 
RETURN
Eight:
  Led_Blue(35) 
RETURN
Nine:
  Led_Blue(30)
  Led_Off(5) 
RETURN 
Colon:
Led_Blue(4)
RETURN
the error claims to be
Code:
Zero:
  Led_Off(5) <----- this line 
  Led_Blue(30)
  Return
If I use with a space between led_off (5) like
Code:
 Led_Off (5)
then it will error but I fixed them all so no spaces in between them
I just thought to ask...I will keep playing with it
 

techElder

Well-known member
One of the problems with using macros is that error line numbers won't follow the lines in the macro, well, because those lines in your editor don't really exist. :D

Even though the error message points to a macro name, you don't know what line from within the macro is causing the problem.

I'm not perfectly clear on your question, Mark. The macro definitions don't include a space between the name and the parameter list. If you add a space, then you'll get a couple of different errors based on where you added the space. If in your call of the macro the error is Error: - "(" expected.

I'm thinking you took out the erroneous spaces and there are no more errors. Is that correct? That would be expected.
 

hippy

Technical Support
Staff member
You need to create a "SendRGB" macro which then uses the "sendPacket" macro. I believe that, or something similar, should be in the original APA102 example code.

Edit: It's called just "send" in the original code, so -

Code:
; Send a LED controlling command
#macro sendRGB( red, green, blue)
  sendPacket( $FF, blue, green, red )
#endmacro
Your "Do_Show_Digit:" should also be "Do_ShowDigit:" to match the name in the "ShowDigit" macro.

Not being allowed to have a space between the macro name and the "(" seems to be a feature of the pre-compiler.

If you want the brackets to line up you can achieve that by either adding "_" to the end of some macro names, "Led_Off_(5)" or reducing others "Led_Blu(10)", or adding spaces within the brackets -

Code:
Led_Off(   5 )
Led_Blue( 10 )
 

newplumber

Senior Member
thanks hippy I will give it another go

also good idea to have numbers line up
Led_Off( 5)
Led_Off( 10)
Led_Off(100)
I like it (well it does line up in edit box)
 

newplumber

Senior Member
Hippy saves the day again
I am impressed at how awesome that code is working...short...smart...and absolutely no flicker
So now the clock display is done
Now moving onto the main topic of this post... mp3 sound ..which might take a while (1-4 weeks)
Thanks again ....now back to watching the display count ...5 miles away :)
 

newplumber

Senior Member
I finally did the finishing touches to the display
https://www.youtube.com/watch?v=jWvYwkave8w
its upside down but where i live I guess we have time @ 11:71 am or pm :) (test mode)
the bleed thru light off the displays is amplified by the camera ...in real life its hard to see
it still is awesome using hippys sample code which makes the display work wonderful

FWIW ...I spent alot of extra time cutting the plexi glass to make sure it fits perfect
and of course it fits perfect after i cracked the corner of it ...from staring at it to long :)


hippy said:
That's where the
Code:
...
tags are useful, even in cases where the text included be is not actual code.
I will have to remember that
 

techElder

Well-known member
Glad you're getting ready for your old age! You can see that clock from outside, and you get a night light, too! :D

PS. If you use an iPhone for videos (all cameras have exposure controls) on lighted objects, you can tap on the screen in the bright area to set the camera's exposure for that area. The area outside the segment will then be underexposed. The segments will be highlighted within a darkened background.
 
Top