programming problem

Can somebody shed some light on this problem that seems to have just started when programming 08M2 chips. Yesterday everything seemed to work ok when testing my code on the AXE091 development board and i could easily program and re-program the 08M2 chip, i noticed today that the oled was not displaying the time anymore through the program so decided to reload the program but just get hardware not found problem. I replaced the 08M2 and it programmed ok the first time but only once i.e if i try to re-program it goes back to the same error. I have now tried this with another chip and it does the same thing so am a little afraid of trying again if it is somehow destroying the chips. I have tried with PE 5.5.5 and PE 6, i would be grateful if a forum member could tell me what the problem may be.
 

Goeytex

Senior Member
Since a new Picaxe will program one time, it sounds to me like a blocking command or a long pause in the code may be preventing subsequent downloads.

Try a "hard reset" when programming .
 
I had already found a post on the forum regarding hard reset and this will let me re-program the 08M2, but i cannot understand why it has all of a sudden started to do this with the program i have and also with other programs that i have used in the past with no problem. Incidently it only seems to be happening on the 8/14/28 socket when i try a 18M2 in the 18 socket i do not have to perform a hard reset to re-program. The following is the code which is still in progress
Code:
[color=Blue]symbol [/color][color=Purple]secs     [/color][color=DarkCyan]= [/color][color=Purple]b0[/color]
[color=Blue]symbol [/color][color=Purple]mins     [/color][color=DarkCyan]= [/color][color=Purple]b1[/color]
[color=Blue]symbol [/color][color=Purple]hour     [/color][color=DarkCyan]= [/color][color=Purple]b2[/color]
[color=Blue]symbol [/color][color=Purple]dow      [/color][color=DarkCyan]= [/color][color=Purple]b3 [/color][color=Black]: [/color][color=Blue]symbol [/color][color=Purple]chkdow   [/color][color=DarkCyan]= [/color][color=Purple]b9[/color]
[color=Blue]symbol [/color][color=Purple]day      [/color][color=DarkCyan]= [/color][color=Purple]b4 [/color][color=Black]: [/color][color=Blue]symbol [/color][color=Purple]chkday   [/color][color=DarkCyan]= [/color][color=Purple]b10[/color]
[color=Blue]symbol [/color][color=Purple]month    [/color][color=DarkCyan]= [/color][color=Purple]b5 [/color][color=Black]: [/color][color=Blue]symbol [/color][color=Purple]chkmonth [/color][color=DarkCyan]= [/color][color=Purple]b11[/color]
[color=Blue]symbol [/color][color=Purple]year     [/color][color=DarkCyan]= [/color][color=Purple]b6 [/color][color=Black]: [/color][color=Blue]symbol [/color][color=Purple]chkyear  [/color][color=DarkCyan]= [/color][color=Purple]b12[/color]
[color=Blue]symbol [/color][color=Purple]century  [/color][color=DarkCyan]= [/color][color=Purple]b7[/color]
[color=Blue]symbol [/color][color=Purple]control  [/color][color=DarkCyan]= [/color][color=Purple]b8 [/color][color=Black]: [/color][color=Blue]symbol [/color][color=Purple]chkctrl  [/color][color=DarkCyan]= [/color][color=Purple]b13

  [/color][color=Blue]hi2csetup i2cmaster[/color][color=Black], [/color][color=Navy]%11010000[/color][color=Black], [/color][color=Blue]i2cslow[/color][color=Black], [/color][color=Blue]i2cbyte
