serial comm problem


Closed Thread
Results 1 to 17 of 17

Hybrid View

  1. #1
    win_832001's Avatar
    win_832001 Guest

    Post serial comm problem

    hello there..i was trying to control the relay 12V by using the serial port comm.the PIC that i used is PIC 16 F84. can someone check my VB PIC basic code below,it does not work:

    VB code :
    Private Sub Form_Load()
    Optstate(0).Value = True
    MSComm1.CommPort = 1
    MSComm1.Settings = "2400,n,8,1"
    MSComm1.DTREnable = False
    MSComm1.RThreshold = 1
    MSComm1.InputLen = 1
    MSComm1.PortOpen = True
    End Sub
    Private Sub Command1_Click()
    Dim pinstate As Long
    If Optstate(0).Value = True Then
    pinstate = 0
    Else
    pinstate = 1
    End If
    MSComm1.Output = Chr$(255) & Chr$(pinstate)
    End Sub

    Private Sub form_unload(cancel As Integer)
    MSComm1.PortOpen = False

    End Sub


    PIC code :
    INCLUDE "modedefs.bas"

    Si VAR PORTA.4
    RELAY VAR PORTB.2
    pinstate VAR BYTE

    main

    SerIn Si,4,["255"],pinstate

    IF pinstate=1 Then
    GoSub Relayon
    Else
    GoSub Relayoff
    EndIF

    Relayon:
    High RELAY
    Return

    Relayoff:
    Low RELAY
    Return

  2. #2
    Join Date
    Jul 2003
    Posts
    2,405


    Did you find this post helpful? Yes | No

    Default

    Place a goto Main at the end, and change ["255"] to [255].
    Code:
    Main:
        SerIn Si,4,[255],pinstate
        IF pinstate=1 Then 
          GoSub Relayon
        Else 
          GoSub Relayoff
        EndIF
        GOTO Main ' <-- forgot this
    
    Relayon:
        High RELAY
        Return
    
    Relayoff:
        Low RELAY 
        Return
    Regards,

    -Bruce
    tech at rentron.com
    http://www.rentron.com

  3. #3
    win_832001's Avatar
    win_832001 Guest


    Did you find this post helpful? Yes | No

    Unhappy other problem

    tq for the reply..actually there are problem appear after i tried the code u have given..when i'm sending '0' from VB and after that send "1" to th PIC.the relay does not "on".

    the problem also appear after once i "on" and "off" the relay, and then i want to "on" again the relay is not "on"

  4. #4
    Join Date
    Sep 2004
    Location
    montreal, canada
    Posts
    6,898


    Did you find this post helpful? Yes | No

    Default

    how do you interface your PIC to the PC? resistor i guess, wich value? 1k-10K is fair enough. geater than 10K seems to cause erratic behavior in some case.

    Could also be a hardware problem as we see often.. psu filtering or else.
    Steve

    It's not a bug, it's a random feature.
    There's no problem, only learning opportunities.

  5. #5
    win_832001's Avatar
    win_832001 Guest


    Did you find this post helpful? Yes | No

    Default resistor

    the resistor i used is is 22K..

  6. #6
    Join Date
    Apr 2006
    Location
    Michigan
    Posts
    70


    Did you find this post helpful? Yes | No

    Default

    The PIC may not supply enough current to trigger your relay. Put an LED in its place and make sure it is going on and off.

Similar Threads

  1. Problem using Microloader and Uart Comm at the same time
    By guanerrr in forum mel PIC BASIC Pro
    Replies: 0
    Last Post: - 3rd August 2007, 09:31
  2. Big characters on HD44780 4x20
    By erpalma in forum mel PIC BASIC Pro
    Replies: 23
    Last Post: - 7th January 2007, 02:21
  3. Serial Communication Problem
    By elec_mech in forum mel PIC BASIC Pro
    Replies: 23
    Last Post: - 23rd February 2006, 02:11
  4. Replies: 8
    Last Post: - 11th November 2004, 20:08
  5. 16F877, DS18S20 and Serial Comm Problem
    By YellowTang in forum mel PIC BASIC Pro
    Replies: 1
    Last Post: - 26th April 2004, 10:36

Members who have read this thread : 0

You do not have permission to view the list of names.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts