Looking for DIO .h68 microcode file for Freescale MC68332 - Page 1
Forum section: electronics / projects

author: tru3533
author_rank: Regular Contributor
timestamp: April 30, 2025, 02:51:32 pm
content: Looking for aGPODIO .h68 microcode file that I can inject into TPURAM for my Freescale MC68332.Anyone who can help?Corrected:GPOto DIOUPDATEDWhat I try to do:I'm working on a control board with damaged MCUThe original Motorola MC68332GCFC16 ID 0J30C had damaged TPUCH11 (giving output 1.9V, not 5V)I replace MCU with Freescale MC68332GCFC16 ID 1J66ANow , all TPU Channels are NOT working. (no voltage on any channels)I replace back the Motorola MC68332GCFC16 ID 0J30CNow all TPU Channels are working except TPU Channel 11 (giving output 1.9V, not 5V)I found another Motorola MC68332GCFC16 ID 0J30CNow board is workingSo problem is incompatible Freescale MCU with original firmware.After decompiling firmware, I se that firmware expect TPU microcode to be already presentit does not load microcode. it assumes the Motorola version (with built-in TPU ROM)So I think I need to integrate the DIO microcode into firmware by loading it into the TPURAM at addresses $YF000–$YF3FFIf this is the case, I'm looking for the TPU microcode block.

author: Benta
author_rank: Super Contributor
timestamp: April 30, 2025, 06:33:44 pm
content: Which function is GPO? I haven't heard of it before.

author: bobxyz
author_rank: Contributor
timestamp: April 30, 2025, 07:10:37 pm
content: "Motorola GPO .h68 microcode file" - that doesn't sound familiar, but those brain cells are long gone. Maybe try here?https://www.eslave.net/tpu/source/source.html

author: tru3533
author_rank: Regular Contributor
timestamp: April 30, 2025, 07:47:53 pm
content: The TPU Function Library includes various functions such as General Purpose Output (GPO), Output Compare (OC), and Pulse Width Modulation (PWM). These functions can be compiled into microcode and loaded into the TPURAM to enable specific TPU functionalities.

author: Benta
author_rank: Super Contributor
timestamp: April 30, 2025, 08:58:16 pm
content: I still haven't heard of GPO.I think the function you're looking for is DIO (discrete input/output). It's in the micorcode ROM already. I don't see a need for a specific output function, but educate me.

author: tru3533
author_rank: Regular Contributor
timestamp: May 01, 2025, 11:19:56 am
content: You are right I was copying from some older Motorola TPU Function Library documentationThe correct naming is DIO (discrete input/output)What I try to do:I'm working on a control board with damaged MCUThe original Motorola MC68332GCFC16 ID 0J30C had damaged TPUCH11 (giving output 1.9V, not 5V)I replace MCU with Freescale MC68332GCFC16 ID 1J66ANow , all TPU Channels are NOT working. (no voltage on any channels)I replace back the Motorola MC68332GCFC16 ID 0J30CNow all TPU Channels are working except TPU Channel 11 (giving output 1.9V, not 5V)I found another Motorola MC68332GCFC16 ID 0J30CNow board is workingSo problem is incompatible Freescale MCU with original firmware.After decompiling firmware, I se that firmware expect TPU microcode to be already presentit does not load microcode. it assumes the Motorola version (with built-in TPU ROM)So I think I need to integrate the DIO microcode into firmware by loading it into the TPURAM at addresses $YF000–$YF3FFIf this is the case, I'm looking for the TPU microcode block.

author: bobxyz
author_rank: Contributor
timestamp: May 01, 2025, 04:01:24 pm
content: You want a part with the standard/automotive TPU ROM (Mask A), not the motion control TPU ROM (Mask G).See section 4.6 here:https://www.nxp.com/docs/en/application-note/M68331_332TUT.pdf

author: Benta
author_rank: Super Contributor
timestamp: May 01, 2025, 06:27:38 pm
content: Yep. The G mask does not have DIO, you need the A mask.

author: tru3533
author_rank: Regular Contributor
timestamp: May 01, 2025, 08:03:24 pm
content: @bobxyz @BentaHoly cow! you guys are golden!I have been on this for weeks, thank you, thank you, thank you