Does your circuit have RA2 connected to RA0? That's required because the CCP3 PWM signal is also used to clock the EUSART as a synchronous slave.
(Sorry for all the trouble you're having with this. What you're working with is a blend of the PICsellator software (originally '1847-based) and the Pixif hardware (the '1825) so there's a bit of "tribal lore" from both. If you can post a schematic or even just a pin-by-pin description of how your '1825 is wired I think we can get this sorted pretty quickly. One additional thing to consider is the DIN voltage-level sensitivities of NeoPixels. Depending on if you're powering the '1825 at 5V or 3.3V you'll probably need either the PICsellator-style or Pixif-style output level translation, respectively. You can see what I did in the Project Guides https://learn.adafruit.com/the-picsella ... ot-dot-dot and https://learn.adafruit.com/the-pixif/level-translation.)
NeoPixel Bit Spacing
Moderators: adafruit_support_bill, adafruit
Please be positive and constructive with your questions and comments.
- CrabbyPete
- Posts: 16
- Joined: Fri Nov 07, 2014 9:13 pm
Re: NeoPixel Bit Spacing
I am just using a PICDEM LAB board with a 1825 in it. I didn't wire up RA2 to RA0, but I will now. I will also have to level shift, but I would like to see the signal first. Thanks again for all your help. I'm not a hardware guy, but I'm learning.
- davidl13
- Posts: 187
- Joined: Fri Oct 25, 2013 10:51 pm
Re: NeoPixel Bit Spacing
Ah, no worries, we'll get there. It's a little more challenging in this case because I tried to wedge so much stuff into such a small device, even to the point of using an ICSP pin - something I generally try to avoid at all costs (because it makes the compile-download-debug cycle more cumbersome). We're probably about to trip over the EUSART CK/ISCPDAT conflict so that may require you to build Release, download, and disconnect the PICKit 3 to actually run.
I went through the code and picked out the pin assignments on an '1825. I hope this helps clarify a little:
'1825
-----
RA0: EUSART CK input and IOC input (be aware of ICSP usage as ICSPDAT)
RA1: unused (be aware of ICSP usage as ICSPCLK)
RA2: CCP3 PWM output
RA3: MCLR (needs 10K pullup to VDD)
RA4: unused
RA5: Debug Telemetry output
RC0: StrSel0 (see GpiosToPixelCount[] and StrSel stuff in main.c)
RC1: StrSel1
RC2: StrSel2
RC3: StrSel3
RC4: MDOUT (WS2812B bitstream output)
RC5: EUSART DT output
I went through the code and picked out the pin assignments on an '1825. I hope this helps clarify a little:
'1825
-----
RA0: EUSART CK input and IOC input (be aware of ICSP usage as ICSPDAT)
RA1: unused (be aware of ICSP usage as ICSPCLK)
RA2: CCP3 PWM output
RA3: MCLR (needs 10K pullup to VDD)
RA4: unused
RA5: Debug Telemetry output
RC0: StrSel0 (see GpiosToPixelCount[] and StrSel stuff in main.c)
RC1: StrSel1
RC2: StrSel2
RC3: StrSel3
RC4: MDOUT (WS2812B bitstream output)
RC5: EUSART DT output
Please be positive and constructive with your questions and comments.