# Given data
C=.01 # in micro F
C=C*10**-6 # in F
R_A= 2 # in kohm
R_A=R_A*10**3 # in ohm
R_B= 100 # in kohm
R_B=R_B*10**3 # in ohm
T_High= 0.693*(R_A+R_B)*C # in seconds
T_Low= 0.693*R_B*C # in seconds
T=T_High+T_Low # in seconds
f=1/T # in Hz
print "Frequency of oscillations = %0.1f Hz" %f
DutyCycle= T_High/T*100 # in percent
print "Duty cycle = %0.1f %%" %DutyCycle
# Given data
C=1 # in micro F
C=C*10**-6 # in F
C1=0.01 # in micro F
C1=C1*10**-6 # in F
R_A=4.7 # in kohm
R_B=1 # in kohm
R_A=R_A*10**3 # in ohm
R_B=R_B*10**3 # in ohm
T_on= 0.693*(R_A+R_B)*C # in seconds
T_on=T_on*10**3 # in ms
print "Positive pulse width = %0.2f mili seconds" %T_on
T_off= 0.693*R_B*C # in seconds
T_off=T_off*10**3 # in ms
print "Negative pulse width = %0.3f mili seconds" %T_off
f=1.4/((R_A+2*R_B)*C) # in Hz
print "Free running Frequency = %0.f Hz" %f
DutyCycle= (R_A+R_B)/(R_A+2*R_B)*100# in percent
print "Duty cycle = %0.f %%" %DutyCycle
# Given data
C=0.01 # in micro F
C=C*10**-6 # in F
f=1 # in kHz
f=f*10**3 # in Hz
# R_A= R_B
# T_on = T_off = T/2
# Frequency is given by equation f= 1.44/((R_A+R_B)*C)
R_A= 1.44/(2*f*C) # in ohm
R_A=R_A*10**-3 # in k ohm
R_B= R_A
print "The value of required resistors =",int(round(R_A)),"k ohm (68 ohm standart value)"
# Given data
f=700 # in Hz
# R_A= R_B
# T_on = T_off = T/2
# Frequency is given by equation f= 1.44/((R_A+R_B)*C)
C=0.01 # in micro F (assumed value)
C=C*10**-6 # in F
R_A= 1.44/(2*f*C) # in ohm
R_A=R_A*10**-3 # in k ohm
R_A=int(round(R_A) )
R_B= R_A
print "The value of required resistors =",(R_A),"k ohm (100 ohm standart value)"
# Given data
f=800 # in Hz
D=60 # in percent
# Formula D= (R_A+R_B)/(R_A+2*R_B)*100 = 60
# R_A + R_B = 0.6*R_A + 1.2*R_B
# R_B= 2*R_A
C=0.01 # in micro F (assumed value)
C=C*10**-6 # in F
# Frequency is given by equation f= 1.44/((R_A+R_B)*C)
R_A= 1.44/(5*C*f) # in ohm
R_A=R_A*10**-3 # in kohm
R_B=2*R_A # in kohm
print "The value of C = %0.2f micro F" %(C*10**6)
print "The value of R_A = %0.f kohm" %R_A
print "The value of R_B = %0.f kohm" %R_B
# Given data
C=.05 # in micro F
C=C*10**-6 # in F
R= 12 # in kohm
R=R*10**3 # in ohm
V_CC= 5 # in volt
V_BE= 0.7 # in volt
V_D1= V_BE # in volt
I_C= (V_CC-V_BE)/R # in A
f_o= (3*I_C)/(V_CC*C) # in Hz
f_o=f_o*10**-3 # in kHz
print "Frequency of free running ramp generator circuit = %0.1f kHz" %f_o
# Given data
C=.1 # in micro F
C=C*10**-6 # in F
R_A= 20 # in kohm
R_A=R_A*10**3 # in ohm
PulseWidth= 1.1*R_A*C # in seconds
print "The output pulse width = %0.1f mili seconds" %(PulseWidth*10**3)
from __future__ import division
# Given data
C=.02 # in micro F
C=C*10**-6 # in F
f=2 # frequency of the outpur trigger in kHz
f=f*10**3 # in Hz
T=1/f # in seconds
# In a divide-by-5 circuit , n=5, so the pulse width, t_p= [0.2 + (n-1)]*T = [0.2 + (5-1)]*T = 4.2*T
t_p=4.2*T # in soconds
# Formula t_p = 1.1*R_A*C
R_A= t_p/(1.1*C) # in ohm
R_A=R_A*10**-3 # in kohm
print "The value of R_A = %0.2f k ohm (Standard value 100 kohm)" %R_A