Go to Post remember kids, never listen to Big Mike.... - Mike Schroeder [more]
Home
Go Back   Chief Delphi > Technical > Programming
CD-Media   CD-Spy  
portal register members calendar search Today's Posts Mark Forums Read FAQ rules

 
Closed Thread
Thread Tools Rate Thread Display Modes
  #1   Spotlight this post!  
Unread 22-04-2004, 18:09
phrontist's Avatar
phrontist phrontist is offline
Proto-Engineer
AKA: Bjorn Westergard
FRC #1418 (Vae Victus)
Team Role: College Student
 
Join Date: Feb 2004
Rookie Year: 2004
Location: Falls Church, VA
Posts: 828
phrontist has a reputation beyond reputephrontist has a reputation beyond reputephrontist has a reputation beyond reputephrontist has a reputation beyond reputephrontist has a reputation beyond reputephrontist has a reputation beyond reputephrontist has a reputation beyond reputephrontist has a reputation beyond reputephrontist has a reputation beyond reputephrontist has a reputation beyond reputephrontist has a reputation beyond repute
Send a message via AIM to phrontist
Robot Programming Education

So I've got a PIC, my faithful breadboard, a binary display modules (aka LEDs ), a bit of money, and a mighty urge to learn. But where to start?

This year, my team's rookie year, I found our basic programming more or less painless, and was able to muddle through what was required. I am very fond of C and have done quite a bit of programming for normal (by which I mean x86) systems.

This whole microprocessor thing is really very cool, but I don't know where to start in learning more about it. I am looking for books/websites aimed toward someone who is familiar with C programming but totally new to microprocessors/embedded systems.

I'm particularly interested in PIC programming for next year, and I've already obtained what is essentially a NOPP programmer.

I am the lead programmer for my mentorless team, which I don't see as a disadvatage. I'm also interested in hearing what CDers have to say about teaching freshman members to program, which I see as a very high priority.

Well, thanks in advance for your help.

NOTE:
I'm a bit of a militant linux zealot, so any resources on PIC programming from linux are greatly appreciated!
__________________

University of Kentucky - Radio Free Lexington

"I would rather have a really big success or a really spectacular crash and failure then live out the warm eventual death of mediocrity" - Dean Kamen
  #2   Spotlight this post!  
Unread 22-04-2004, 19:03
Jay Lundy Jay Lundy is offline
Programmer/Driver 2001-2004
FRC #0254 (The Cheesy Poofs)
Team Role: Alumni
 
Join Date: Jun 2001
Rookie Year: 2001
Location: Berkeley, CA
Posts: 320
Jay Lundy is a name known to allJay Lundy is a name known to allJay Lundy is a name known to allJay Lundy is a name known to allJay Lundy is a name known to allJay Lundy is a name known to all
Re: Robot Programming Education

Up to this year I had been mostly a high level programmer like yourself. I had done a lot of programming with languages like C++, Java, and PHP in web and windows environments. I had always been interested in the low level side but I never really did much with it.

Then in winter 2003 when I found out about the new controller I decided I needed to learn more about it. I was already a pro at C++ and had done a lot with C as well, so the programming wasn't hard, I just needed to learn about the actual PIC itself and basic EE concepts. I got a jumpstart from Ken Krieger, who taught me a bunch of the basics, and from there I learned most of what I needed from the PIC18F8520 manual. It may seem a little heavy at times, but it's actually a great learning tool, not just about the specific chip but about microprocessors in general. I followed that up with some EE theory from Radio Shack books and physics class, and some example circuits online, and that knowledge let me do quite a lot with this year's control system.

I also found it a lot of fun and a great learning experience working with character LCD displays. My first "major" electronics project was interfacing an LCD to the computer parallel port. It let me program in a familiar environment, but in an unfamiliar way (bit twiddling). It also didn't take very much wiring, but enough to make it fun. Once I got that working I interfaced the LCD to the robot controller, and my next big project (if I ever get a chance to start) is to use a PIC to capture data from the dashboard port and display it on an LCD.
  #3   Spotlight this post!  
