1
\$\begingroup\$

I am trying to program/read/erase an MCU MC68HRC908JK1 (marked MCR908JK1 and the logo of Freescale Co.) which is soldered on an industrial electronic card. MC68HRC908JK1 MCU

on the other hand, I have a universal programmer (image below) which has a ZIF connector and a 2*5 male box header for ISP and JTAG programming.

universal programmer universal programmer

enter image description here universal programmer

By contacting the programmer manufacturer, they claimed that I can program/read/erase the MCU by separately putting that on the ZIF connector and selecting the MC68HC908JK1 in the programmer's software (image below). enter image description hereprogramer's software

But due to some limitations, I can not remove the soldered MCU from the electronic card and put that on the ZIF connector. Therefore, I browsed the MCU's datasheet and found the necessary pins of the MCU for programming (the datasheet page is shown below). As shown in the datasheet, for the MC68HC908JK1, these pins are IRQ, RST, OSC1, PTB0, VDD, and VSS .

enter image description hereMCU's datasheet

Interestingly, 6 necessary programming pins were connected to a separate 1*6 male pin header in the electronic card (the square signs in the schematic below) which seems to be embedded for programming usages. Therefore, I connected the 5 of the necessary pins of the MCU to their equivalent pins on the ZIF connector on the programmer (pins 1,2,3,15,20) via the 6-PIN connector. On the other hand, I connected the pin 5 of the MCU to a 5V power supply.(The connections and the schematic of the electronic card are shown in the schematic below)

enter image description here the schematic of the electronic card and connections to the programmer (electronic card is shown by a dashed rectangle)

After that, I tried to connect to the MCU via the programmer's software. After clicking the "read" button, the software shows a warning that some pins are not connected. After clicking "continue" button, it shows the error "can't connect to the chip".

My question is what is wrong in my programming method ? If programming/reading the MCU is not possible this way, how should I do it ? Any helps will be appreciated.

\$\endgroup\$
3
  • \$\begingroup\$ I connected the 5 of the 6 necessary pins <-- that's one pin too few. You also mention this --> pins are RST, OSC1, PTB0, VDD, and VSS but IRQ seems to be connected in your lower image. It's very confusing. Where's the schematic of the industrial electronic card ? \$\endgroup\$
    – Andy aka
    Apr 17 at 8:38
  • \$\begingroup\$ Sorry about the confusion in my text. You were right. Six necessary pins are RST, OSC1, PTB0, VDD, VSS, and IRQ. I corrected the sentece. The schematic of the electronic card is shown by a dashed rectangle in the lower image and the numbered square signs connected to the wires are the pins of the mentioned 6 pins connector \$\endgroup\$
    – pooya
    Apr 17 at 9:52
  • \$\begingroup\$ This interface is indeed like that Monty Python sketch about the Spanish Inquisition: "Our two programming pins are RST, OSC1 and PTB0. Three! Our three programming pins are RST, OSC1, PTB0 and IRQ. Four! -..." Similarly, if you threatened to force me to program using this interface again, I would yield immediately, not to expose myself to that torture ever again. The next generation S08 had "BDM" single wire interface and it was bliss. \$\endgroup\$
    – Lundin
    Apr 17 at 13:20

1 Answer 1

3
\$\begingroup\$

This is an old 68HC08 dating back before standardized single-wire interfaces. That thing came with its own evil, proprietary programming interface from Motorola called "MON08".

The 2x5 connector on your programmer shown in the picture is a SWD/JTAG one, so it will do you no good what-so-ever.

MON08 required a higher programming voltage (some 8V if I remember correctly) to be applied to the IRQ pin, an external oscillator input and then depending on the specific part, a whole lot of I/O pins pulled one direction or the other. And also supply during programming, naturally.

I've troubleshooted a lot of these programming interfaces, hence dubbed "evil" because if you fail to pull one pin or the other in the wrong direction, nothing would work. And nothing worked indeed, most of the time... You need to read up on which pins to pull where in the datasheet for the specific 68HC08 part (J family), since I don't think they worked the same across families either. This stuff (from the Motorola 68HC08J datasheet):

enter image description here

You really don't want to muck around with this horrible interface by building the IC programmer yourself, which is what's suggested in the datasheet. Yeah I've done that too, it's not hard but not recommended either - nothing about this part is recommended...

Just buy a pre-made programmer/in-circuit debugger, for example some flavour of PE Micro Multilink (I'm not affiliated but have used their products a lot).

\$\endgroup\$
2
  • \$\begingroup\$ I'm happy to find you here! As I understood, It is not an easy job to do … By the way, I have some questions to ask you: 1. The PE Micro Multilink seems not to be available in the market. If I was forced to make the suggested programmer in the datasheet, what challenges am I going to face? 2. Is there a free software to use the PE Micro Multilink (or suggested programmer in the datasheet) for reading/programming the MCU? \$\endgroup\$
    – pooya
    Apr 21 at 9:07
  • \$\begingroup\$ @pooya I think PE Micro still support it through one of the "Cyclone" products but it might be expensive. PC software is included with the price. As for how to program these, it was almost 20 years ago when I did development with them. The picture you posted supposedly covers most of it, just add a regulator for the 9V-something supply. I found an old hand-made evaluation board I built back then on a 1.27mm perfboard. It got the MCU, a 74HC14 inverter which I think is for the oscillator and a bunch of diodes and passives. \$\endgroup\$
    – Lundin
    Apr 22 at 6:30

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.