• Terminal
    Terminal
    An electrical connector acting as reusable interface to a conductor and creating a point where external circuits can be connected.
  • Ground
    A common return path for electric current. Commonly known as ground.
  • Net Portal
    A net identifier used to create connectivity to other Net Portal with the same designator. #portal
  • Power Net Portal
    Power net portal is a special schematic object used to define a power or ground net. Power ports allow you to conveniently indicate a power net at any location in the design. Power nets of the same designator automatically connect throughout your design #portal #power
  • Generic Resistor
    A generic fixed resistor for rapid developing circuit topology. Save precious design time by seamlessly add more information to this part (value, footprint, etc.) as it becomes available. Standard resistor values: 1.0Ω 10Ω 100Ω 1.0kΩ 10kΩ 100kΩ 1.0MΩ 1.1Ω 11Ω 110Ω 1.1kΩ 11kΩ 110kΩ 1.1MΩ 1.2Ω 12Ω 120Ω 1.2kΩ 12kΩ 120kΩ 1.2MΩ 1.3Ω 13Ω 130Ω 1.3kΩ 13kΩ 130kΩ 1.3MΩ 1.5Ω 15Ω 150Ω 1.5kΩ 15kΩ 150kΩ 1.5MΩ 1.6Ω 16Ω 160Ω 1.6kΩ 16kΩ 160kΩ 1.6MΩ 1.8Ω 18Ω 180Ω 1.8KΩ 18kΩ 180kΩ 1.8MΩ 2.0Ω 20Ω 200Ω 2.0kΩ 20kΩ 200kΩ 2.0MΩ 2.2Ω 22Ω 220Ω 2.2kΩ 22kΩ 220kΩ 2.2MΩ 2.4Ω 24Ω 240Ω 2.4kΩ 24kΩ 240kΩ 2.4MΩ 2.7Ω 27Ω 270Ω 2.7kΩ 27kΩ 270kΩ 2.7MΩ 3.0Ω 30Ω 300Ω 3.0KΩ 30KΩ 300KΩ 3.0MΩ 3.3Ω 33Ω 330Ω 3.3kΩ 33kΩ 330kΩ 3.3MΩ 3.6Ω 36Ω 360Ω 3.6kΩ 36kΩ 360kΩ 3.6MΩ 3.9Ω 39Ω 390Ω 3.9kΩ 39kΩ 390kΩ 3.9MΩ 4.3Ω 43Ω 430Ω 4.3kΩ 43KΩ 430KΩ 4.3MΩ 4.7Ω 47Ω 470Ω 4.7kΩ 47kΩ 470kΩ 4.7MΩ 5.1Ω 51Ω 510Ω 5.1kΩ 51kΩ 510kΩ 5.1MΩ 5.6Ω 56Ω 560Ω 5.6kΩ 56kΩ 560kΩ 5.6MΩ 6.2Ω 62Ω 620Ω 6.2kΩ 62KΩ 620KΩ 6.2MΩ 6.8Ω 68Ω 680Ω 6.8kΩ 68kΩ 680kΩ 6.8MΩ 7.5Ω 75Ω 750Ω 7.5kΩ 75kΩ 750kΩ 7.5MΩ 8.2Ω 82Ω 820Ω 8.2kΩ 82kΩ 820kΩ 8.2MΩ 9.1Ω 91Ω 910Ω 9.1kΩ 91kΩ 910kΩ 9.1MΩ #generics #CommonPartsLibrary
  • Generic Capacitor
    A generic fixed capacitor for rapid developing circuit topology. Save precious design time by seamlessly add more information to this part (value, footprint, etc.) as it becomes available. Standard capacitor values: 1.0pF 10pF 100pF 1000pF 0.01uF 0.1uF 1.0uF 10uF 100uF 1000uF 10,000uF 1.1pF 11pF 110pF 1100pF 1.2pF 12pF 120pF 1200pF 1.3pF 13pF 130pF 1300pF 1.5pF 15pF 150pF 1500pF 0.015uF 0.15uF 1.5uF 15uF 150uF 1500uF 1.6pF 16pF 160pF 1600pF 1.8pF 18pF 180pF 1800pF 2.0pF 20pF 200pF 2000pF 2.2pF 22pF 20pF 2200pF 0.022uF 0.22uF 2.2uF 22uF 220uF 2200uF 2.4pF 24pF 240pF 2400pF 2.7pF 27pF 270pF 2700pF 3.0pF 30pF 300pF 3000pF 3.3pF 33pF 330pF 3300pF 0.033uF 0.33uF 3.3uF 33uF 330uF 3300uF 3.6pF 36pF 360pF 3600pF 3.9pF 39pF 390pF 3900pF 4.3pF 43pF 430pF 4300pF 4.7pF 47pF 470pF 4700pF 0.047uF 0.47uF 4.7uF 47uF 470uF 4700uF 5.1pF 51pF 510pF 5100pF 5.6pF 56pF 560pF 5600pF 6.2pF 62pF 620pF 6200pF 6.8pF 68pF 680pF 6800pF 0.068uF 0.68uF 6.8uF 68uF 680uF 6800uF 7.5pF 75pF 750pF 7500pF 8.2pF 82pF 820pF 8200pF 9.1pF 91pF 910pF 9100pF #generics #CommonPartsLibrary
  • Generic Inductor
    A generic fixed inductor for rapid developing circuit topology. *You can now change the footprint and 3D model at the top level anytime you want. This is the power of #generics
  • RMCF0805JT47K0
    47 kOhms ±5% 0.125W, 1/8W Chip Resistor 0805 (2012 Metric) Automotive AEC-Q200 Thick Film #forLedBlink
  • 875105359001
    10uF Capacitor Aluminum Polymer 20% 16V SMD 5x5.3mm #forLedBlink #commonpartslibrary #capacitor #aluminumpolymer #radialcan
  • CTL1206FYW1T
    Yellow 595nm LED Indication - Discrete 1.7V 1206 (3216 Metric) #forLedBlink
