Scroll down code and you will find link, or click here
http://www.picbasic.co.uk/forum/atta...7&d=1417555928
Scroll down code and you will find link, or click here
http://www.picbasic.co.uk/forum/atta...7&d=1417555928
That is really nice piece of code, even if i cannot understand the include asm file.
Have anyone used it with a 16 or 24 led WS2812 ring? (not the B version)
I've tried with the pic currently have 18F26K22 at 64 Mhz. On a 16 ring or 24 ring, i cannot set up all the led's to be functioned.
when i set
Only 8 out of 16 LED are functioned.Code:NEO_NUM CON 16 'Number of pixels in Cyrcle
In case i increase the number, to 29, only 14 LED's are working, then no matter what number i use.....30+, still 14 LED's are light.
The last two LED's are not working. Have been test it with 24 ring as well, and the last 2 LED's are not working.
If anyone have experienced the same, would be nice to share your comments.
given that the include files expect a 20mhz clock what steps have you taken to compensate for running at more than 3 times the expected speedI've tried with the pic currently have 18F26K22 at 64 Mhz. On a 16 ring or 24 ring, i cannot set up all the led's to be functioned.
Warning I'm not a teacher
Ooops havent seen that. I might try a 20 Mhz crystal then. Should be easier.![]()
I used 4Mhz crystal to 4xPLL and it worked. I couldnt see in the datasheet of the PIC18F26K22 any 20Mhz configuration.
The code is really good. thanks the Author: Michel Jasmin
Last edited by astanapane; - 12th August 2018 at 20:25.
May i ask something?
Could i use all this code as a secondary code?
I'm thinking to use it only as an effect when the PIC is powered up, the RGB led ring to do its pattern.
But the main program not to be affected by this code.
DT has given to us the interrupt function of a flashing LED without disturbing the main program.
But i really dont know how to import all this code or how to use this DT's interrupt method here.
Could anyone guide me? Thanks a lot.
Last edited by astanapane; - 17th August 2018 at 12:25.
Could i use all this code as a secondary code
But the main program not to be affected by this code.
?
using that code it takes about 1mS to send data to 24 ws2812's . so if your main program can tolerate 1mS gaps in processing every 50mS it would work ok
if you used a more modern chip with a clc module then you could adapt my code
found here :-
http://www.picbasic.co.uk/forum/atta...5&d=1508279203
that updates the leds as a background interrupt driven process with very very little overhead
see this thread for that and other more efficient possibilities
http://www.picbasic.co.uk/forum/showthread.php?t=23399
what have you tried ?But i really dont know how to import all this code or how to use this DT's interrupt method here.
Warning I'm not a teacher
Bookmarks