gnupic: Re: [gnupic] How do I set configuration bits for 18f252 in gpasm?


Previous by date: 9 Jun 2006 04:24:04 +0100 Re: [gnupic] How do I set configuration bits for 18f252 in gpasm?, David Froseth
Next by date: 9 Jun 2006 04:24:04 +0100 Re: [gnupic] How do I set configuration bits for 18f252 in gpasm?, David Froseth
Previous in thread: 9 Jun 2006 04:24:04 +0100 Re: [gnupic] How do I set configuration bits for 18f252 in gpasm?, David Froseth
Next in thread: 9 Jun 2006 04:24:04 +0100 Re: [gnupic] How do I set configuration bits for 18f252 in gpasm?, David Froseth

Subject: Re: [gnupic] How do I set configuration bits for 18f252 in gpasm?
From: "George M. Gallant, Jr." ####@####.####
Date: 9 Jun 2006 04:24:04 +0100
Message-Id: <1149823427.7057.94.camel@scuba.home.net>

David,

FAST is defined on my system
in /usr/local/share/gputils/header/p18f252.inc. As the file
is not stock gputils and the years have not been kind to my little gray
cells, I don't know
if this is supplied by the gputils team or not.

George

On Thu, 2006-06-08 at 16:48 -0400, David Froseth wrote:

> Thanks George for the reply.  In the gputils documentation, I could not 
> find anything about how to do a settup like you have. Am I missing an 
> include file?  Maybe this is common knowledge.
> 
> Here is what I did to get __config working. At least to me, it looks 
> like it is working. Here is some of the gpasm output:
> 
>                 00021         list            p=18f252
>                 00022
>    00300001     00023 _config1h               equ     0x300001
>    00300002     00024 _config2l               equ     0x300002
>    00300003     00025 _config2h               equ     0x300003
>    00300005     00026 _config3h               equ     0x300005
>    00300006     00027 _config4l               equ     0x300006
>                 00028
>                 00029
> 300000 FAFF    00030         __config        _config1h, b'11111010'  ;HS 
> oscillator
>                 00031         __config        _config2l, b'11111110' 
> ;enable power-up timer
> 300002 FEFE    00032         __config        _config2h, b'11111110' 
> ;watchdog timer disabled
> 300004 FFFF    00033         __config        _config3h, b'11111111'  ;
> 300006 FFFB    00034         __config        _config4l, b'11111011' 
> ;Disable LVP
>                 00035
> 
> The program address and the program data is where it should be.  Since I 
> did not define a config1l at 0x300000, the assembler automatically 
> writes all 1's with the lower byte of the 0x300000 address being 'FF'. 
> 0x300001 is 'FA' as it should be.  So, it also seems that my original 
> numbers were wrong - unused bits should be written as '1', correct?
> 
> I also fixed problems with the 'retfie FAST' instruction.
> I was getting an error:
> 
> Error [113] : Symbol not previously defined (FAST).
> 001C 0010      00183                 retfie          FAST
> 
> In the PIC18FXX2 documentation (pg. 217) the retfie instruction word is 
> defined as - 0000 0000 0001 000s, where s=1, if you want certain 
> registers restored from shadow registers when returning from an 
> interrupt (pg. 214).
> So I defined FAST as '1':
> 
> FAST     equ  0x01
> 
> Now I get this output from gpasm:
> 
> 001C 0011      00183                 retfie          FAST
>                 00184
> 
> 
> This seems right since the op-code word is now '0011'h, which equals 
> '0000 0000 0001 0001'.  Do I have this right?
> 
> One last question - Does the '&' symbol in '_OSCS_OFF_1H & _HS_OSC_1H' 
> cause gpasm to do an AND logic function on the two bits represented by 
> the mnemonics?
> 
> Thanks.
> 
> George M. Gallant, Jr. wrote:
> > gpasm does a fine job with the 18f252.  Here is my current setup.
> > 
> > George
> > 
> > ;               __CONFIG  _CONFIG1H, _OSCS_OFF_1H & _HS_OSC_1H
> >                 __CONFIG  _CONFIG1H, _OSCS_OFF_1H & _HSPLL_OSC_1H
> > 
> >                 __CONFIG  _CONFIG2L, _PWRT_ON_2L & _BOR_OFF_2L &
> > _BORV_20_2L
> >                 __CONFIG  _CONFIG2H, _WDT_OFF_2H
> > 
> >                 __CONFIG  _CONFIG4L, _DEBUG_OFF_4L & _LVP_OFF_4L &
> > _STVR_ON_4L
> > 
> >                 __CONFIG  _CONFIG5L, _CP0_OFF_5L & _CP1_OFF_5L
> >                 __CONFIG  _CONFIG5H, _CPB_OFF_5H & _CPD_OFF_5H
> > 
> >                 __CONFIG  _CONFIG6L, _WRT0_OFF_6L & _WRT1_OFF_6L
> >                 __CONFIG  _CONFIG6H, _WRTC_OFF_6H & _WRTB_OFF_6H &
> > _WRTD_OFF_6H
> > 
> >                 __CONFIG  _CONFIG7L, _EBTR0_OFF_7L & _EBTR1_OFF_7L
> >                 __CONFIG  _CONFIG7H, _EBTRB_OFF_7H
> > 
> > 
> > 
> > 
> > On Thu, 2006-06-08 at 14:24 -0400, David Froseth wrote:
> > 
> > 
> >>I would like to use gpasm to make a hex file for a 18f252 pic.  However, 
> >>I am unsure of how to write the code, which sets up the configuration 
> >>bits.  The 18f parts have several config files located in 0x300001 - 
> >>0x30000d of the program memory.  How do I write my assembly program so 
> >>that gpasm knows what to do?
> >>
> >>I would like to have these values in the various config files:
> >>
> >>config1h = b'00100010'
> >>config2l = b'00001110'
> >>config2h = b'00001110'
> >>config3h = b'00000001'
> >>config4l = b'10000001'
> >>
> >>Thanks for any advice.
> >>
> >>p.s. Does gpasm support all of the additional instructions of the 
> >>enhanced 18f parts - i.e. bra, movlb, movff, etc?
> >>
> >>
> >>---------------------------------------------------------------------
> >>To unsubscribe, e-mail: ####@####.####
> >>For additional commands, e-mail: ####@####.####
> >>
> > 
> > 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: ####@####.####
> For additional commands, e-mail: ####@####.####
> 

Previous by date: 9 Jun 2006 04:24:04 +0100 Re: [gnupic] How do I set configuration bits for 18f252 in gpasm?, David Froseth
Next by date: 9 Jun 2006 04:24:04 +0100 Re: [gnupic] How do I set configuration bits for 18f252 in gpasm?, David Froseth
Previous in thread: 9 Jun 2006 04:24:04 +0100 Re: [gnupic] How do I set configuration bits for 18f252 in gpasm?, David Froseth
Next in thread: 9 Jun 2006 04:24:04 +0100 Re: [gnupic] How do I set configuration bits for 18f252 in gpasm?, David Froseth


Powered by ezmlm-browse 0.20.