serout c.0[/color][color=Black], [/color][color=Blue]n2400[/color][color=Black], [/color][color=Blue]([/color][color=Navy]254[/color][color=Black],[/color][color=Navy]1[/color][color=Blue])
do
      hi2cin [/color][color=Navy]0[/color][color=Black], [/color][color=Blue]([/color][color=Purple]b0[/color][color=Black], [/color][color=Purple]b1[/color][color=Black], [/color][color=Purple]b2[/color][color=Black], [/color][color=Purple]b4[/color][color=Black], [/color][color=Purple]b5[/color][color=Black], [/color][color=Purple]b6[/color][color=Blue]) [/color][color=Green];read sec, min, hour
      [/color][color=Blue]bcdtoascii [/color][color=Purple]b0[/color][color=Black],[/color][color=Purple]b26[/color][color=Black],[/color][color=Purple]b25
      [/color][color=Blue]bcdtoascii [/color][color=Purple]b1[/color][color=Black],[/color][color=Purple]b24[/color][color=Black],[/color][color=Purple]b23
      [/color][color=Blue]bcdtoascii [/color][color=Purple]b2[/color][color=Black],[/color][color=Purple]b22[/color][color=Black],[/color][color=Purple]b21
      [/color][color=Green];serout c.0, n2400, (254,1)
      [/color][color=Blue]pause [/color][color=Navy]30
      [/color][color=Blue]serout c.0[/color][color=Black], [/color][color=Blue]n2400[/color][color=Black], [/color][color=Blue]([/color][color=Navy]254[/color][color=Black],[/color][color=Navy]128[/color][color=Blue])
      serout c.0[/color][color=Black], [/color][color=Blue]n2400[/color][color=Black],[/color][color=Blue]([/color][color=Purple]b22[/color][color=Black],[/color][color=Purple]b21[/color][color=Black],[/color][color=Red]":"[/color][color=Black],[/color][color=Purple]b24[/color][color=Black],[/color][color=Purple]b23[/color][color=Black],[/color][color=Red]":"[/color][color=Black],[/color][color=Purple]b26[/color][color=Black],[/color][color=Purple]b25[/color][color=Blue]) [/color][color=Green];output time
      [/color][color=Blue]pause [/color][color=Navy]100 [/color][color=Green];wait for LCD to print
      [/color][color=Blue]bcdtoascii [/color][color=Purple]b4[/color][color=Black],[/color][color=Purple]b26[/color][color=Black],[/color][color=Purple]b25
      [/color][color=Blue]bcdtoascii [/color][color=Purple]b5[/color][color=Black],[/color][color=Purple]b24[/color][color=Black],[/color][color=Purple]b23
      [/color][color=Blue]bcdtoascii [/color][color=Purple]b6[/color][color=Black],[/color][color=Purple]b22[/color][color=Black],[/color][color=Purple]b21
      [/color][color=Blue]serout c.0[/color][color=Black], [/color][color=Blue]n2400[/color][color=Black], [/color][color=Blue]([/color][color=Navy]254[/color][color=Black],[/color][color=Navy]192[/color][color=Blue])
      serout c.0[/color][color=Black], [/color][color=Blue]n2400[/color][color=Black], [/color][color=Blue]([/color][color=Purple]b26[/color][color=Black],[/color][color=Purple]b25[/color][color=Black],[/color][color=Red]"."[/color][color=Black], [/color][color=Purple]b24[/color][color=Black],[/color][color=Purple]b23[/color][color=Black],[/color][color=Red]"."[/color][color=Black], [/color][color=Purple]b22[/color][color=Black],[/color][color=Purple]b21[/color][color=Blue]) [/color][color=Green];output date
      [/color][color=Blue]pause [/color][color=Navy]30[/color]
[color=Blue]loop[/color]
 

radiogareth

Senior Member
Might just be a broken center single tab connection on your PCB mounted black download socket. I have had lots of those fail with 'pupil use' over the years. Unsolder and fit a new one if there is any sign of flexing possible as this usually means it has already fractured.
 

Technical

Technical Support
Staff member
Easily tested, does it happen all the time, e.g. with do/pause/loop or just with that particular program (which is expecting an i2c chip to be connected and talking back).

If all the time then it is a problem, if not it is simply the i2c connection.
 

Dartmoor

Member
Since a new Picaxe will program one time, it sounds to me like a blocking command or a long pause in the code may be preventing subsequent downloads.

Try a "hard reset" when programming .
Thanks - I would probably never have worked that out!
I had assumed that it was just another Picaxe 'feature' that you sometimes need to interrupt the power supply at the start of progamming.
Some of my programs have long (1/2 sec or more) 'waits' in them and thinking about it, they are the ones that need the reset.

Nice to know why!
 
Top