Early morning test .........
After thinking about it overnight I wondered if the pic was not crashing but re-starting, so I put the following into the the pic, the porta loop lets me know that the program has started, and will let me know if the pic restarts.
With the CLEAR in between the portb loops it never executes the 2nd, but restarts the program ! as port A.0 starts toggling again.
Remove the CLEAR and it works as expected, so I will have to get a different batch of 648As to see if it is the pics.
DEFINE OSC 20
COUNTER VAR BYTE
FOR COUNTER = 0 TO 10 ' confirms beginning of program
LOW PORTA.0
PAUSE 250
HIGH PORTA.0
PAUSE 250
NEXT
TEST:
FOR COUNTER = 0 TO 20
LOW PORTB.7
PAUSE 250
HIGH PORTB.7
PAUSE 250
NEXT
CLEAR
FOR COUNTER = 0 TO 20
LOW PORTB.7
PAUSE 500
HIGH PORTB.7
PAUSE 500
NEXT
GOTO TEST
Woops. My bad.Thanks Darrel, but I did say in my post at 15:51 ... I have tried the Melabs programmer 4.32beta
As soon as I see 2.46 beta, I stop looking for anything else.
I would be curious what happens with this program.
Since about the only difference between the 628A and 648A programs will be clearing the additional RAM in BANK2.
This program tries to clear the same memory without the clear statement.
It doesn't do banks 0 or 1 because they were already checked with the 628 program loaded in the 648.
Probably nonsense, but I'm still curious.Code:DEFINE OSC 20 Idx VAR BYTE B2RAM VAR BYTE[80] BANK2 COUNTER VAR BYTE FOR COUNTER = 0 TO 10 ' confirms beginning of program LOW PORTA.0 PAUSE 250 HIGH PORTA.0 PAUSE 250 NEXT TEST: FOR Idx = 0 TO 79 B2RAM(Idx) = 0 NEXT Idx LOW PORTA.0 ' turn LED on to indicated completed ' may need HIGH don't know which way the LED is. STOP
<br>
DT
Hi Darrel
Thank you very much for the code, it works with no problem, I then modified it to check that after writing 0 to the location it was read back to see if it had been written correctly, answer is yes. I then made it keep doing, and again no failures.
Something is very strange. I have ordered some more 648As from another supplier, they may arrive tomorrow
I have just been looking through the listing and see that PB shows the following
16 =0020 RAM_START EQU 00020h
17 =01EF RAM_END EQU 001EFh
18 =0003 RAM_BANKS EQU 00003h
19 =0020 BANK0_START EQU 00020h
20 =007F BANK0_END EQU 0007Fh
21 =00A0 BANK1_START EQU 000A0h
22 =00EF BANK1_END EQU 000EFh
23 =0120 BANK2_START EQU 00120h
24 =01EF BANK2_END EQU 001EFh
25 =2100 EEPROM_START EQU 02100h
26 =21FF EEPROM_END EQU 021FFh
page 17 of my data sheet shows that bank 2 ends at 16FH not as it says above, 1EFH , could this be the problem or am I missing the obvious ?
What do you think ?
edit.
I have just changed the bank 2 end location to 16FH from 1EFH in the 648a.bas file and recompiled using the program in post 14, with the clear in position.......it works perfectly... so do you think I have found the problem ?
Last edited by aerostar; - 12th November 2009 at 15:38. Reason: New info added
Further update, on Bank end location, I have had a look at later version 2.61 files, my current one 2.43 I have used for many moons, and it looks as though the file may have been corrected in 2007, shows the value of updates, but then I would have thought someone would have noticed. I will try tomorrow with 2.61 and confirm that has no problems.
That's definately it.
But you had said before ...Ha, we're even.but it crashes, compiled with 2.43 or 2.6.
<br>
DT
where did I put my Beretta Balltrap Sporting gun and my buckshot cartdriges ???
I was thinking of BADRAM/MAXRAM ... but nooo... could not be possible to have been modified !!!
EVERYTHING is posssible ... LOL
Alain
************************************************** ***********************
Why insist on using 32 Bits when you're not even able to deal with the first 8 ones ??? ehhhhhh ...
************************************************** ***********************
IF there is the word "Problem" in your question ...
certainly the answer is " RTFM " or " RTFDataSheet " !!!
*****************************************
Bookmarks