Log in

View Full Version : Installation sequence



Demon
- 25th October 2005, 19:55
I've had tons of errors trying to compile a blinking LED on a 18F4550 (no problems with 16F628 and 16F877). Folder names were wrong in include members so I've uninstalled everything to start fresh.

I've had a problem in another application that had multiple mods and add-ons; the order of installation had to be followed carefully. So I'd like to make sure I'm not making a similar error here:

1. MeLabs programmer 3.12 (disquette)
2. PIC BASIC Pro compiler (CD)
3. MicroCode Studio Plus (CD)
4. Lab-X (disquette)
5. PIC BASIC Pro upgrade 2.46 (disquette)
6. PIC BASIC Pro upgrade 2.46a (download)
7. MicroCode Studio Plus upgrade (online)
8. MPLAB Tools v7.21 (download)
9. EasyHID (download)

Does that look ok?

Robert
:)

Demon
- 26th October 2005, 18:48
Ok, things are getting worse. I was just going down my checklist and reinstalling everything and I got a snag at update 2.46a. I get this error:

Cannot update version 2.46.
E:\PBP\INC\M16F684.INC: unknown version.

Any idea what's going on?

Robert
:(

Demon
- 26th October 2005, 22:42
__CONFIG has been deprecated for PIC 18F devices. Use directive CONFIG.

According to dictionary.com that means __CONFIG is obsolete and now replaced by CONFIG. It's not just a matter of replacing the text, that didn't work. Is there new syntax? How would you write this statement now?

@ __CONFIG _CONFIG1H, _PLLDIV_5_1L & _CPUDIV_OSC1_PLL2_1L & _USBDIV_1_1L

Robert
:(

Demon
- 27th October 2005, 00:48
Jeez, now I have problems finding includes in MicroCode Studio. The file pathnames are not right...

Robert
:(

Demon
- 27th October 2005, 01:57
Well, found the answer to some problems myself. :( I editted the pathnames in the includes and libs and things work further (added disk and full pathname).

I'm still faced by that deprecate warning, still no idea how to get rid of that.

And then there is one last ERROR[118]: OVERWRITING PREVIOUS ADDRESS at line 50 of the ASM file to figure out.

Robert
:/

mister_e
- 27th October 2005, 02:07
Look at that !
http://www.picbasic.co.uk/forum/showpost.php?p=13087&postcount=6

for the over writre blah blah just comment the default config fuses in the .INC file in the PBP folder

Demon
- 27th October 2005, 02:08
Ok, this is funky. The 1st thing I did was to go look in the FAQ for help on these issues and I only had 2 threads listed. I just did a SEARCH through the forum and found this thread:

Presetting Configuration Fuses (PIC Defines) into your Program

But if I go look in FAQ again, it's not there, always the same two threads? Anyways, Mister_E posted the answer to why I get the OVERWITE message.

Now if I can just find the answer to those pesky DEPRECATE warnings.

Robert
:)

Demon
- 27th October 2005, 02:10
Thanks Steve.

(don't you hate posting at the same time as someone else?)

Robert
:)

P.S.: STEVE, GET YOURSELF A HOTMAIL ACCOUNT AND EMAIL ME.

mister_e
- 27th October 2005, 02:11
Mr Demon.. open your eyes i already post a link above ;o)

EDIT: Glad to see you found it! I already have an hotmail account... without ANY KIND OF easy to hack Messenger or whatsoever. Videotron is working now..!

Demon
- 27th October 2005, 23:41
Steve, like this? I kept all the values so it is easier to change them around later.

If this is correct, it would make a good addition to one of those Configuration threads in the FAQ.

Robert
:)

Demon
- 27th October 2005, 23:50
Steve, I must have something wrong in the config switches above. The LED is blinking more than twice as fast as it should. This is the test code:

'define LOADER_USED 1
LED1 VAR PortD.1
START: HIGH LED1
PAUSE 1000
LOW LED1
PAUSE 1000
GOTO START
Finish: end

I am using a 20MHz external oscillator. I would like to be able to use slow speed USB on this device later. Do you see something I missed in the config?

Robert
:)

mister_e
- 28th October 2005, 05:09
you just need to modify the .INC in the PBP folders. My own file looks like that