Unread 22-04-2004, 21:26
phrontist's Avatar
phrontist phrontist is offline
Proto-Engineer
AKA: Bjorn Westergard
FRC #1418 (Vae Victus)
Team Role: College Student
 
Join Date: Feb 2004
Rookie Year: 2004
Location: Falls Church, VA
Posts: 828
phrontist has a reputation beyond reputephrontist has a reputation beyond reputephrontist has a reputation beyond reputephrontist has a reputation beyond reputephrontist has a reputation beyond reputephrontist has a reputation beyond reputephrontist has a reputation beyond reputephrontist has a reputation beyond reputephrontist has a reputation beyond reputephrontist has a reputation beyond reputephrontist has a reputation beyond repute
Send a message via AIM to phrontist
Re: Robot Programming Education

Quote:
Originally Posted by Jay Lundy
Up to this year I had been mostly a high level programmer like yourself. I had done a lot of programming with languages like C++, Java, and PHP in web and windows environments. I had always been interested in the low level side but I never really did much with it.

Then in winter 2003 when I found out about the new controller I decided I needed to learn more about it. I was already a pro at C++ and had done a lot with C as well, so the programming wasn't hard, I just needed to learn about the actual PIC itself and basic EE concepts. I got a jumpstart from Ken Krieger, who taught me a bunch of the basics, and from there I learned most of what I needed from the PIC18F8520 manual. It may seem a little heavy at times, but it's actually a great learning tool, not just about the specific chip but about microprocessors in general. I followed that up with some EE theory from Radio Shack books and physics class, and some example circuits online, and that knowledge let me do quite a lot with this year's control system.

I also found it a lot of fun and a great learning experience working with character LCD displays. My first "major" electronics project was interfacing an LCD to the computer parallel port. It let me program in a familiar environment, but in an unfamiliar way (bit twiddling). It also didn't take very much wiring, but enough to make it fun. Once I got that working I interfaced the LCD to the robot controller, and my next big project (if I ever get a chance to start) is to use a PIC to capture data from the dashboard port and display it on an LCD.
Neat project! Thanks for the tip on the manual, I didn't realize Microchip had such good docs
__________________

University of Kentucky - Radio Free Lexington

"I would rather have a really big success or a really spectacular crash and failure then live out the warm eventual death of mediocrity" - Dean Kamen
  #4   Spotlight this post!  
Unread 22-04-2004, 21:34
FotoPlasma FotoPlasma is offline
\: |
no team
 
Join Date: Jul 2001
Rookie Year: 2001
Location: San Jose
Posts: 1,900
FotoPlasma has a reputation beyond reputeFotoPlasma has a reputation beyond reputeFotoPlasma has a reputation beyond reputeFotoPlasma has a reputation beyond reputeFotoPlasma has a reputation beyond reputeFotoPlasma has a reputation beyond reputeFotoPlasma has a reputation beyond reputeFotoPlasma has a reputation beyond reputeFotoPlasma has a reputation beyond reputeFotoPlasma has a reputation beyond reputeFotoPlasma has a reputation beyond repute
Send a message via AIM to FotoPlasma
Re: Robot Programming Education

If you're interested in Linux PIC stuff, check out GPUTILS and GNUPIC. There's a lot of other such good pages with information out there.

Most of the free software associated with PIC microcontrollers is geared toward the 16F84, which is one of the more popular hobbiest controllers out there.
__________________
I played hacky sack with Andy Baker.

2001-2004: Team 258, The Sea Dawgs
2005: Team 1693, The Robo Lobos
  #5   Spotlight this post!  
Unread 23-04-2004, 13:38
Astronouth7303's Avatar
Astronouth7303 Astronouth7303 is offline
Why did I come back?
AKA: Jamie Bliss
FRC #4967 (That ONE Team)
Team Role: Mentor
 
