PIC 18f4680 DIGITAL INPUTS


Closed Thread
Results 1 to 12 of 12

Hybrid View

  1. #1
    Join Date
    Jun 2004
    Posts
    43


    Did you find this post helpful? Yes | No

    Thumbs up

    Thank you very much Melanie for your support .

  2. #2
    Join Date
    Mar 2008
    Posts
    8


    Did you find this post helpful? Yes | No

    Default Port D input

    Hi,

    just ported a program from 16F877 to this PIC. And Port D refuses to act as an input.
    I tried the following program snippet:

    ECCP1CON=%00000000
    TRISE.4=0
    TRISD=%0001111

    IF PORTD.2=1 THEN
    HIGH beeper
    PAUSE 1000
    LOW beeper
    ENDIF

    I put a 1k resistor from Vdd (5V) to port D2. The beeper doesn't sound. When I change the conditional statement to "PORTD.2=0",then the beeper sounds, even with the resistor connected! I checked for shorts, and no there is no short from D2 to GND.
    I also tried ports D1 and D3: same result...
    For some reason ports D refuse to become input and stay output low.....

    Another funny thing is that I use PortA0 as AD converter. If I connect 3V to this port, the PIC heats up like crazy (not so with the same PCB and 16F877)
    When I put a 100k in series with this pin, the AD works OK and PIC doesn't heat up.
    So also this pin acts as active low, even in AD mode....


    Any ideas what more to try?

  3. #3
    Join Date
    Mar 2008
    Posts
    8


    Did you find this post helpful? Yes | No

    Default Cracked it

    The following lines solved the (first) problem:

    CMCON7=0
    ECCP1CON=%00000000
    TRISE.4=0
    TRISD=%0001111

    Amazing that a simple "INPUT PORTD.2" doesn't do it.

    I will study the datasheet on the CMCON stuff.

    thanks

  4. #4
    Join Date
    Mar 2008
    Posts
    8


    Did you find this post helpful? Yes | No

    Default HSEROUT vs SEROUT2

    Melanie,

    I followed your register tutorial and ran into the following snag:

    I use HSEROUT on port C6 (the hardware Tx pin) and all works fine.
    However when I issue a SEROUT2 command on that pin, the pin remains silent (no activity on that pin using the oscilloscope). The very same SEROUT2 command on port A1 gives activity on the scope screen.
    I assume the same applies to the SERIN2 on port C7.
    What am I missing here?

  5. #5
    skimask's Avatar
    skimask Guest


    Did you find this post helpful? Yes | No

    Default

    Quote Originally Posted by MadAl View Post
    I use HSEROUT on port C6 (the hardware Tx pin) and all works fine.
    However when I issue a SEROUT2 command on that pin, the pin remains silent (no activity on that pin using the oscilloscope). The very same SEROUT2 command on port A1 gives activity on the scope screen.
    I assume the same applies to the SERIN2 on port C7.
    What am I missing here?
    If the port is still set up to use the hardware serial port, SERIN/SEROUT won't work. The port has to be set up for normal, general purpose I/O to work with SERIN/SEROUT.

  6. #6
    Join Date
    Mar 2008
    Posts
    8


    Did you find this post helpful? Yes | No

    Default

    Hi,

    I thought about that. I removed the hardware serial defines at the start of the program, and the problem remains.
    Or is there another way to disable HW serial?
    Btw I tried the same with a 16F877 and also there the same issue exists.

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


    Did you find this post helpful? Yes | No

    Default

    Try this;

    Code:
    DEFINE HSER_BAUD 9600
    
    Main:
        HSEROUT ["HSER",13,10]
        PAUSE 500
        SEROUT2 PORTC.6,84,["WITH RCSTA.7=1",13,10]
        PAUSE 500
        RCSTA.7=0
        SEROUT2 PORTC.6,84,["WITH RCSTA.7=0",13,10]
        PAUSE 500
        RCSTA.7=1
        
        GOTO Main
    You should get this;

    HSER
    WITH RCSTA.7=0
    HSER
    WITH RCSTA.7=0

    With RCSTA.7 set the USART takes over these pins.
    Regards,

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

Similar Threads

  1. Setting up digital inputs
    By quester in forum mel PIC BASIC Pro
    Replies: 1
    Last Post: - 22nd March 2008, 22:14
  2. Pic driven digital audio delay
    By skimask in forum Off Topic
    Replies: 12
    Last Post: - 19th April 2007, 20:42
  3. inputs on 12F675 (or for that matter any PIC)
    By muddy0409 in forum mel PIC BASIC Pro
    Replies: 2
    Last Post: - 11th April 2007, 19:43
  4. Using portb as inputs PIC goes crazy
    By peterdeco1 in forum mel PIC BASIC Pro
    Replies: 1
    Last Post: - 14th November 2005, 14:15
  5. Serial Pic to Pic using HSER
    By Chadhammer in forum mel PIC BASIC Pro
    Replies: 5
    Last Post: - 11th March 2005, 23:14

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