Advertisement

16F54 fickle!

Not rated 17,180

#PIC #16F54 #16F84A #16F628A #I/O issues #power-up circuit #Microchip #LED driving #code execution #hardware troubleshooting
16F54 fickle!
16F54 fickle!

Description: The primary issue observed is that the circuit runs code, but several input/output (I/O) components are non-functional. For instance, only half of the LEDs driven by the circuit operate, and this appears to be random. Attempts to implement the slow power-up circuit recommended by Microchip have not yielded successful results. It seems unnecessary since the identical circuit did not require this modification previously, and it continues to function correctly with 16F84A microcontrollers. As a temporary solution, 16F628A microcontrollers have been employed to create a working model. These microcontrollers feature built-in brown-out reset and power-on timers, which ensure consistent resets within the same circuits. The schematic provided does not include the slow power-on circuit that was tested, as it did not demonstrate any beneficial effects. The schematic indicates an OTP (One-Time Programmable) part, as the software did not list the flash memory component.

The circuit described involves a microcontroller-based design where certain I/O functionalities are compromised, specifically in the context of driving LEDs. The observed issue, where only a subset of LEDs illuminate, suggests potential problems with power distribution, grounding, or the microcontroller's configuration settings. The transition from the 16F84A to the 16F628A microcontroller indicates a strategic choice to utilize features such as the built-in brown-out reset and power-on timers, which enhance the reliability of the system during power fluctuations.

The absence of the slow power-on circuit in the schematic may point to an oversight or a decision made based on previous experiences with the circuit's behavior. It is essential to ensure that the power supply to the microcontroller and peripheral components is stable and within specified voltage levels during startup to prevent erratic behavior. The OTP designation in the schematic suggests that the code is permanently programmed into the microcontroller, which implies that any changes to the functionality would require reprogramming of the device.

In developing a robust electronic schematic, it is crucial to include all necessary components that ensure the circuit operates reliably under varying conditions. Consideration should be given to adding decoupling capacitors near the power pins of the microcontroller to filter out any noise that may affect performance. Additionally, the design should incorporate pull-up or pull-down resistors on input lines to prevent floating states that could lead to unpredictable I/O behavior.

Overall, a thorough review of the circuit design, including the power management strategies and I/O configurations, is recommended to identify and rectify the issues leading to the non-functional components. This approach will facilitate the development of a more stable and reliable electronic system.The most they do is seemingly run the code, but with a few I/Os unfunctional. e.g. half the LEDs it drives work, aseemingly random half. I have tried the Microchip suggested slow power-up circuit without success. Seems like it shouldn`t need it, because the exact same circuit didn`t need it before, and still doesn`t need it when running with 16F84As. For now I have switched to 16F628As as a short term substitute just to have a working model. Those things with their built in brown out reset, power on timers, resets correctly every time in the same circuits. Here`s the schematic without the slow power-on circuit I tried, as it didn`t seem to help any. It shows an OTP part, because the software didn`t have the flash part listed.

Related Circuits