G
D
S

ZXMP3A13FTA

ZXMP3A13FTA
Description

Created
January 10th 2024
Last updated by vasyl
20 days ago
1 Contributor(s)
vasyl

Controls

Properties

Part Type
Single FETs, MOSFETs
Manufacturer Name
Manufacturer Part Number
ZXMP3A13FTA
Designator Prefix
Q

Availability & Pricing

DPNStockQty 1
40–3K$0.1155–$0.2171
112K$0.15253
144K$0.52
12.7K$0.1593
10245–6K$0.0652–$0.2171

Assets

Simulation

µs

Simulation Speed

control rs232 mediante pic 16f84a
@copilot control rs232 mediante pic 16f84a
2mo
Para controlar y comunicarse a través de RS-232 utilizando un microcontrolador PIC 16F84A, puedes seguir una serie de pasos. El PIC16F84A no tiene un módulo UART hardware integrado para RS-232, por lo que tendrás que implementar una UART por software para manejar la comunicación serie. Aquí tienes un enfoque básico:
Componentes Necesarios
  • Microcontrolador PIC16F84A
  • Convertidor de nivel RS-232 como el MAX232
  • Cristal oscilador (4 MHz típicamente)
  • Condensadores para el MAX232
  • Conectores DB9 (para la conexión RS-232)
  • Cables y otros componentes pasivos según sea necesario
Esquema Básico de Conexión
  1. Conexion del MAX232:
    • Conectar el PIN 11 (T1IN) del MAX232 a un pin de E/S en el PIC16F84A (salida TX).
    • Conectar el PIN 12 (R1OUT) del MAX232 a un pin de E/S en el PIC16F84A (entrada RX).
    • Conectar los pines de alimentación y tierra del MAX232.
    • Conectar cuatro condensadores externos (generalmente de 1 µF) como requiere el MAX232.
  2. Conexión del PIC16F84A:
    • Conectar un cristal de 4 MHz entre los pines OSC1 y OSC2 del PIC.
    • Configurar correctamente los pines de alimentación (VDD y VSS).
  3. Interfaz RS-232:
    • Conectar el PIN 14 (T1OUT) del MAX232 al pin RX del conector DB9.
    • Conectar el PIN 13 (R1IN) del MAX232 al pin TX del conector DB9.
Código de Implementación
Dado que el PIC16F84A no tiene una UART integrada, la transmisión y recepción de datos deben implementarse por software. Aquí hay un ejemplo simplificado de transmisión:

C


#define TX_PIN RA1  // elige el pin que usarás para la transmisión

void UART_SendChar(char ch) {
    // Configurar el pin de salida
    TX_PIN = 1;  // reposo en alto
    __delay_us(104);  // para 9600 bps, ajusta según frecuencia
    
    // Start bit
    TX_PIN = 0;
    __delay_us(104);

    // Enviar cada bit del carácter
    for (int i = 0; i < 8; ++i) {
        TX_PIN = (ch >> i) &amp; 1;
        __delay_us(104);
    }

    // Stop bit
    TX_PIN = 1;
    __delay_us(104);
}

void main() {
    // Configurar reloj, pines, etc.
    while (1) {
        UART_SendChar('H');  // Enviar carácter 'H'
        __delay_ms(1000);  // retraso 1 segundo
    }
}
Consideraciones
  • Ajusta el delay según la tasa de baudios deseada y la frecuencia del reloj.
  • El programa anterior solo cubre la transmisión. La recepción es más compleja y requeriría rutinas adicionales para detectar los bits de inicio y asegurar una lectura adecuada de los bits de datos.
  • Verifica las conexiones y condiciones de funcionamiento antes de probar para evitar daños en los componentes.
