To LUGNET HomepageTo LUGNET News HomepageTo LUGNET Guide Homepage
 Help on Searching
 
Post new message to lugnet.robotics.handyboardOpen lugnet.robotics.handyboard in your NNTP NewsreaderTo LUGNET News Traffic PageSign In (Members)
 Robotics / Handy Board / 4647
4646  |  4648
Subject: 
Re: programming help.
Newsgroups: 
lugnet.robotics.handyboard
Date: 
Mon, 2 Nov 1998 02:22:55 GMT
Original-From: 
Darkman <lroska@SAYNOTOSPAMcyberus.ca>
Viewed: 
4523 times
  
The "<<" is a shift left operator in C
0E is the actual motor port on the Handy Board.


> At 10:34 AM 10/31/98 , Edmund wrote:
> > 
> > hello
> > 
> >       can someone please tell me what does the following command line • mean?
> > 
> >       bit_set(0x0e, 1 << (4 + motor));
> > 
> >       i know that 0x0e refers to memory location $0E but how does bit_set
> >       work? is it similar to poke? and more importantly, what operation
> >       does '1 << (4 + motor)' perform?
> > 
> >       any help will be appreciated. thanks.
> > 
> > 
> 
> In binary 1 is represented by  0000-0001
> 
> 1 << 1 is 0000-0010 aka 2
> 1 << 2 is 0000-0100 aka 4
> 1 << 3 is 0000-1000 aka 8
> 
> You get the idea? x << y means slide x to the left y times.
> 
> motor is probably a number between 0 and 3. 4+motor is then a number • between 4 and 7.
> 
> so, to go back to your example the result of  1<<(4+motor) is one of:
> 
> 1000-0000
> 0100-0000
> 0010-0000
> 0001-0000
> 
> And my guess is that bit_set(address, value) is equivalent to poke(address,
peek(address) | value). I don't have any documentation here, so I don't know
what is stored in 0x0e, but it could be the place where you turn the motors
on and off. And the code you are looking at is turning a motor on without
touching the other motors.
> 
> 
> -- Eric
> 



1 Message in This Thread:

Entire Thread on One Page:
Nested:  All | Brief | Compact | Dots
Linear:  All | Brief | Compact
    

©2005 LUGNET. All rights reserved. - hosted by steinbruch.info GbR