ik heb een schakeling waar een binaire code uitkomt van maximaal 1111. nou moet deze code omgezet worden naar een serieel signaal voor een pc. Weet iemand hier een schakeling voor of is er een bepaald IC voor??

Ik zou het doen met een microcontrollertje met een hardware uart. Bijv een PIC16F628. Met een klein programmaatje ben je er al.

hier een klein schemaatje
http://www.oz1bxm.dk/PIC/628uart.gif

volgende aanpassing
signalen aansluiten op
bit0 op pin17
bit1 op pin18
bit2 op pin1
bit3 op pin2
start verzenden op pin3

Gebruik ook 5 weerstanden van 10k om de ingangen naar 0 te trekken voor als er geen input is. Tenzij de ingangen echt 0(0V) of 1(5V) zijn.

Op pin 6 kan een ledje worden aangesloten die aangeeft of
input start verzenden hoog is.

En de code


;******************************************************************* 
; Function:  Sends alive message, then echoes characters at 9600 bps 
; Processor: PIC16F628 at 4 MHz using internal RC oscillator 
;******************************************************************* 

        LIST P=16F628    ; Use the PIC16F628 

        #include "P16F628.INC"  ; Include header file 

        __config  _INTRC_OSC_NOCLKOUT & _LVP_OFF & _WDT_OFF & _PWRTE_ON & _BODEN_ON 

        CBLOCK 0x20             ; Declare variable addresses starting at 0x20 
          dataL 
        ENDC 

        ORG    0x000            ; Program starts at 0x000 
; 
; -------------------------------- 
; SET ANALOG/DIGITAL INPUTS PORT A 
; -------------------------------- 
; 
        movlw 7 
        movwf CMCON             ; CMCON=7 set comperators off 
; 
; ---------------- 
; INITIALIZE PORTS 
; ---------------- 
; 
        movlw b'00000000'       ; set up portA 
        movwf PORTA 

        movlw b'00000100'       ; RB2(TX)=1 others are 0 
        movwf PORTB 

        bsf STATUS,RP0          ; RAM PAGE 1 

        movlw 0xFF 
        movwf TRISA             ; portA all pins input 

        movlw b'00000010'       ; RB1(RX)=input, others output 
        movwf TRISB 

; ------------------------------------ 
; SET BAUD RATE TO COMMUNICATE WITH PC 
; ------------------------------------ 
; Boot Baud Rate = 9600, No Parity, 1 Stop Bit 
; 
        movlw 0x19              ; 0x19=9600 bps (0x0C=19200 bps) 
        movwf SPBRG 
        movlw b'00100100'       ; brgh = high (2) 
        movwf TXSTA             ; enable Async Transmission, set brgh 

        bcf STATUS,RP0          ; RAM PAGE 0 

        movlw b'10010000'       ; enable Async Reception 
        movwf RCSTA 

        movf RCREG,W 
        movf RCREG,W 
        movf RCREG,W            ; flush receive buffer 
; 
; --------- 
; MAIN LOOP 
; --------- 
; 
loop    btfss PORTA,4            ; mag informatie verzonden worden ? 
        goto  loop 
        bsf   PORTB,0            ; led aan 
        movf  PORTA,w            ; haal de informatie van de ingangen
        andlw 0x0F               ; alleen de eerste 4
        call  send               ; send the char 
loop2   btfsc PORTA,4            ; klaar met zenden?
        goto  loop2 
        bcf   PORTB,0            ; led uit
        goto  loop 
; ------------------------------------------------------------- 
; SEND CHARACTER IN W VIA RS232 AND WAIT UNTIL FINISHED SENDING 
; ------------------------------------------------------------- 
; 
send    movwf TXREG             ; send data in W 

TransWt bsf STATUS,RP0          ; RAM PAGE 1 
WtHere  btfss TXSTA,TRMT        ; (1) transmission is complete if hi 
        goto WtHere 

        bcf STATUS,RP0          ; RAM PAGE 0 
        return 

        end

EDIT:
Je hebt wel een programmer nodig en software.
Software is gratis en programmer niet moeilijk.

Hier op circuitsonline staat schema en link naar software
of kijk hier eens
http://home.versatel.nl/edithenwilliam/william.htm
en ga naar pic start