From: Eeyore on


TT_Man wrote:

> "Eeyore" <rabbitsfriendsandrelations(a)hotmail.com> wrote in message >> .EQU
> GFLAG,B.7 ;GAME FLAG, 1=GAME OVER, 0=GAME ON
> >>>>
> >>
> >>
> >> .EQU PCON,H'87 ;POWER CONTROL REGISTER
> >>
> >> .EQU EECON,H'0D2 ;EEPROM SFR
> >>
> >> .EQU AUXR1,H'0A2
> >
> > All the more reason NOT to use assembler !
> >
> > Did I see any SFRs in there? If so I missed them.
>
> yes you did miss them, and many more not included for commercial
> reasons.....

Oh OK.

I usually keep initialising of variables and registers in separate routines.

Graham


From: Eeyore on


MooseFET wrote:

> > Set ports 1,2 and 3 to 0xFF

Now that is one thing that does bug me about the 8051. I don't recall seeing anywhere that port pins
power-up in a defined state.

Graham

From: Eeyore on


mpm wrote:

> A wider clock register on 8051's would be nice

Please please please ! It's one of the few sillies in them. Just 24 bits would be nice

Graham

From: Eeyore on


Spehro Pefhany wrote:

> Eeyore wrote:
> >Spehro Pefhany wrote:
> >> Eeyore wrote:
> >> >Rich Grise wrote:
> >> >
> >> >> If I could get an 8051 equivalent but with Motorola's timer system (see
> >> >> 68HC11, e.g.), I'd be in hog heaven. ;-)
> >> >
> >> >What's so great about Motorola's timers ?
> >>
> >> Much better designed.
> >
> >In any specific way ? The only thing I might like in 8051 family timers is more
> >than 16 bits.
>
> For example, they added a little clump of hardware that latches the
> low order byte of a timer in a hidden register when you read the high
> order byte... which effectively makes a 16-bit timer read an atomic
> operation on an 8-bit processor, without ugly tests and fixes.

So you can get an exactly timed 16 bit result ?

Ho-hums and wonders if they've done that on the new 'enhanced' 8051s. The best one
was moving to fully static operation though IMHO.

Graham

From: Spehro Pefhany on
On Sun, 07 Sep 2008 07:28:52 +0100, the renowned Eeyore
<rabbitsfriendsandrelations(a)hotmail.com> wrote:

>
>
>Spehro Pefhany wrote:
>
>> Eeyore wrote:
>> >Spehro Pefhany wrote:
>> >> Eeyore wrote:
>> >> >Rich Grise wrote:
>> >> >
>> >> >> If I could get an 8051 equivalent but with Motorola's timer system (see
>> >> >> 68HC11, e.g.), I'd be in hog heaven. ;-)
>> >> >
>> >> >What's so great about Motorola's timers ?
>> >>
>> >> Much better designed.
>> >
>> >In any specific way ? The only thing I might like in 8051 family timers is more
>> >than 16 bits.
>>
>> For example, they added a little clump of hardware that latches the
>> low order byte of a timer in a hidden register when you read the high
>> order byte... which effectively makes a 16-bit timer read an atomic
>> operation on an 8-bit processor, without ugly tests and fixes.
>
>So you can get an exactly timed 16 bit result ?

Without the added latch and logic, whichever order you read the bytes
in, you run the risk of a rollover and carry occuring between the
first and second reads. So you might read 0x01 0xFF -> 0x01FF when the
actual count should be 0x0100 or 0x00FF (off by about 2:1). This can
be corrected with 100% certainty at the cost of an extra read and some
code (provided some control and assumptions about interrupts and
ISRs).

>Ho-hums and wonders if they've done that on the new 'enhanced' 8051s. The best one
>was moving to fully static operation though IMHO.
>
>Graham

Lots of enhancements have taken place (and lots were necessary) in the
peripherals and core implementation (like reducing the number of
clocks per instruction). The core functionality and instruction set
were always pretty good (but not so great for high level languages),
IMHO.


Best regards,
Spehro Pefhany
--
"it's the network..." "The Journey is the reward"
speff(a)interlog.com Info for manufacturers: http://www.trexon.com
Embedded software/hardware/analog Info for designers: http://www.speff.com