Join Date: Jan 2004
Rookie Year: 2004
Location: Grand Rapids, MI
Posts: 2,071
Astronouth7303 has much to be proud ofAstronouth7303 has much to be proud ofAstronouth7303 has much to be proud ofAstronouth7303 has much to be proud ofAstronouth7303 has much to be proud ofAstronouth7303 has much to be proud ofAstronouth7303 has much to be proud ofAstronouth7303 has much to be proud ofAstronouth7303 has much to be proud ofAstronouth7303 has much to be proud of
Re: Robot Programming Education

www.beyondlogic.org is a good place for info on interfaces, also includes some 16F- examples.

On the freshmen thing, look for people who already program something and see if they will go through a tutorial. Most of my pre-C expieriance came from NQC, which doesn't have any of the funky overhead and has nearly immediate results on a simple device (or devices). Or just look for freshmen like myself who just need a week with the EDU, but I don't think there are many.
  #6   Spotlight this post!  
Unread 29-04-2004, 21:08
phrontist's Avatar
phrontist phrontist is offline
Proto-Engineer
AKA: Bjorn Westergard
FRC #1418 (Vae Victus)
Team Role: College Student
 
Join Date: Feb 2004
Rookie Year: 2004
Location: Falls Church, VA
Posts: 828
phrontist has a reputation beyond reputephrontist has a reputation beyond reputephrontist has a reputation beyond reputephrontist has a reputation beyond reputephrontist has a reputation beyond reputephrontist has a reputation beyond reputephrontist has a reputation beyond reputephrontist has a reputation beyond reputephrontist has a reputation beyond reputephrontist has a reputation beyond reputephrontist has a reputation beyond repute
Send a message via AIM to phrontist
Re: Robot Programming Education

Quote:
Originally Posted by Astronouth7303
www.beyondlogic.org is a good place for info on interfaces, also includes some 16F- examples.

On the freshmen thing, look for people who already program something and see if they will go through a tutorial. Most of my pre-C expieriance came from NQC, which doesn't have any of the funky overhead and has nearly immediate results on a simple device (or devices). Or just look for freshmen like myself who just need a week with the EDU, but I don't think there are many.
I used NQC once. That was a horrible. horrible, conception. Sadly, it was the best thing Mindstorms supported.
__________________

University of Kentucky - Radio Free Lexington

"I would rather have a really big success or a really spectacular crash and failure then live out the warm eventual death of mediocrity" - Dean Kamen
  #7   Spotlight this post!  
Unread 30-04-2004, 14:23
Astronouth7303's Avatar
Astronouth7303 Astronouth7303 is offline
Why did I come back?
AKA: Jamie Bliss
FRC #4967 (That ONE Team)
Team Role: Mentor
 
Join Date: Jan 2004
Rookie Year: 2004
Location: Grand Rapids, MI
Posts: 2,071
Astronouth7303 has much to be proud ofAstronouth7303 has much to be proud ofAstronouth7303 has much to be proud ofAstronouth7303 has much to be proud ofAstronouth7303 has much to be proud ofAstronouth7303 has much to be proud ofAstronouth7303 has much to be proud ofAstronouth7303 has much to be proud ofAstronouth7303 has much to be proud ofAstronouth7303 has much to be proud of
Re: Robot Programming Education

That's why it's called NQC: NOT QUITE C! But it gets you used to semi-colons, braces, etc. Basic lexial stuff, gets you away from, say, BASIC.
  #8   Spotlight this post!  
Unread 30-04-2004, 15:00
Ryan M. Ryan M. is offline
Programming User
FRC #1317 (Digital Fusion)
Team Role: Programmer
 
Join Date: Jan 2004
Rookie Year: 2004
Location: Ohio
Posts: 1,508
Ryan M. has much to be proud ofRyan M. has much to be proud ofRyan M. has much to be proud ofRyan M. has much to be proud ofRyan M. has much to be proud ofRyan M. has much to be proud ofRyan M. has much to be proud ofRyan M. has much to be proud ofRyan M. has much to be proud of
Re: Robot Programming Education

Quote:
Originally Posted by phrontist
I used NQC once. That was a horrible. horrible, conception. Sadly, it was the best thing Mindstorms supported.
If you're refering to the hardware, you can get alternate firmwares for it. Some of them are: BrickOS (former LegOS), LeJOS, and PB-FORTH.

