thedoubleeguy
thedoubleeguy
  • 12
  • 7 139
Common Source Amplifier MOSFET (LTspice)
In this video, I use LTspice to simulate a common source amplifier. Using an NMOS MOSFET, I explain the key equations needed to understand and set up appropriate resistance values for a desired gain. This is not a small signal model demonstration, however, the equations used are directly derived from a small signal model. This is a very simple example, I use a MOSFET that has no lambda value, therefore I assume that our r_o is infinite. This greatly simplifies our calculation for what R_D needs to be. Keep this in mind as you watch the video.
00:00 CS Amplifier Intro
00:48 LTspice Setup
03:33 Determining Unknowns
04:24 Finishing the Circuit
มุมมอง: 361

วีดีโอ

Become a Malloc() Pro
มุมมอง 1.8Kวันที่ผ่านมา
#dynamicmemoryallocation #malloc In this video, I go over 3 situations where I would use malloc(), calloc(), and realloc(). I also briefly explain the importance of free(). 00:00 Dynamic Memory Allocation Intro 00:23 Explanation 01:07 malloc() 03:39 calloc() 05:28 realloc() 06:23 Recap/Conclusion
Intro to ESP32s3 (STARTER PROJECT BLINK LED)
มุมมอง 525วันที่ผ่านมา
#esp32s3 #embeddedprogramming #microcontroller In this video I quickly go over the specs of an ESP32 and show the code and circuitry behind a blinking LED project. This is meant to show the cool capabilities of the ESP32 microcontroller and spark your interest for ESP32 devices. 00:00 Settings Disclaimer 00:10 ESP32 Intro 00:59 Coding 02:12 Circuitry 02:33 Compiling and Building
Why C Pointers?
มุมมอง 1.8K21 วันที่ผ่านมา
#pointer #cprogramming In this video, I go over what a pointer is and some of their basic uses. I use real coded examples to explain not only the basics but also some of the more advanced principles behind pointers. 00:00 Intro 00:39 Basic Syntax 01:35 Pointers w/ Functions 02:38 Increment Example 03:20 Struct Example 04:02 Malloc() and Scanf() 05:09 Array Example 05:41 Outro
Euler Identity PROOF w/ Taylor Series
มุมมอง 806หลายเดือนก่อน
#math #euleridentity #taylorseries In this fully animated explanation video, I use the taylor series expansion for sin(x), cos(x), and e^x in order to prove euler's identity. I also give a very brief overview for some of its functionality in the world of engineering and math. 00:00 Introduction 00:16 Taylor Series 01:16 Maclaurin Graphs 02:24 Exponential Series 02:38 The Proof 03:34 Euler Ident...
C BASICS in 6 Minutes
มุมมอง 1.1Kหลายเดือนก่อน
In this video, I very briefly go over the basics of the C programming language. I talk about C operators, structs, loops, switch statements, pointers, functions, declaring variables, and much more. 00:00 Intro 00:17 Data Types 00:30 Declaring Variables 00:48 Header Files 01:09 Main 01:18 printf() 01:31 scanf() 01:43 C Operators 02:41 If and Else 03:06 Switch 03:37 While Loops 03:56 For Loops 04...
Active Band Pass Filter (LTspice)
มุมมอง 341หลายเดือนก่อน
In this video, I create an active band pass filter using an op amp and other discrete components. I explain the bode plot and use formulas to come up with the specific resistor and capacitor values for our desired cutoff frequencies.
Non-Inverting Op Amp (LTspice)
มุมมอง 208หลายเดือนก่อน
In this video, I use LTspice to simulate the gain of a non-inverting op amp. I design the circuit to not only power the op amp, but also give me the desired gain and peak to peak amplitude on my output pin.
Ideal Inverting OP-AMP EXPLAINED
มุมมอง 78หลายเดือนก่อน
In this video, I explain the derivation and design of an inverting op-amp circuit. I also explain the formula for gain and how a feedback resistor is used in negative configuration. This is your video if you want to understand an ideal inverting op-amp circuit.
RLC Circuit ODE EXPLAINED
มุมมอง 2692 หลายเดือนก่อน
In this video, I use manim to illustrate the solution of a second order linear non-homogeneous differential equation. Using an RLC Series circuit, I derive the ODE and then use variation of parameters to come up with the general solution of an example problem.
Line Integral (x and y)
มุมมอง 1825 หลายเดือนก่อน
In this video, we look at two curves and take the line integral with respect to x and y. We parameterize our expression with respect to one variable in order to solve the line integral.
Resistor Reduction Simple Tutorial
มุมมอง 1586 หลายเดือนก่อน
In this video, I break down the rules of reducing resistors in series and in parallel. I also use these rules to solve the resistance equivalent of two different circuits in a clear and understandable way.