Si tienes más preguntas o necesitas ajustes específicos para tu aplicación, ¡házmelo saber!
2mo
pasa el codigo a asembler
2mo
Con mucho gusto. Aquí tienes un ejemplo de cómo implementar una transmisión RS-232 básica usando ensamblador para el PIC16F84A:

Assembly


; Configuración del PIC16F84A
    LIST P=16F84A
    INCLUDE 

    __CONFIG _CP_OFF &amp; _WDT_OFF &amp; _PWRTE_ON &amp; _XT_OSC

; Definición de variables
    CBLOCK 0x20
        delay_count
        bit_count
        char_to_send
    ENDC

; Direcciones de pines
TX_PIN   EQU 0       ; Pin RA0 como TX

; Variables del tiempo
    DELAY_VAL EQU D'26' ; aproximado para generar 104µs a 4MHz

; Programa principal
    ORG 0x00
    GOTO Start

Start
    BSF STATUS, RP0   ; Cambiar a banco 1
    MOVLW b'00000000' ; Configurar PORTA como salidas
    TRISA = 0x00
    BCF STATUS, RP0   ; Cambiar a banco 0
    CLRF PORTA

MainLoop
    MOVLW 'H' ; El carácter que queremos enviar
    MOVWF char_to_send
    CALL UART_SendChar
    
    CALL Delay_1s
    GOTO MainLoop 

; Subrutina para transmitir un carácter por software UART
UART_SendChar
    MOVF char_to_send, W
    MOVWF char_to_send
    MOVLW 8
    MOVWF bit_count

    BSF PORTA, TX_PIN  ; Linea TX alta (reposo)
    CALL Delay104us

    BCF PORTA, TX_PIN  ; Start bit
    CALL Delay104us         ; Duración del start bit

SendBitLoop
    RRF char_to_send, F   ; Cambia el bit menos significativo al carry
    BTFSC STATUS, C       ; Si el carry es 1, enviar un 1
    BSF PORTA, TX_PIN
    BTFSS STATUS, C       ; Si el carry es 0, enviar un 0
    BCF PORTA, TX_PIN

    CALL Delay104us

    DECFSZ bit_count, F   ; Decrementar el bit_count
    GOTO SendBitLoop      ; Repite hasta que bit_count sea 0

    BSF PORTA, TX_PIN ; Stop bit
    CALL Delay104us
    
    RETURN


Delay104us
    MOVLW DELAY_VAL
    MOVWF delay_count
DelayLoop
    NOP
    NOP
    DECFSZ delay_count, F
    GOTO DelayLoop
    RETURN

Delay_1s
    MOVLW D'38'    ; Ajustamos este número para lograr un retraso de aproximadamente 1 segundo
Delay1sLoop1
    MOVLW D'255'
Delay1sLoop2
    NOP
    DECFSZ WREG, F
    GOTO $-1
    NOP
    DECFSZ delay_count, F
    GOTO Delay1sLoop1
    RETURN

    END
Explicación:
  • Configuración Inicial:
    • Configuramos el registro TRISA para asegurar que el pin de transmisión (RA0 en este caso) es una salida.
  • Envío de Carácter:
    • La subrutina UART_SendChar envía el carácter almacenado en char_to_send.
    • Se envía un bit de inicio (start bit), ocho bits de datos, y un bit de parada (stop bit).
  • Delays:
    • Delay104us genera el tiempo necesario para transmitir cada bit a 9600 bps (un ciclo de bit de 104 µs con un cristal de 4 MHz).
    • Delay_1s genera un retraso de aproximadamente un segundo.
Asegúrate de ajustar los NOP y ciclos en las rutinas de retardo según la frecuencia de tu reloj, ya que esto es muy sensible. Esta implementación es una base sencilla y no maneja velocidad variable ni datos de recepción. Podrías mejorarla para un uso más robusto, dependiendo de tus necesidades.
Si tienes preguntas adicionales o necesitas más ayuda, estaré encantado de proporcionarla.
2mo
Someone is typing...
Checks that the power traveling across a given resistor is under its rating with 50% headroom.
Learn more
Checks that IC pins that require pull up or pull down resistors have them.
Learn more
Checks that capacitors have appropriate voltage ratings to prevent overheating and ensure reliable circuit operation.
Checks that all parts have a part number and are available from distributors.
Reports copper elements that are shorting.
Reports parts that have no footprint.
Reports nodes that are assigned to a layer that doesn't exist in the layout stackup.
Reports terminals that are not connected properly. NOTE: Only connections to the center of pads are considered valid.
Reports nodes that are using rules that are not supported anymore.
Reports layers that have multiple copper fills of different nets. Make sure the Connected Layers rule value of nets with fills is valid.
Detect any via, trace or copper fill island that is not connected to any net.