d2e6997aba606bad66ccd82ea0b4242aea270079
Board-dat/DPR/DPR1098-dat/DPR1098-dat.md
| ... | ... | @@ -8,12 +8,18 @@ |
| 8 | 8 | |
| 9 | 9 | ### Board Map, Dimension, Pins, chip info, etc. |
| 10 | 10 | |
| 11 | - |
|
| 11 | +- [[DPR1097-dat]] |
|
| 12 | 12 | |
| 13 | 13 | ## Applications, category, tags, etc. |
| 14 | 14 | |
| 15 | + |
|
| 16 | + |
|
| 15 | 17 | ## Demo Code and Video |
| 16 | 18 | |
| 19 | + |
|
| 20 | + |
|
| 21 | + |
|
| 22 | + |
|
| 17 | 23 | ## ref |
| 18 | 24 | |
| 19 | 25 | - [[DPR1098]] - [[DPR1097-dat]] |
Chip-dat/Maxim-dat/2025-11-23-18-27-33.png
| ... | ... | Binary files /dev/null and b/Chip-dat/Maxim-dat/2025-11-23-18-27-33.png differ |
Chip-dat/Maxim-dat/MAX3490-dat.md
| ... | ... | @@ -22,4 +22,12 @@ If your system uses a **3.3V power supply**, the **MAX3490** is the appropriate |
| 22 | 22 | For 3.3V systems, use the **MAX3490**: |
| 23 | 23 | - Fully compatible with 3.3V logic levels |
| 24 | 24 | - Drop-in solution for RS-485/RS-422 communication |
| 25 | -- Low-power and ESD-protected |
|
| ... | ... | \ No newline at end of file |
| 0 | +- Low-power and ESD-protected |
|
| 1 | + |
|
| 2 | + |
|
| 3 | + |
|
| 4 | + |
|
| 5 | +## ref |
|
| 6 | + |
|
| 7 | +- [[MAX490-dat]] - [[maxim-dat]] - [[analog-device-dat]] |
|
| 8 | + |
Chip-dat/Maxim-dat/MAX490-dat/MAX490-dat.md
| ... | ... | @@ -10,3 +10,4 @@ |
| 10 | 10 | ## Receiver Input Voltage Range |
| 11 | 11 | - **Common-mode voltage range:** -7V to +12V |
| 12 | 12 | |
| 13 | +- [[RS422-dat]] |
|
| ... | ... | \ No newline at end of file |
Circuits-dat/circuits-dat.md
| ... | ... | @@ -14,6 +14,8 @@ |
| 14 | 14 | |
| 15 | 15 | - [[mosfet-dat]] - [[logic-gate-dat]] |
| 16 | 16 | |
| 17 | +- [[open-drain-open-collector-dat]] - [[push-pull-driver]] |
|
| 18 | + |
|
| 17 | 19 | |
| 18 | 20 | - [[auto-serial-dat]] |
| 19 | 21 |
Circuits-dat/open-drain-open-collector-dat.md
| ... | ... | @@ -0,0 +1,76 @@ |
| 1 | + |
|
| 2 | +# open-drain-open-collector-dat |
|
| 3 | + |
|
| 4 | +# Open-Drain vs Open-Collector |
|
| 5 | + |
|
| 6 | +Both are output types that **can pull LOW but cannot drive HIGH**. |
|
| 7 | +A pull-up resistor is required to generate the HIGH level. |
|
| 8 | + |
|
| 9 | +--- |
|
| 10 | + |
|
| 11 | +# 1️⃣ Open-Collector (OC) |
|
| 12 | + |
|
| 13 | +- Uses an **NPN bipolar transistor** |
|
| 14 | +- Can **pull output LOW** |
|
| 15 | +- Cannot **drive output HIGH** → needs external pull-up resistor |
|
| 16 | + |
|
| 17 | +## How it works |
|
| 18 | +- Transistor ON → output pulled to GND → **LOW** |
|
| 19 | +- Transistor OFF → output floats → pull-up resistor → **HIGH** |
|
| 20 | + |
|
| 21 | +## Common uses |
|
| 22 | +- I²C |
|
| 23 | +- Interrupt lines |
|
| 24 | +- Wired-OR / wired-AND logic |
|
| 25 | +- Level shifting (pull-up to different voltage) |
|
| 26 | + |
|
| 27 | +--- |
|
| 28 | + |
|
| 29 | +# 2️⃣ Open-Drain (OD) |
|
| 30 | + |
|
| 31 | +- Same behavior as open-collector |
|
| 32 | +- Uses an **NMOS FET** instead of an NPN transistor |
|
| 33 | + |
|
| 34 | +## How it works |
|
| 35 | +- FET ON → output pulled LOW |
|
| 36 | +- FET OFF → pull-up resistor → HIGH |
|
| 37 | + |
|
| 38 | +## Common uses |
|
| 39 | +- Modern low-voltage ICs |
|
| 40 | +- I²C bus |
|
| 41 | +- Shared interrupt lines |
|
| 42 | + |
|
| 43 | +--- |
|
| 44 | + |
|
| 45 | +# 3️⃣ Why use open-drain / open-collector? |
|
| 46 | + |
|
| 47 | +Because multiple devices can safely share one wire: |
|
| 48 | + |
|
| 49 | +- Any device can pull the line LOW |
|
| 50 | +- No device ever drives HIGH → **no short-circuit conflict** |
|
| 51 | + |
|
| 52 | +This enables **wired-AND / wired-OR logic**. |
|
| 53 | + |
|
| 54 | +--- |
|
| 55 | + |
|
| 56 | +# 4️⃣ Comparison Table |
|
| 57 | + |
|
| 58 | +| Feature | Open-Collector | Open-Drain | |
|
| 59 | +|--------|----------------|------------| |
|
| 60 | +| Device type | NPN transistor | NMOS FET | |
|
| 61 | +| Pulls LOW? | ✔️ Yes | ✔️ Yes | |
|
| 62 | +| Drives HIGH? | ❌ No | ❌ No | |
|
| 63 | +| Needs pull-up resistor? | ✔️ Yes | ✔️ Yes | |
|
| 64 | +| Common in | Older TTL/CMOS | Modern ICs | |
|
| 65 | +| Functional behavior | Same | Same | |
|
| 66 | + |
|
| 67 | +--- |
|
| 68 | + |
|
| 69 | +# 5️⃣ Key Point |
|
| 70 | + |
|
| 71 | +**Open-drain and open-collector behave the same.** |
|
| 72 | +The name only depends on the type of transistor used. |
|
| 73 | + |
|
| 74 | +## ref |
|
| 75 | + |
|
| 76 | +- [[circuits-dat]] |
|
| ... | ... | \ No newline at end of file |
Circuits-dat/push-pull-driver-dat.md
| ... | ... | @@ -0,0 +1,60 @@ |
| 1 | + |
|
| 2 | +# push-pull-driver-dat.md |
|
| 3 | + |
|
| 4 | +```markdown |
|
| 5 | +# Push-Pull Driver (Totem-Pole Output) |
|
| 6 | + |
|
| 7 | +A **push-pull driver** is an output stage that uses **two active transistors**: |
|
| 8 | + |
|
| 9 | +- One transistor **pushes** the output HIGH |
|
| 10 | +- Another transistor **pulls** the output LOW |
|
| 11 | + |
|
| 12 | +The output is actively driven in **both directions**. |
|
| 13 | + |
|
| 14 | +--- |
|
| 15 | + |
|
| 16 | +# How Push-Pull Works |
|
| 17 | + |
|
| 18 | +- **HIGH output:** |
|
| 19 | + The upper transistor turns ON → output driven to Vcc |
|
| 20 | +- **LOW output:** |
|
| 21 | + The lower transistor turns ON → output driven to GND |
|
| 22 | +- Never both ON at the same time (to avoid shoot-through) |
|
| 23 | + |
|
| 24 | +This is also called a **totem-pole output**. |
|
| 25 | + |
|
| 26 | +--- |
|
| 27 | + |
|
| 28 | +# Characteristics |
|
| 29 | + |
|
| 30 | +| Feature | Push-Pull Driver | |
|
| 31 | +|--------|-------------------| |
|
| 32 | +| Drives HIGH? | ✔️ Yes (actively) | |
|
| 33 | +| Drives LOW? | ✔️ Yes (actively) | |
|
| 34 | +| Needs pull-up resistor? | ❌ No | |
|
| 35 | +| Speed | Very fast edges | |
|
| 36 | +| Output impedance | Low | |
|
| 37 | +| Can multiple outputs connect together? | ❌ No (will short-circuit) | |
|
| 38 | + |
|
| 39 | +--- |
|
| 40 | + |
|
| 41 | +# Advantages |
|
| 42 | + |
|
| 43 | +- Fast transitions |
|
| 44 | +- Strong driving capability |
|
| 45 | +- No external pull-up needed |
|
| 46 | +- Precise logic levels |
|
| 47 | + |
|
| 48 | +--- |
|
| 49 | + |
|
| 50 | +# Disadvantages |
|
| 51 | + |
|
| 52 | +- **Cannot be wired together** with another push-pull output |
|
| 53 | +- If two devices drive the same line at different levels → **short circuit** |
|
| 54 | + |
|
| 55 | +A **push-pull driver** is an output that actively drives both HIGH and LOW, unlike open-drain/open-collector which only pull LOW and rely on a pull-up resistor for HIGH. |
|
| 56 | + |
|
| 57 | + |
|
| 58 | +## ref |
|
| 59 | + |
|
| 60 | +- [[circuits-dat]] |
|
| ... | ... | \ No newline at end of file |
Tech-dat/Interface-dat/RS422-dat/RS422-dat.md
| ... | ... | @@ -37,6 +37,67 @@ this probably wrong or not P2P type |
| 37 | 37 | |
| 38 | 38 | |
| 39 | 39 | |
| 40 | +## push pull resistor for fail-safe biasing |
|
| 41 | + |
|
| 42 | +**Only needed** if the bus can become *idle* (tri-state) and needs *fail-safe biasing*. |
|
| 43 | + |
|
| 44 | +--- |
|
| 45 | + |
|
| 46 | +# 1. Point-to-Point RS-422 |
|
| 47 | +**No pull-ups needed.** |
|
| 48 | + |
|
| 49 | +- MAX490 outputs are **push-pull** (active drivers) |
|
| 50 | +- They actively drive both HIGH and LOW |
|
| 51 | +- A/B will not float |
|
| 52 | + |
|
| 53 | +--- |
|
| 54 | + |
|
| 55 | +# 2. RS-485-Style Multi-Drop Bus (Tri-state Idle) |
|
| 56 | +If your system has: |
|
| 57 | + |
|
| 58 | +- multiple receivers |
|
| 59 | +- drivers that may **disable** (tri-state) |
|
| 60 | +- moments where *no one is driving the line* |
|
| 61 | + |
|
| 62 | +→ Then you **must add bias resistors**. |
|
| 63 | + |
|
| 64 | +### Typical fail-safe bias network: |
|
| 65 | +- **A → Pull-up 680–1kΩ** |
|
| 66 | +- **B → Pull-down 680–1kΩ** |
|
| 67 | +- **120Ω termination across A–B** |
|
| 68 | + |
|
| 69 | +This ensures the bus stays in a known “mark” state. |
|
| 70 | + |
|
| 71 | +--- |
|
| 72 | + |
|
| 73 | +# 3. Driver Always Enabled |
|
| 74 | +**No bias resistors required.** |
|
| 75 | + |
|
| 76 | +MAX490 will drive the line at all times → never floating. |
|
| 77 | + |
|
| 78 | +--- |
|
| 79 | + |
|
| 80 | +# 4. Receiver Inputs Only |
|
| 81 | +**Usually no pull-ups needed.** |
|
| 82 | + |
|
| 83 | +- MAX490 receiver includes **internal fail-safe** |
|
| 84 | +- Output goes HIGH if inputs: |
|
| 85 | + - are open, |
|
| 86 | + - shorted, |
|
| 87 | + - or idle. |
|
| 88 | + |
|
| 89 | +--- |
|
| 90 | + |
|
| 91 | +# Summary Table |
|
| 92 | + |
|
| 93 | +| Scenario | Need Pull-up/Down? | Reason | |
|
| 94 | +|---------|---------------------|--------| |
|
| 95 | +| Point-to-point RS-422 | ❌ No | Push-pull driver | |
|
| 96 | +| Multi-drop RS-485-like bus | ✔️ Yes | Bus can float when idle | |
|
| 97 | +| Driver always enabled | ❌ No | Never tri-states | |
|
| 98 | +| Receiver-only use | ❌ No | Internal fail-safe exists | |
|
| 99 | + |
|
| 100 | + |
|
| 40 | 101 | ## ref |
| 41 | 102 | |
| 42 | 103 | https://en.wikipedia.org/wiki/RS-422 |
| ... | ... | @@ -46,5 +107,6 @@ https://www.omega.com/en-us/resources/rs422-rs485-rs232 |
| 46 | 107 | |
| 47 | 108 | - [[RS422]] - [[DPR1097]] |
| 48 | 109 | |
| 110 | +- [[push-pull-driver]] - [[open-drain-open-collector-dat]] - [[circuits-dat]] |
|
| 49 | 111 | |
| 50 | 112 |