Society of Robots - Robot Forum

Electronics => Electronics => Topic started by: FRM on April 18, 2012, 08:29:01 AM

Title: COMMUNICATING BETWEEN PIC AND PC
Post by: FRM on April 18, 2012, 08:29:01 AM
Hello everyone, Im a new member of society of robots ans i have been studying to build a robot but everytime i get stuck at a particular point. HOW TO COMMUNICATE FROM MY PC TO THE PIC IN THE PROJECT AND VICE VERSA. lets say i have a robot arm which i want to control from my pc, how do i go about it.  i know visual basic but i dont know how to transmit data from pc to my pic microcontroller and vice versa. please i need help. Thank you.
Title: Re: COMMUNICATING BETWEEN PIC AND PC
Post by: mstacho on April 19, 2012, 06:56:38 AM
I don't use VB or PICs, but in general, you need to open a serial port on the PC and set up the UART on the microcontroller.  The two send Bytes between each other.  Serial communication is apparently really easy in VB (http://support.microsoft.com/kb/823179 (http://support.microsoft.com/kb/823179) might help), but I don't know about UART on the PIC.

MIKE
Title: Re: COMMUNICATING BETWEEN PIC AND PC
Post by: FRM on April 19, 2012, 08:20:32 AM
Thanks a lot, i will go and read it now.
Title: Re: COMMUNICATING BETWEEN PIC AND PC
Post by: Soeren on April 19, 2012, 04:17:26 PM
Hi,

To get help on the PIC end of things, please post which PIC you have and what compiler/assembler you use
Further you have to decide if you want wired or wireless connection.

Remote operation can be made with a standard serial port signal, but R/C signalling is also quite usable and there's a lot of protocols besides EIA/TIA-232 that can be used - a lot of what goes into finding the best solution is to determine max. needed transmission speed, how much error checking/correction is needed and such.
Title: Re: COMMUNICATING BETWEEN PIC AND PC
Post by: FRM on April 24, 2012, 12:51:26 AM
Hi. I am currently using JALEdit compiler because JAL was the fastest language I could learn for PIC. I currently use a PIC 16F84A because I have a lot of tutorials on it but I can learn about and use any other PIC at any time. I would prefer a wireless connection, by remote or PC but preferably PC. I also would wish to learn how to establish a wired connection.
Title: Re: COMMUNICATING BETWEEN PIC AND PC
Post by: Soeren on April 24, 2012, 08:56:57 AM
Hi,

I am currently using JALEdit compiler because JAL was the fastest language I could learn for PIC.
While I have downloaded JAL a couple of times to give it a spin, I've never got around to writing as much as a single line of code for it. I mostly wanted to take a look at it becauseI did alot of Pascal code back in the eighties and JAL is claimed to be a Pascal-like creature, but its support is a bit marginal IIRC.

I bet you'd be even faster into something like PicBasic(/Pro) though and for small cores and time critical subroutines on larger cores, you'll need to learn a bit assembler as well.

Anyways... I cannot help you much on the JAL code you'd need - but the JAL community should be able to help (if you can find it).


I currently use a PIC 16F84A because I have a lot of tutorials on it but I can learn about and use any other PIC at any time.
About now, if not sooner, would be a good time :)
The 'F84 is a dinosaur and expensive for what little resources it has got. 16F628 is the nearest more current replacement - much cheaper and with a lot more resources (peripherals and program storage etc.). Any 'F84 code can be easily converted to 'F628.


I would prefer a wireless connection, by remote or PC but preferably PC. I also would wish to learn how to establish a wired connection.
Sounds like you're asking for us to write you a generic tutorial :(
Plenty exists already, try: http://www.gooligum.com.au/tutorials.html (http://www.gooligum.com.au/tutorials.html)

Wireless means you have to buy some of the small ISM-band modules. If you want two way comms. you need a transceiver at each end. The rest is just like with a wire - when you have decided on the rest that I mentioned.
If it's for short range with line-of-sight, IR is another option, but you have to decide on the rest of the parameters first, as the solution depends on them.