Even then, use an F-series chip that is reprogrammable and debuggable.
Announcement
Collapse
No announcement yet.
Announcement
Collapse
No announcement yet.
Let's make a closely MXT like detector!
Collapse
X
-
Agreed 100%Originally posted by Carl-NC View PostWhy would you want to use a C-series micro? They are OTP and non-debuggable. If you want to stick with PIC use a more modern chip with plenty of flash and MPLabX support.
This bit of the conversation - with any talk about a PIC or MPLab - is purely about the effort to get the code from the PIC16C76 from my MXT. Believe me, I am sold on using a modern micro for this project, and over in post #113 I cover my choice of STM32's for this project, and why I chose the ones I did. If I do ever mess around with PIC micros it would be with F (flash based) ones, but I don't see myself messing with PICs - other than trying to read code from them when the need arises - e.g. Altra's desire to get the code from the PIC in his CNC machine...but that is off topic for this thread...
The talk about the debugging capabilities of the PIC16Cxx only relates to an easier vs harder route to getting the code from the PIC (if possible) for potential use of code bits in this project.
Thanks for making this point - this project is STM32 based for sure, 100%, no worries, I already have a NUCLEO-F303K8 to use for the early breadboarding and prototyping for this project. The schematic and control board won't use a NUCLEO though, but a (currently) STM32F303K8T6 LQFP32 chip.
Comment
-
First a note - again - this project going forward will use a STM32 micro, the below is just for those who want to try to access the code burned into a PIC....Originally posted by Altra View PostHi KRinAZ, can you tell us what your "fun tools" are? I have an old cnc machine controller that uses a pic18f. The company that made the controller has been out of business for at least 15 years. I would like to build a back up controller if I can dump the hex. Thanks
The tools that I was able to use to produce (disassembled from program memory) assembly code from a 16C family PIC (e.g. the code from the PIC16C76 in my MXT) are:
One of
PICStart Plus - beige p/n 10-00157 Revision 10 thru 19 (I have r10, had to burn another PIC17C44, then install it, to do a firmware upgrade) running v3.11.00 firmware (called Picstart Plus OS 3.11.00, included with MPLab IDE v5.7.4)
PICStart Plus - beige p/n 10-00157 Revision 20 thru 22 (better, can download firmware directly to update it)(should work? but I haven't tested)
PICStart Plus - black p/n 10-00379 any Revision (best, can also download firmware directly to update it)(should work? but I haven't tested)
no other programmer, or debugger, to my knowledge, will work
MPLab IDE v5.7.4 - (still accessible at Microchip site) which is ancient and requires true Win95 or Win95 emulation (Win98 is too new and doesn't work) via Win10x32 with NTDVM - but includes tools that are removed from later versions of the MPLab IDE (like outputting usable disassembled assembly code).
no other newer MPLab, to my knowledge, will work.
I have not yet found a way to copy out the binary code directly into a .hex file, but I believe the assembly code can produce a binary file if needed via MPLab...Last edited by KRinAZ; 05-06-2026, 05:46 PM.
Comment
-
Well here it is - attached - the disassembled file of the PIC16C76 from my MXT - for your viewing pleasure. Has a column of the ascii of the binary, and a column of the PIC16Cxx assembly code - complete from memory location 0x0000 thru 0x1FFF - hoping someone can prep this with some regex magic and then turn the assembly into C.
Also, if the column with ascii representation of the binary was turned back into a binary 8k x 14 bit hex file it could be burned back to a PIC (I also have the configuration bits needed at burn time) - as Altra may find interesting for his CNC...off topic though...Attached Files
Comment
-
Thanks. MPLab also generated a .HEX file but it didn't appear to be a binary file, but I only glanced at it, so I still need to verify it is a ready to burn file. If so I'll burn one and see if it operates in my MXT. The PIC16C76's that I have on hand are SOIC-28's but my old version C MXT board takes a 28 pin DIP, so I'll also need to see if my SOIC to DIP adapter will fit into the MXT...Originally posted by Altra View PostGreat work KR. Have you tried cloning and testing a new pic in the mxt? In my cnc controller it is a F series. Do you think it is readable also?
...and I think the F series would be easier to read than the C series chip...can you tell me specifically which PIC18Fxxx it has?
Comment
-
I have verified that the .HEX file that MPLab generated is in fact a valid .HEX file that can be directly burned to a PIC. I have the soic-28 to dip adapter pcb's that I need on order, and as soon as they arrive (probably Fri 5/15) I will burn a PIC and put it in my MXT and test for functionality.
Assuming it works (I expect it will) I will begin converting the assembly into C as reference code for this project. BTW I'm old school and don't have AI tools so if anyone wants to run that assembly code thru Claude or something, that would be great!
Also in the background I'm chipping away at creating a complete component list, and will soon begin the schematic with a thought towards a build procedure document.
Comment

Comment