CCS C Software and Maintenance Offers
FAQFAQ   FAQForum Help   FAQOfficial CCS Support   SearchSearch  RegisterRegister 

ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

CCS does not monitor this forum on a regular basis.

Please do not post bug reports on this forum. Send them to support@ccsinfo.com

Rs232 between pic micro

 
Post new topic   Reply to topic    CCS Forum Index -> General CCS C Discussion
View previous topic :: View next topic  
Author Message
aaronik19



Joined: 25 Apr 2011
Posts: 297

View user's profile Send private message

Rs232 between pic micro
PostPosted: Wed Jan 02, 2013 2:40 pm     Reply with quote

Does someone has any sample program how to exchange data between multiple pic, such as send a command from pic 1 to pic 2 to switch on led via rs232?

Redmir[/img]
temtronic



Joined: 01 Jul 2010
Posts: 9182
Location: Greensville,Ontario

View user's profile Send private message

PostPosted: Wed Jan 02, 2013 2:57 pm     Reply with quote

PIC101 !!!

which PIC...

which compiler....

have you got the '1Hz LED' AND 'Hello PC' programs running on BOTH PIC systems....

do you have a PC with working comport and terminal software...

this is the minimal stuff you MUST have before you can do your project.

hth
jay
aaronik19



Joined: 25 Apr 2011
Posts: 297

View user's profile Send private message

PostPosted: Wed Jan 02, 2013 3:03 pm     Reply with quote

Thanks temtronic. What i would like is the flow and not a project. What is the format of simple message from one pic to another? For the sake of this post we can use pic18f4550 and pic16f877.
Mike Walne



Joined: 19 Feb 2004
Posts: 1785
Location: Boston Spa UK

View user's profile Send private message

PostPosted: Wed Jan 02, 2013 4:34 pm     Reply with quote

Start by following temtronic's advice.

Your two PICs are PIC_A and PIC_B.

Use a PC to communicate with each PIC in turn, via a null modem cable.

When the PC is connected to PIC_A, the PC behaves as though it were PIC_B.

When the PC is connected to PIC_B, the PC behaves as though it were PIC_A.

CCS provides sample code for communicating via RS232.

You're the one who knows what you want the devices to say to each other.


Mike
aaronik19



Joined: 25 Apr 2011
Posts: 297

View user's profile Send private message

PostPosted: Wed Jan 02, 2013 4:39 pm     Reply with quote

But my question is how i am going to send the following statement:

Code:
output_high(pin_a0);


To pic B via rs232

That's what i need.
ezflyr



Joined: 25 Oct 2010
Posts: 1019
Location: Tewksbury, MA

View user's profile Send private message

PostPosted: Wed Jan 02, 2013 5:01 pm     Reply with quote

Hi,

You don't. Instead, send something like this with one PIC:

Code:


Printf("LED 1 On");



Then, with the other PIC, receive this message, and act on it.

John
bkamen



Joined: 07 Jan 2004
Posts: 1611
Location: Central Illinois, USA

View user's profile Send private message

PostPosted: Wed Jan 02, 2013 7:00 pm     Reply with quote

Aaron,

You need to look up online for explanations on basic communications protocols.

Ultimately, the way you do what you want to do is up to you.

http://en.wikipedia.org/wiki/Communications_protocol


-Ben
_________________
Dazed and confused? I don't think so. Just "plain lost" will do. :D
ckielstra



Joined: 18 Mar 2004
Posts: 3680
Location: The Netherlands

View user's profile Send private message

Re: Rs232 between pic micro
PostPosted: Thu Jan 03, 2013 5:37 am     Reply with quote

aaronik19 wrote:
Does someone has any sample program how to exchange data between multiple pic, such as send a command from pic 1 to pic 2 to switch on led via rs232?
I agree with Ben that you have to do more reading on device communications. RS232 is a physical medium for communication between 2 devices, not more! When you want to connect multiple devices to the same physical wires than have a look at other standards like RS485.

Please consider the following choices:
- Maximum wire length
- Wire topology (bus, ring, star, etc) http://www.edrawsoft.com/Network-Topologies.php
- Minimum baud rate
- Number of devices in the network
- Master-slave or can each device start a communication?

These choices help you to choose the correct physical network. Some popular standards are:
- RS232: point-to-point, maximum 20m
- RS485: multi-drop, maximum 1200m+
- I2C: master-slave, maximum 2m (often inside same enclosure)
- 1-Wire: similar to I2C but slower data rate over longer lines.
- CAN: multi-master for harsh environments (automotive)
- ZigBee: wireless mesh network
- Ethernet

Then on top of this 'physical layer' you will need a protocol. What the protocol looks like will partly depend on the properties of your physical network, for example when more devices share the same bus you'll need some kind of addressing scheme which can be left out in a point-to-point communication.
You can use one of the many existing standard protocols. Some popular protocols for use in the PIC are: CAN, LIN, ModBUS

But depending on your requirements it is perhaps easier to define your own protocol. I suggest you do some reading into the above mentioned protocols and physical layers. Study at least 3 protocols, you'll find there are many similarities but specific needs made it necessary to implement just again another protocol. We don't know what kind of system you want to design and there is no single 'best' protocol. So do some reading and then come back here with more detailed questions.
bkamen



Joined: 07 Jan 2004
Posts: 1611
Location: Central Illinois, USA

View user's profile Send private message

Re: Rs232 between pic micro
PostPosted: Thu Jan 03, 2013 12:07 pm     Reply with quote

ckielstra wrote:
aaronik19 wrote:
Does someone has any sample program how to exchange data between multiple pic, such as send a command from pic 1 to pic 2 to switch on led via rs232?
I agree with Ben that you have to do more reading on device communications. RS232 is a physical medium for communication between 2 devices, not more! When you want to connect multiple devices to the same physical wires than have a look at other standards like RS485.


Oh, now that ckielstra has mentioned it, make sure to also read:

http://en.wikipedia.org/wiki/OSI_model

As an exercise, go read up and tell us where you think RS232 fits in the OSI model.

-Ben
_________________
Dazed and confused? I don't think so. Just "plain lost" will do. :D
Display posts from previous:   
Post new topic   Reply to topic    CCS Forum Index -> General CCS C Discussion All times are GMT - 6 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group