LEGO doesn't support those though, although I've used all without problems. (other than installation. BrickOS is a pain to install. <if you're not lucky >)
__________________

  #9   Spotlight this post!  
Unread 30-04-2004, 15:00
Tom Bottiglieri Tom Bottiglieri is offline
Registered User
FRC #0254 (The Cheesy Poofs)
Team Role: Engineer
 
Join Date: Jan 2004
Rookie Year: 2003
Location: San Francisco, CA
Posts: 3,186
Tom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond repute
Re: Robot Programming Education

This is kind of off topic, but does anyone know a good online resource for learning the assembly language? I've always wanted to learn it, but never came across anyone who could point me in the right direction.
  #10   Spotlight this post!  
Unread 30-04-2004, 15:02
Ryan M. Ryan M. is offline
Programming User
FRC #1317 (Digital Fusion)
Team Role: Programmer
 
Join Date: Jan 2004
Rookie Year: 2004
Location: Ohio
Posts: 1,508
Ryan M. has much to be proud ofRyan M. has much to be proud ofRyan M. has much to be proud ofRyan M. has much to be proud ofRyan M. has much to be proud ofRyan M. has much to be proud ofRyan M. has much to be proud ofRyan M. has much to be proud ofRyan M. has much to be proud of
Re: Robot Programming Education

Quote:
Originally Posted by ToMMan b182
This is kind of off topic, but does anyone know a good online resource for learning the assembly language? I've always wanted to learn it, but never came across anyone who could point me in the right direction.
What platform/processor? It varies between them.
__________________

  #11   Spotlight this post!  
Unread 02-05-2004, 07:33
Ryan M. Ryan M. is offline
Programming User
FRC #1317 (Digital Fusion)
Team Role: Programmer
 
Join Date: Jan 2004
Rookie Year: 2004
Location: Ohio
Posts: 1,508
Ryan M. has much to be proud ofRyan M. has much to be proud ofRyan M. has much to be proud ofRyan M. has much to be proud ofRyan M. has much to be proud ofRyan M. has much to be proud ofRyan M. has much to be proud ofRyan M. has much to be proud ofRyan M. has much to be proud of
Re: Robot Programming Education

Quote:
Originally Posted by Texan
What platform/processor? It varies between them.
Wait... You mean the RCX. Don't know. Maybe "RCX internals"? (Look it up on Google.)
__________________

  #12   Spotlight this post!  
Unread 03-05-2004, 07:32
Astronouth7303's Avatar
Astronouth7303 Astronouth7303 is offline
Why did I come back?
AKA: Jamie Bliss
FRC #4967 (That ONE Team)
Team Role: Mentor
 
Join Date: Jan 2004
Rookie Year: 2004
Location: Grand Rapids, MI
Posts: 2,071
Astronouth7303 has much to be proud ofAstronouth7303 has much to be proud ofAstronouth7303 has much to be proud ofAstronouth7303 has much to be proud ofAstronouth7303 has much to be proud ofAstronouth7303 has much to be proud ofAstronouth7303 has much to be proud ofAstronouth7303 has much to be proud ofAstronouth7303 has much to be proud ofAstronouth7303 has much to be proud of
Re: Robot Programming Education

If you download the mindstorms SDK, it includes some asm stuff (primarily a few editors)
Closed Thread


Thread Tools
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Beatty's 2004 Robot mzitz2k General Forum 81 26-03-2004 15:18
Full list of teams & competitions archiver 2001 14 24-06-2002 00:52
Righting a robot... archiver 2001 2 24-06-2002 00:26
Kamikaze Robot Strategy... Joe Johnson Rules/Strategy 30 07-04-2002 21:42
Calling all Lawyers... ...Define "all parts" Joe Johnson General Forum 10 13-03-2002 15:12


All times are GMT -5. The time now is 02:15.

The Chief Delphi Forums are sponsored by Innovation First International, Inc.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi