Announcement

Collapse
No announcement yet.

ideas and stuff

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • LosT
    replied
    Originally posted by mage2
    Hello
    Thanks for the reply.
    I have looked at the BASIC chips and the OOpic also.
    I can read schematics and handle building electronics.

    thanks for the help
    im going to do some more research and i might be bothering you later

    No problem. The Rabbit products aren't bad either (I think Jameco carries them, if not, I know that Digikey does)-

    LosT

    Leave a comment:


  • mage2
    replied
    chips

    Hello
    Thanks for the reply.
    I have looked at the BASIC chips and the OOpic also.
    I can read schematics and handle building electronics.

    thanks for the help
    im going to do some more research and i might be bothering you later

    Leave a comment:


  • LosT
    replied
    So you know what you are up against...

    Here is an example of some code written for the Motorolla 68HC11 microcontroller. It was a BCD (binary coded decimal) routine I wrote, this is just a part of the code:

    SECT ROM, BASE = $2000
    ROMCHK EQU 0
    ADDTIME PSHX
    CONC XR_Sav
    PSHB
    CONC BR_Sav
    PSHA
    CONC AR_Sav
    PSHY
    CONC YR_Sav

    TSX
    LDD PARMSZ,X
    STD PARMLOC
    ADDD =PARMSZ
    STD PARMSZ,X
    TPA
    PSHA
    CONC CC_Sav
    LDX PARMLOC
    LDY TIME2,X
    LDX TIME1,X
    LDAA Fract,X
    ADDA Fract,Y
    DAA
    PSHA
    CONC TH_sav
    LDAA Sec,X
    ADCA Sec,Y
    DAA
    BCS 1F
    CMPA =MAXSEC
    BHI 1F
    CLC
    BRA 3F
    1H ADDA =MINADJ
    DAA

    Now compare that to some PBasic code:

    MAIN: 'The main program loop
    PAUSE 300 'pause for serial reads/writes (Red-i)
    BUTTON 15,0,255,250,scratchbtn,1,PBUTTON 'Poll for button press (physical)
    BUTTON 14,0,255,250,scratchbtn,1,jawbite
    SEROUT 8,240,["!RI0ST"] 'Poll for webpage update by sending a request
    SERIN 7,240,100,MAIN,[RiSTATUS] 'for the state of the status register (Red-i)
    IF NewPost = 1 THEN WEBUPDATE 'Check for update from web interface
    GOTO MAIN 'Check everything again!

    '-----------------------------------------------------------------------------------
    'Subroutines
    '-----------------------------------------------------------------------------------

    PBUTTON: 'If the button was pressed we get here
    SEROUT 8,240,["!RI0R07"] 'reading the currently stored state of the eyes
    SERIN 7,240,100,MAIN,[DEC EYESTATE]
    IF EYESTATE < 3 THEN PBUTTON1 'If the state = 3, then we need to roll over to 0
    EYESTATE = 0 'again. If it isn't, we just ++
    GOTO PBUTTON2 'skip over the ++ because state has rolled over to 0

    PBUTTON1: ' EYESTATE++
    EYESTATE = EYESTATE + 1

    PBUTTON2: 'turn on/off the correct LEDs
    IF EYESTATE = 0 OR EYESTATE = 1 THEN LOFF 'pushing the button scrolls through
    OUT1 = 1 'the four LED states for the eyes.
    GOTO CONTINUE1

    LOFF:
    OUT1 = 0

    CONTINUE1:
    IF EYESTATE = 0 OR EYESTATE = 2 THEN ROFF
    OUT0 = 1
    GOTO CONTINUE2

    ROFF:
    OUT0 = 0

    CONTINUE2:
    BRANCH EYESTATE,[Case0,Case1,Case2,Case3]
    GOTO MAIN

    Granted I left the comments in for the PBasic, but the code is much easier to follow and understand (at first). Really you should work towards clean, efficient assembly though.

    losT

    Leave a comment:


  • LosT
    replied
    Originally posted by A
    LosT: Great hints

    Think I'm gonna pick up one of those basic stamp kits at radio shack and see if I can't get going on a project.

    The integration between tcp/ip and such a simple device as these seems to baffle me for some reason. Even with a premade interface how much do you need to do in code and how much is done by the interface. Am I gonna have to write/find/tweek an ip stack or just put in some variables and then get some digital i/o?
    It doesn't work that way (not the kits from Parallax at least)- The 'webserver' contains registers that contain values. Those values can be seen by the microcontroller. The microcontroller will talk to the 'webserver' by what ever hardware interface *YOU* create. As far as coding, you will at the very least need to learn PBasic from Parallax. It is so pathetically easy that it feels like a logo program. You have a somewhat limited instruction set, but you can do pretty much what you want with it. Keep in mind that Parallax's solution is not a complied language, PBasic is what they call "tokenized"- that is you write the code, then run it through their 'tokenizer' (think of it as a compile, although not really the same thing)- remember you are using a microcontroller, not a very complex chip (it's only an 8-bit chip)- The reason Parallax came up with the PBasic was for those not yet up to assembly. (Which I recommend you learn eventually, if you ever want *good* implimentation of code for microcontrollers). Another good resource is the website run by a guy named Al Williams (google it)- he writes a "stamp project of the month" article for Nuts and Volts magazine every month, and he's more than willing to help people out.

    Parallax is probably the easiest way to start, but ultimately you'll graduate into better (read: more powerful) chips. Don't be fooled by the simplicity of a BS2 or even the BS1, they are great building blocks for projects of this nature, the key is how you put them together. Think of legos, I've seen some kick ass lego projects, and some really crappy looking projects...with microcontrollers you are building parts into sub-systems, then making the systems talk to each other. Most of the time this intercommunication involves sending a hex byte saying "hey listen, I'm talking to you", the message, then another hex byte that says "Ok, done with the message"-

    LosT

    Leave a comment:


  • A
    replied
    LosT: Great hints

    Think I'm gonna pick up one of those basic stamp kits at radio shack and see if I can't get going on a project.

    The integration between tcp/ip and such a simple device as these seems to baffle me for some reason. Even with a premade interface how much do you need to do in code and how much is done by the interface. Am I gonna have to write/find/tweek an ip stack or just put in some variables and then get some digital i/o?

    Leave a comment:


  • LosT
    replied
    Originally posted by mage2
    Ya know you are right. Im usually not this bad.
    Im looking for good referance books on designing around microcontrolers and interfacing them into network.
    Also any books on the basics of Single Board Computers.
    I have some hardware background, and another of the team is a coder.
    I can google, and i have. But i know many have been down the path and know what books helped and what didnt.

    thanks for the help LosT
    If you want an *easy* microcontroller to use, check Parallax, the BS2 is their best price point for basic stuff, and they have great support (you can even download their manuals as PDFs for free before you purchase).

    If you have more experience, try the BasicX chips from Netmedia, they are more complex, but cheaper *and* more powerful.

    If you are elite, use PICs and program them yourself- or something like an SX chip, Motorolla 68XX series (cheap!) - but you need to know assembly pretty well to deal with those.

    As for TCP/IP interface, Netmedia and Parallx have 'boxed' solutions, but those aren't as cool as designing yourself- Jameco, Digikey, etc... are great places to order parts from (Radio Shack tends to be more expensive, and they don't carry much anymore.)

    Getting power to digital logic (if that is your drug of choice) is a no brainer with a voltage regulator (see Digikey, Jameco, etc...)

    Team eh? Come on, be a one man show! Kidding, just glad to see more people interested.

    I'd be happy to help anyone with ideas get at least the basics going. I won't teach you how to read a schematic or do basic coding though. I *might* help you with some assembly if you are new to microcontrollers, but if you can't figure out things like Parallax's PBasic, you don't belong at DefCON, unless you are really hot..

    LosT

    Leave a comment:


  • mage2
    replied
    correct

    Ya know you are right. Im usually not this bad.
    Im looking for good referance books on designing around microcontrolers and interfacing them into network.
    Also any books on the basics of Single Board Computers.
    I have some hardware background, and another of the team is a coder.
    I can google, and i have. But i know many have been down the path and know what books helped and what didnt.

    thanks for the help LosT

    Leave a comment:


  • LosT
    replied
    Originally posted by mage2
    Hey
    i was thinking about entering, i want to get a early start. I need some help.
    what are some referances you found most helpful? i know i can do a google and im doing that now , i just want a few pointers to known good books and/or sites.
    thanks
    mage2
    I don't understand your question- it is not specific enough.

    To design a device you will need hardware skills, coding skills, etc...

    Do you want to know how to code for a microcontroller? Do you want to know how to solder an IC, or do the design work for the circuit to drive the thing? A servo tutorial? TCP/IP interface design?

    What general direction is your idea heading, then maybe I can help you find a good place to start.

    LosT

    Leave a comment:


  • mage2
    started a topic ideas and stuff

    ideas and stuff

    Hey
    i was thinking about entering, i want to get a early start. I need some help.
    what are some referances you found most helpful? i know i can do a google and im doing that now , i just want a few pointers to known good books and/or sites.
    thanks
    mage2
Working...
X