ความคิดเห็น

  • @alxbudn
    @alxbudn วันที่ผ่านมา

    you dont need to cast malloc in c

  • @baracapy-q9l
    @baracapy-q9l 2 วันที่ผ่านมา

    i hope you talk about this in every single thing in c , for example : malloc function wha does it do , how it allocate , you talk about static variablies , Visualizing Static Variables are they reserved in heap or stack , why they don't popout after use like just normal variables , Because we know , first in last out so after we print them they should popout , when they popout etc... i hope you do this in future and thanks again for the informations here

    • @thedoubleeguy
      @thedoubleeguy 2 วันที่ผ่านมา

      of course, I hope that I can continue to provide detailed explanations in future videos, I believe this will help build intuition for a new generation of C programmers.

    • @baracapy-q9l
      @baracapy-q9l วันที่ผ่านมา

      @@thedoubleeguy you just made my day , infinite thanks to you man

  • @breachbase
    @breachbase 3 วันที่ผ่านมา

    This is really good. Is this 3b1b's anim library?

    • @thedoubleeguy
      @thedoubleeguy 3 วันที่ผ่านมา

      Yes it is, the library is fantastic

  • @ilhamatahi74
    @ilhamatahi74 3 วันที่ผ่านมา

    Super useful thanks buddy 😊😊

  • @ilhamatahi74
    @ilhamatahi74 4 วันที่ผ่านมา

    One of the best videos I’ve seen in a long time, and I’m an EE student, so that tells you a lot 😂❤

  • @empathy_monster
    @empathy_monster 4 วันที่ผ่านมา

    You shouldn't cast malloc, realloc, etc., to a pointer. You lose type information. MISRA C guidelines warns against this. The compiler will automatically handle the cast for you. Ex: int *a = malloc(sizeof(int));

    • @thedoubleeguy
      @thedoubleeguy 4 วันที่ผ่านมา

      You are correct, in C this is often considered redundant given the fact that a void* is automatically and safely promoted to any other pointer type without a cast. The reason I casted it in this case was to be a little more explicit to programmers who aren't as familiar with C, or programmers who will use this type of syntax in C++ (although in C++ malloc() is not that common). The coding standard at some companies vary and in some cases you may be required to use this syntax. Thank you for the feedback!

  • @Karol3242-up6ry
    @Karol3242-up6ry 5 วันที่ผ่านมา

    Frankly the best way to become malloc pro is to avoid it, and use an arena/pool + VirtualAlloc/mmap (if you need dynamic memory) instead. It's still good to understand them, but keep in mind they kinda suck...

  • @tinkertaps
    @tinkertaps 6 วันที่ผ่านมา

    Bro what software do you use make the animations

    • @thedoubleeguy
      @thedoubleeguy 6 วันที่ผ่านมา

      I use a python library called manim, I'll probably make a video tutorial on how I do some of the animations in the future.

  • @thedoubleeguy
    @thedoubleeguy 7 วันที่ผ่านมา

    The following code snippets have <stidio.h> and <stdlib.h> included Malloc() Code: int main() { int *array; int num_elements, i; int sum = 0; printf("Enter Number of Elements: "); scanf("%d", &num_elements); array = (int *)malloc(num_elements * sizeof(int)); if (array == NULL) { printf("Memory Allocation Failed"); return 1; } printf("Enter %d integers: ", num_elements); for (i = 0; i < num_elements; i++) { printf("Element %d: ", i + 1); scanf("%d", &array[i]); } for (i = 0; i < num_elements; i++) { sum += array[i]; } printf("Sum of elements: %d ", sum); free(array); return 0; } Calloc() Code: #define SIZE 3 void printBoard(int **board) { for (int i = 0; i < SIZE; i++) { for (int j = 0; j < SIZE; j++) { printf("%d ", board[i][j]); } printf(" "); } } int main() { int **board; board = (int **)calloc(SIZE, sizeof(int *)); for (int i = 0; i < SIZE; i++) { board[i] = (int *)calloc(SIZE, sizeof(int)); if (board[i] == NULL) { printf("Memory allocation failed! "); // Free previously allocated memory if failure occurs for (int j = 0; j < i; j++) { free(board[j]); } free(board); return 1; } } board[1][2] = 1; printBoard(board); } Realloc() Code: int main() { int *array = NULL; int size = 2; int count = 0; int input; array = (int *)malloc(size * sizeof(int)); if (array == NULL) { printf("Memory Allocation Failed "); return 1; } printf("Enter ints: "); for(;;) { scanf("%d", &input); if (input == -1) break; if (count == size) { size *=3; int *new_buffer = realloc(array, size * sizeof(int)); if (new_buffer == NULL) { printf("Memory Allocation Failed "); free(array); return 1; } array = new_buffer; } array[count++] = input; } printf("Entered Numbers: "); for (int i = 0; i < count; i++) { printf("%d ", array[i]); } printf(" "); free(array); return 0; }

  • @pound9799
    @pound9799 7 วันที่ผ่านมา

    This video is so underrated

  • @mbn-code
    @mbn-code 7 วันที่ผ่านมา

    Insanely good examples and very easy to understand.

  • @modellatore
    @modellatore 9 วันที่ผ่านมา

    Nice!

  • @xj77ziad
    @xj77ziad 9 วันที่ผ่านมา

    Could you please provide the source code for the last example?

    • @thedoubleeguy
      @thedoubleeguy 8 วันที่ผ่านมา

      of course, how would you like to receive it?

    • @xj77ziad
      @xj77ziad 8 วันที่ผ่านมา

      @thedoubleeguy anyway ig Even a youtube conment would be good

    • @luv8365
      @luv8365 7 วันที่ผ่านมา

      @@thedoubleeguy jus comment it

    • @thedoubleeguy
      @thedoubleeguy 7 วันที่ผ่านมา

      @@luv8365 great suggestion, all the code is commented on this video

  • @StudyYourself-ee5wn
    @StudyYourself-ee5wn 16 วันที่ผ่านมา

    Omg what a Exaplantion bro thanks for this amazing content..

  • @mccauleybacalla2228
    @mccauleybacalla2228 20 วันที่ผ่านมา

    Thank you!! any chance you can share us the code like put in the description or comment sectionn?

    • @thedoubleeguy
      @thedoubleeguy 19 วันที่ผ่านมา

      hey @mccauleybacalla2228 for this video I coded these examples on the fly and deleted them afterward, but in future videos I'll make sure to save the code so its accessible for everyone, great idea my friend.

  • @foxinrot
    @foxinrot 21 วันที่ผ่านมา

    although i knew what a pointer is i watched this. is short well made and to the point only thing i'd add is the output of the code shown rather than just explaining / reading it out.

    • @thedoubleeguy
      @thedoubleeguy 21 วันที่ผ่านมา

      Thank you for the feedback, I will implement that in future videos!

  • @anubhavmishra295
    @anubhavmishra295 22 วันที่ผ่านมา

    helped me a lot buddy, thanks a bunch!!!

  • @Rohit-48
    @Rohit-48 23 วันที่ผ่านมา

    good.

  • @gugs7779
    @gugs7779 หลายเดือนก่อน

    Very well-made and clear video!

  • @wysrthvnu
    @wysrthvnu หลายเดือนก่อน

    math can be so beautiful

  • @muesique
    @muesique หลายเดือนก่อน

    If you know some basics of C the pace is OK. Otherwise you have to stop playing. As a refresher fine!

    • @thedoubleeguy
      @thedoubleeguy หลายเดือนก่อน

      This is true, I plan to make more in depth videos on specific topics to build better comprehension. I'm glad this was a good refresher video for you though!

  • @gondola1652
    @gondola1652 หลายเดือนก่อน

    thanks very nice

  • @tagrill8179
    @tagrill8179 หลายเดือนก่อน

    Yeah in my 5th week of learning C in college. Fuck pointers XD

  • @albertohart5334
    @albertohart5334 2 หลายเดือนก่อน

    We much prefer the use of Laplace transforms…

    • @thedoubleeguy
      @thedoubleeguy 2 หลายเดือนก่อน

      That's true, depends on the situation...😅

    • @albertohart5334
      @albertohart5334 2 หลายเดือนก่อน

      @@thedoubleeguy I mean Laplace transforms are lowkey just shortcutted differential equations. Like if you didn’t have a transform table you’d just be doing differential equations anyway. But in most circuit analysis I’ve seen as a third year electrical student we prefer Laplace.

    • @thedoubleeguy
      @thedoubleeguy 2 หลายเดือนก่อน

      @@albertohart5334 You're correct, using the Laplace transform is another valid and often more common way to solve this type of problem especially in the electrical engineering field. I just decided to use variation of parameters for this specific problem in order to demonstrate the concept.

  • @RKELLEHER40
    @RKELLEHER40 5 หลายเดือนก่อน

    Howdy, Brother! What resistor should I use if I have a yellow 10mm LED Emitting Diode (1.8-2.2V) powered by two AA Batteries? I will have an on/off switch in the loop. Will 47 ohms work? i tried 100 ohm resistor but the batteries were getting hot. I'm not even sure if I asked the question properly . Thanks for any assistance.

    • @thedoubleeguy
      @thedoubleeguy 5 หลายเดือนก่อน

      Hey brother, that's a fantastic question. First, we know the LED has a voltage drop of 1.8-2.2V so we can take the average to be around 2V. Two double AA batteries in series are going to add up to a total V supply of 3V so that means we're going to have about a 1V voltage drop across the resistor. Depending on your configuration, you probably have around 20 mA of current running through your LED so the ideal resistor value is going to be R = V/I. After doing the math, a 50-100 ohm resistor should do the trick. If you have other elements like an inductor in your circuit with a switch, that could also cause some serious problems. An inductor resists change in current, so when you switch off your circuit, the inductor will provide whatever voltage it needs to maintain the same current. This could give you upwards of 100 V in your small circuit which could fry diodes and transistors. I hope this made some sense. Worse comes to worse, you can use a heftier resistor but it really depends on your configuration.

    • @RKELLEHER40
      @RKELLEHER40 5 หลายเดือนก่อน

      @@thedoubleeguy Thank you, Brother! Makes perfect sense. 🤠