;************************************************* ***************
;* 18F4550.INC *
;* *
;* By : Leonard Zerman, Jeff Schmoyer *
;* Notice : Copyright (c) 2004 microEngineering Labs, Inc. *
;* All Rights Reserved *
;* Date : 12/31/04 *
;* Version : 2.46 *
;* Notes : *
;************************************************* ***************
NOLIST
ifdef PM_USED
LIST
"Error: PM does not support this device. Use MPASM."
NOLIST
else
LIST
LIST p = 18F4550, r = dec, w = -311, f = inhx32
INCLUDE "P18F4550.INC" ; MPASM Header
; __CONFIG _CONFIG1L, _PLLDIV_5_1L & _CPUDIV_OSC1_PLL2_1L & _USBDIV_2_1L
; __CONFIG _CONFIG1H, _FOSC_HSPLL_HS_1H
; __CONFIG _CONFIG2H, _WDT_ON_2H & _WDTPS_128_2H
; __CONFIG _CONFIG3H, _PBADEN_OFF_3H
; __CONFIG _CONFIG4L, _LVP_OFF_4L & _ICPRT_OFF_4L & _XINST_OFF_4L
NOLIST
endif
LIST
EEPROM_START EQU 0F00000h
BLOCK_SIZE EQU 32

not much.. it's the whole file i have.

Do you still use the Bootloader? Did you also use the DEFINE OSC 20?

How about your current one?

Demon
- 28th October 2005, 13:44
you just need to modify the .INC in the PBP folders. My own file looks like that



...

INCLUDE "P18F4550.INC" ; MPASM Header
; __CONFIG _CONFIG1L, _PLLDIV_5_1L & _CPUDIV_OSC1_PLL2_1L & _USBDIV_2_1L
; __CONFIG _CONFIG1H, _FOSC_HSPLL_HS_1H
; __CONFIG _CONFIG2H, _WDT_ON_2H & _WDTPS_128_2H
; __CONFIG _CONFIG3H, _PBADEN_OFF_3H
; __CONFIG _CONFIG4L, _LVP_OFF_4L & _ICPRT_OFF_4L & _XINST_OFF_4L

...



You can't just comment out default values. You must assign them something, somewhere, no?


Do you still use the Bootloader?

Nope.


Did you also use the DEFINE OSC 20?

Nope.


How about your current one?

This is my latest code, same acceleration problem:

'define LOADER_USED 1
LED1 VAR PortD.1
START: HIGH LED1
PAUSE 1000
LOW LED1
PAUSE 1000
GOTO START
Finish: end


And these are the configuration bits used:

; 96MHz PLL Prescaler:
CONFIG PLLDIV = 5 ;Divide by 5 (20MHz input)
; CPU System Clock Postscaler:
CONFIG CPUDIV = OSC1_PLL2 ;[OSC1/OSC2 Src: /1][96MHz PLL Src: /2]
; Full-Speed USB Clock Source Selection:
CONFIG USBDIV = 1 ;Clock source from OSC1/OSC2
; Oscillator Selection bits:
CONFIG FOSC = HS ;HS oscillator, HS used by USB
; Fail Safe Clock Monitor:
CONFIG FCMEM = OFF ;Disabled
; Internal/External Switch Over:
CONFIG IESO = OFF ;Disabled
; Power Up Timer:
CONFIG PWRT = ON ;Enabled
; Brown Out Reset:
CONFIG BOR = ON ;Enabled, SBOREN bit is disabled
; Brown Out Voltage:
CONFIG BORV = 21 ;2.1V
; USB Voltage Regulator Enable:
CONFIG VREGEN = OFF ;Disabled
; Watchdog Timer:
CONFIG WDT = OFF ;HW Disabled - SW Controlled
; Watchdog Postscaler:
CONFIG WDTPS = 32768 ;1:32768
; MCLR Enable:
CONFIG MCLRE = ON ;Enabled
; Low Power Timer1 Oscillator Enable:
CONFIG LPT1OSC = OFF ;Timer1 oscillator configured for high power
; Port B A/D Enable:
CONFIG PBADEN = OFF ;PortB<4:0> pins are configured as digital I/O on RESET
; CCP2 Mux bit:
CONFIG CCP2MX = ON ;CCP2 input/output is multiplexed with RC1
; Stack Overflow Reset:
CONFIG STVREN = ON ;Enabled
; Low Voltage ICSP:
CONFIG LVP = OFF ;Disabled
; Dedicated In-Circuit Debug/Programming Enable:
CONFIG ICPRT = OFF ;Disabled
; Extended Instruction Set Enable:
CONFIG XINST = OFF ;Disabled
; Background Debugger Enable:
CONFIG DEBUG = OFF ;Disabled
; Code Protection Block 0:
CONFIG CP0 = OFF ;Disabled
; Code Protection Block 1:
CONFIG CP1 = OFF ;Disabled
; Code Protection Block 2:
CONFIG CP2 = OFF ;Disabled
; Code Protection Block 3:
CONFIG CP3 = OFF ;Disabled
; Boot Block Code Protection:
CONFIG CPB = OFF ;Disabled
; Data EEPROM Code Protection:
CONFIG CPD = OFF ;Disabled
; Write Protection Block 0:
CONFIG WRT0 = OFF ;Disabled
; Write Protection Block 1:
CONFIG WRT1 = OFF ;Disabled
; Write Protection Block 2:
CONFIG WRT2 = OFF ;Disabled
; Write Protection Block 3:
CONFIG WRT3 = OFF ;Disabled
; Boot Block Write Protection:
CONFIG WRTB = OFF ;Disabled
; Configuration Register Write Protection:
CONFIG WRTC = OFF ;Disabled
; Data EEPROM Write Protection:
CONFIG WRTD = OFF ;Disabled
; Table Read Protection Block 0:
CONFIG EBTR0 = OFF ;Disabled
; Table Read Protection Block 1:
CONFIG EBTR1 = OFF ;Disabled
; Table Read Protection Block 2:
CONFIG EBTR2 = OFF ;Disabled
; Table Read Protection Block 3:
CONFIG EBTR3 = OFF ;Disabled
; Boot Block Table Read Protection:
CONFIG EBTRB = OFF ;Disabled

I'm programming the chip via the MeLabs serial programmer.

Robert
:)

Demon
- 28th October 2005, 13:51
Something else is acting weird. The MCLR pin seems to be held by the programmer for some reason. I have to unplug the MCLR wire to the programmer in order to be able to use my RESET button.

It works properly for an 16F877, but not for an 18F4550.

Robert
:(

Demon
- 28th October 2005, 13:59
D'uh, nevermind on the acceleration thingy. I had to add DEFINE OSC 20.

I thought CONFIG PLLDIV = 5 in the default configuration bits set it at 20MHz, apparently not.

< Divide by 5 (20MHz input) >

Robert
:)

bioeng-mostafa
- 4th April 2006, 21:41
Hello every one
i want help of you to send to me or help me to find the two files
1-18f4550.inc
2-18f4550.bas
thank you

Bruce
- 5th April 2006, 00:01
Hi Robert,

CONFIG PLLDIV = 5 is a "config word" option. This sets the PLL prescaler to
divide the 20MHz primary osc input by 5. This is required when using a 20MHz
primary osc because the input to the 96MHz PLL must always be 4MHz.

DEFINE OSC 20 is different. This is used internally by PBP to adjust timing of
PBP library routines to the 20MHz primary oscillator.

bioeng-mostafa,

If you don't have the 18F4550 device header files, then you need to update
to the latest version of PBP. Version 2.46 introduced support for the 18F4550
series.

Just having someone email you device header files does not guarantee you'll
be able to use the new device. There are more to some PBP updates than
additional device specific header files.

bioeng-mostafa
- 5th April 2006, 08:28
hello
plase any one have PBP Version 2.46 introduced support for the 18F4550
send it to me or tell me how i can get it

bioeng-mostafa
- 5th April 2006, 08:30
hello
plase any one have PBP Version 2.46 introduced support for the 18F4550
send it to me or tell me how i can get it
my mail is removed
thank you

Melanie
- 5th April 2006, 09:45
bioeng-mostafa

Please don't ask for people to make and send you Pirate copies, get your own legally like the rest of us have had to.

If you need an upgrade, go back to your original supplier or MeLabs directly.

Squibcakes
- 11th July 2006, 02:50
What software do you lot use to program the 18F4550?

I've always used IC-Prog with my JDM programmer to program other chips ok - but it looks like IC-Prog doesn't support this chip yet.

I've tried winPic800 - but that doesnt detect the chip.

Help appreciated.
Squib

mister_e
- 11th July 2006, 03:16
over the year i discovered and confirm that what you invest in really worth if you use it daily. Even if you spend 400-500$ or more

simple calculation
OriginalPrice/(DaysOfUseInAYear*Years) ... after 1-2 years you'll discover than less than 1$ a day really worth all time wasting if XYZ odd problem happen due to the limited support.

Picstart is still workable but i don't recommend it now. It have still some problem on some device. All problem are solved here using BK precision 844a another Elnec relabeled). Work 100% of the time. The software upgrade is free and support by far more than only PIC.

Now if you plan to program only PICs... Melabs EPIC or Microchip ICD2 are some great tools too. At least often mentionned here and on other forum.

Those freebies like JDM & Pals are probably good for older device.. 16F628, 16F84... but come-on and give a break to those poor guy who develop FREE software around that like IC-Prog, WinPIcProg, PonyProg and how many others.

You're serious, use serious stuff

Sorry, it's my own and single opinion. Please, no flames.

Squibcakes
- 11th July 2006, 03:53
Sorry, found my problem.. wrong pinout in my Connector! Ahhhhh!!!

$2 JDM cheapy saved the day again!!

You're right... Hahahaha. I should spend the bucks and get a specialist programmer... maybe if the tax man is good to me this year I'll get one.

Cheers :)

mister_e
- 11th July 2006, 03:56
As i said, if you're a serious developper or work most of your time 'round PIC and other programmable IC (eeprom include) the investement and support really worth... at least to me.