PDA

View Full Version : 16f877a



dirkwerk
- 15th November 2007, 09:32
Hi,
I use microchip MPLab ICD 2 and the picfem 2 plus board, now im complete new to this
so i tried to program in picbasi waht moer familiar looks to me, i set the pbpw as compiler
now when i use a bas program , and compile the message always is:
ERROR: Unable to find -p<pic> processor file
doe any knows whats wrong? i looked on the web for 16F877A.BAS file
buth did not found it. Im getting nervous of this:)
Thanks any way
Here is he sample program:
'************************************************* ****************************
'* MICROCODE STUDIO TIPS *
'* *
'* (1) : To get context sensitive help, move your cursor to a PICBasic *
'* : command and then press F1. *
'* (2) : Program assumes the PIC is running at 4MHz. To change the default *
'* : setting (for example, to 20MHz) simply add DEFINE OSC 20 at the *
'* : top of your program. *
'* *
'* This sample program is supplied courtesy of microEngineering Labs Inc *
'************************************************* ****************************

' PicBasic Pro program to display result of
' 8-bit A/D conversion on LCD
' Connect analog input to channel-0 (RA0)

' Define LCD registers and bits

Define LCD_DREG PORTD
Define LCD_DBIT 4
Define LCD_RSREG PORTE
Define LCD_RSBIT 0
Define LCD_EREG PORTE
Define LCD_EBIT 1
adval var byte ' Create adval to store result

TRISA = %11111111 ' Set PORTA to all input
ADCON1 = %00000010 ' Set PORTA analog and LEFT justify result
ADCON0 = %11000001 ' Configure and turn on A/D Module
Pause 500 ' Wait .5 second

loop:
ADCON0.2 = 1 ' Start Conversion

notdone:
Pause 5
If ADCON0.2 = 1 Then notdone ' Wait for low on bit-2 of ADCON0, conversion finished
adval = ADRESH ' Move high byte of result to adval

Lcdout $fe, 1 ' Clear screen
Lcdout "Value: ", DEC adval ' Display the decimal value

Pause 100 ' Wait .1 second

Goto loop ' Do it forever
End

Melanie
- 15th November 2007, 09:46
And what have you got in the way of software? You did purchase a PBP Compiler... it doesn't come free with your ICD2...

dirkwerk
- 15th November 2007, 09:54
I purchased it but i wanna use mplab cd2 because it was delivered with my picdem board

dirkwerk
- 15th November 2007, 12:17
no much help in here:(

Bruce
- 15th November 2007, 12:26
There's lots of help here, but you need to be a tad more specific.

Are you compiling from within MPLAB or MicroCode Studio?

Do you have MPASM or PM selected as the assembler?

Which version of PBP do you have?


i looked on the web for 16F877A.BAS file
Have you looked in your PBP install directory?

dirkwerk
- 15th November 2007, 12:39
hope someone can help me im trying nos for 2 weeks :(
but thank already for the reply.

There's lots of help here, but you need to be a tad more specific.
Are you compiling from within MPLAB or MicroCode Studio?

Im compiling within MPLAB
Do you have MPASM or PM selected as the assembler?

I have selected the PBPW as the assembler
Which version of PBP do you have?

procompiler 2.46
16F877A.BAS is not in my pbp directory
Quote:
no
i looked on the web for 16F877A.BAS file
Have you looked in your PBP install directory?

Bruce
- 15th November 2007, 13:23
Support for the 877A was added back in version 2.42. If you can't find 16F877A.BAS in your
PBP directory, then you should re-install, or contact the distributor you purchased PBP from.
They should be able to help you if there are missing device header files on your original PBP
install disc.

PBPW is not the assembler. It's the Windows version of the compiler EXE. In MPLAB, with PBP
setup as the language tool, you have the option of selecting PM or MPASMWIN as the
assembler.

But you will need to get familiar with MPLAB if you're compiling PBP programs using this IDE.

Assuming you have installed PBP correctly (as shown in your PBP manual), you have the path
setup, and PBP setup properly within MPLAB, you should not have any problems getting it to
compile in MPLAB.

You might find this page helpful http://www.microengineeringlabs.com/support/mplab.htm

dirkwerk
- 15th November 2007, 14:07
What i only see in my pbp directory is the pbpw.exe file could be a problem with
the installing disc. Its a disc i get from a friend who did not need it any more
and for me it was a good to see if it was better to program in picbasic
but without that 16f877a.bas file i cant do nothing and buying again that program
without knowing it will work is to expensive, is the 16f877a.bas the only file im missing then?

Thanks very much
Dirk

Bruce
- 15th November 2007, 14:16
No. You will need a great deal more than just pbpw.exe and a .bas header file.

That's what is so nice about actually purchasing legal copies. You get full support, and a
compiler that actually works.

dirkwerk
- 15th November 2007, 15:11
I gues it is a legal, but there is something wrong with the disc i guess,
thats probaply why he give it to me:) but the only thing is nnow that i catnt
test it:(

Thanks very much
Dirk

Bruce
- 15th November 2007, 15:18
If you can't get the files you need from your friend so you have the full working version, you
can still test drive the compiler. Just download the demo. It supports the 877A.

http://www.microengineeringlabs.com/pbpdemo.htm


I gues it is a legal
Read the yellow section on this page http://www.microengineeringlabs.com/support/upgrade.htm#pbp

dirkwerk
- 15th November 2007, 15:51
but i dont see any 877a.bas files.

Bruce
- 15th November 2007, 16:32
The demo version is a bit different, and does not install the same files. Run it, and try it.

dirkwerk
- 15th November 2007, 18:15
ill try i tommorow, but important is for me that it works with the ICD MPLAPS

see tomorrow
dirk

Bruce
- 15th November 2007, 18:30
I don't think you will be able to run ICD2 without ICDDEFS.BAS which is required to reserve
ICD resources. Like any demo, there are limitations as compared to the full version.

You can however use the ICD2 as a device programmer with no problem.

raptor
- 19th November 2007, 22:01
I'm using the PB Pro demo with MPlab 8.0 using Mpasmwin and ICD2 and the Picdem 2 Plus(older version 2002). The only problem I had was a path problem. I'm using a 16F877 and it gave some message about finding the P16F877.inc file. I setup my path for PB pro and the mpasmwin directories but it didn't help. So for a temp solution, copied, then modified the 16F877.inc file with the full path. Works great now.

;************************************************* ***************
;* 16F877.INC *
;* *
;* Notice : Copyright (c) 2004 microEngineering Labs, Inc. *
;* All Rights Reserved *
;* Date : 03/12/04 *
;* Version : Demo *
;* Notes : *
;************************************************* ***************
NOLIST
ifdef PM_USED
LIST
include 'M16F87x.INC' ; PM header
device pic16F877, xt_osc, wdt_on, pwrt_on, lvp_off, protect_off
XALL
NOLIST
else
LIST
LIST p = 16F877, r = dec, w = -302
INCLUDE "C:\Program Files\Microchip\MPASM Suite\P16F877.INC" ; MPASM Header
__config _XT_OSC & _WDT_ON & _PWRTE_ON & _LVP_OFF & _CP_OFF
NOLIST
endif
LIST

Other than that the demo works fine and you will find that 31 commands is a big limitation. I liked the demo, so I order the full version today, hopefully MElabs are a fast shipping company.

Jerry