Saturday, June 6, 2015

Text Books for Embedded Systems


Embedded System Related Books: 

1). Embedded/Real Time system Black Book



2).The 8051 MicroController and Embedded Systems by Mazidi and Mazidi




 3). for videos lectures



4). Read the Electronics For You monthly magazine


VLSI Reference Books :

1). VHDL Programming by Douglas L.Prerry



2). MicroElectronics by J.Milliman and Grabel



3). Analog CMOS integrated circuits by Razavi


4). Modern VLSI design by wayne wolf



5). CMOS VLSI design by weste harris



  

Engineering Simulation Tools

Simulation Tool links

1). Keil software used to compile embedded-C code (for atmel 8051 family )
   feel free to implement the form,  

    click the below link to know how to use keil software  

2). ModelSim Tool used to simulate the VHDL programs   

    click here to see the modelsim video tutorial   
3). Atmel studo 6 tool to compile more atmel family controllers(ATmega series etc., ) 

    click here to see the atmel studio 6 video tutorial   
4).  Microchips MPLAB IDE tool to simulate the PIC controllers etc.,   

   click here to see the video tutorial   

5). Quartus II tool to simulate the Altera FPGAs   

      click here to see the video tutorial   

6).  Xilinx ISE Design Suit 13.4 to simulate Xilinx FPGAs   

    click here to see the video tutorial   

7). Proteus total circuit simulator for controller based circuits
      Proteus 7.4 here

     click here to see the video tutorial   
    

Engineering Project Documentations

Engineering Project Documentation

                     
               
    1. Smart Energy Meter:   here
    
    2. Human Detection Robot using AT89c51  here

    3. Remote controlled home Appliances  here

    4. Staff Attendance using RFID card  here

    5. Coal mine Detection Robot  here

    6. SMS based Notice board  here

    7. Robotic Arm control using PC  here

    8. Home Automation using GSM  here

    9. GSM controlled Robot  here

   10. Omni-directional Robot  here

   11. Metro Train indicator  here

   12. FPGA based LCD display  here

   13. Zigbee based Secure Data communication  here

   14. Clap Switch  here   

Core Companies And their Exams

Core Companies

Govt. Sector:-

 1).  DRDO (Defence Research & Development Organization 
        for  recruitment notice visit
      DRDO conducts DRDO-SET every year on 1st sunday of Sept. for the post of Scientist-'B'

 2).  ISRO( Indian Space Research Organization)
       
  2006 Paper
  2007 Paper
  2008 Paper
  2009 Paper
  2010 Paper
  2011 Paper
  2012 Paper
  Syllabus

 3).  BEL (Bharat Electronics Limited)    

 4).  BHEL ( Bharat Heavly Electrical Ltd.) 

 5).  NTPC (National Thermal Power Corporation Ltd) 
   
 6).  HPCL (Hindustan Petroleum Corporation Ltd.) 

 7).  NALCO (NATIONAL ALUMINIUM COMPANY LIMITED)    

 8).  IOCL (Indian Oil Corporation Ltd)  

 9).  IES (Indian Engineering Services ) 

10). BARC (Bhabha Atomic Research Centre ) 

11). IGCAR (Indira Gandhi Centre for Atomic Research )

12). Indian Air Force- Tech jobs 

13). CDAC-Technical (Centre for Development of Advanced Computing) 
    It includes both software and electronics.

14). Vizag Steel Plant 

15). SAIL(Steel Authority of India) 

16). DVC (Damodar Valley Corporation)  

17). ECIL (Electronics Corporation of India Ltd) 

18). BSNL-JTO (Junior Telecom Officer in BSNL) 

19). HAL(Hindustan Aeronautical Ltd) 

20). HPCL(Hindustan Petroleum Corporation Limited)  


 and many....

Private Sector:-

1).   TI (Texas Instruments)

2).   Microchip

3).   freescale semiconductors

4).   Intel 

5).    AMD (Advanced Micro Devices )

6).    Atmel Corporation

7).   Xilinx 

8).   Altera 

9).   Actel

10). QualComm (Quality Communicatons)

11). Infotech-Enterprises Ltd

12). cadence 

13). Solar Semiconductors 

14). Andhra Electronics Ltd

15). CEL (Central Electronics Ltd) public sector undertaking

16). Cosmic Circuits

17). NI (National Instrumentation)

18). Motorola Solutions 

19). LG (Life's Good)

20). Samsung India
   
21). Sony Electronics

22). Philips
 
23). Cisco

24). Jindal Steel Power Ltd.

25). NXP semiconductors 
 

and more...

Matlab Programmes

MATLAB


1)Sine Wave to Square Wave conversion using MATLAB
%60Hz sine wave to 20Hz square wave conversion
clear all;
close all;
clc;
fm=input('enter msg frequency fm=');
fr=input('enter mult frequency fr=');
fs=2000;
t=0:1/fs:0.2;
x=5*sin(2*pi*fm*t);
f=(fm-fr);
y=5*sin(2*pi*t*f);
for i=1:401
if(y(i)>=0)
    s(i)=+5
else
    s(i)=-5
end
end

subplot(311);
plot(x,'-','linewidth',1);

title('60Hz sine wave','fontsize',12);
xlabel('--->time in 0.5ms');
ylabel('--->Volts');
subplot(312);
plot(y,'g','linewidth',1.5);

title('20Hz sine wave','fontsize',12);
xlabel('--->time in 0.5ms');
ylabel('--->Volts');
subplot(313);
plot(s,'r','linewidth',1.5);

title('20Hz square wave','fontsize',12);
xlabel('--->time in 0.5ms');
ylabel('--->Volts'); 




RESULT:
                                                                                                                                                   -

2).Amplitude Modulation using MATLAB 
%Analog modulation
%fm=100;Am=5;
%fc=1000;Ac=5; 
clear all;
close all;
clc;
fm=input('enter msg signal frequency fm=');
Am=input('enter msg signal amplitude Am=');
fc=input('enter carrier signal frequency fc=');
Ac=input('enter carrier signal amplitude Ac=');
fs=100000;
t=0:1/fs:0.1;
m=Am*cos(2*pi*fm*t);
c=Ac*cos(2*pi*fc*t);
subplot(311);
plot(m);
title('input msg signal','fontsize',14);
xlabel('--->time in 10us','fontsize',11);
ylabel('--->Amplitude in Volts','fontsize',11);
subplot(312);
plot(c,'r');
title('input carrier signal','fontsize',14);
xlabel('--->time in 10us','fontsize',11);
ylabel('--->Amplitude in Volts','fontsize',11);
u=Am*0.1;
y=Ac*cos(2*pi*fc*t) + ((u*Ac)/2)*((cos(2*pi*(fc+fm)*t)) + (cos(2*pi*(fc-fm)*t)));
subplot(313);
plot(y);
title('Output AM signal','fontsize',14);
xlabel('--->time in 10us','fontsize',11);
ylabel('--->Amplitude in Volts','fontsize',11);


OUTPUT:
                                                                                                                                              -

3). Frequency Modulation  using MATLAB 
%Frequency modulation
%fm=100;Am=5;
%fc=3000; Ac=5;

clear all;
close all;
clc;
fm=input('enter msg signal frequency fm=');
Am=input('enter msg signal amplitude Am=');
fc=input('enter carrier signal frequency fc=');
Ac=input('enter carrier signal amplitude Ac=');
fs=100000;
t=0:1/fs:0.05;
m=Am*cos(2*pi*fm*t);
c=Ac*cos(2*pi*fc*t);
subplot(311);
plot(m);
title('input msg signal','fontsize',14);
xlabel('--->time in 10us','fontsize',11);
ylabel('--->Amplitude in Volts','fontsize',11);
subplot(312);
plot(c,'r');
title('input carrier signal','fontsize',14);
xlabel('--->time in 10us','fontsize',11);
ylabel('--->Amplitude in Volts','fontsize',11);
B=(500*Am)/fm; % kf=500 < fc 
s=Ac*cos(2*pi*fc*t + (B*sin(2*pi*fm*t)));
subplot(313);
plot(s);

title('output FM signal','fontsize',14);
xlabel('--->time in 10us','fontsize',11);
ylabel('--->Amplitude in Volts','fontsize',11);


OUTPUT: 
                                                                                                                                            -
4). Moving Average Filter using MATLAB
%moving average filter
clear all;
close all;
clc;
fs=500000;
fm=10000;
t=1:200;
x=5*cos(2*pi*(fm/fs)*t);
z=awgn(x,5); 
% adding White Gaussian noise to the input with S/N=5
plot(x,'g','linewidth',1.5);
hold on;
plot(z);
hold on;
for i=1:194;
y(i)=(z(i)+z(i+1)+z(i+2)+z(i+3)+z(i+4)+z(i+6))/6;
end
plot(y,'r','linewidth',1.5);
legend('Actual','Noisy','Filtered');
title('moving Average Filter','fontsize',12);
xlabel('---> time in 2us');
ylabel('---> volts'); 


OUTPUT: 
                                                                                                                                               -

5). ECG Filtering using MATLAB

 GoldStandard.mat 
 % fourth order bandpass filter
 % GoldStandard.mat is a preloaded database ECG signal
 % the original signal is first combined with gaussian noise
 % after noise added the signal will pass through 0.03Hz-1.1Hz bandpass
 % filter,is a 4th order filter

 clear all;
 close all;
 load('GoldStandard.mat')
 subplot(211);
 plot(signal);
 sound('GlodStandard.mat');
 title('the original ECG signal');
 necg=awgn(signal,1,'measured');
 b1=[1 0 -1];
 a1=[1 -1.9955735726528454        0.99558400680448189        ];
 bp1=0.049039538429966834       *filter(b1,a1,necg);
 b2=[1 0 -1];
 a2=[1 -1.8603604222618464        0.87003045759154718        ];
 bp2=0.049039538429966834      *filter(b2,a2,bp1);
 subplot(212);
 plot(bp2);
 title('after filter');
 figure
 subplot(211);
 plot(necg);
 title('after noise adding');
 subplot(212);
 plot(bp1);
 title('after 1st section filter');


RESULT:


                                                                                                                                        -

 6). Analog-to-Digital and Digital-to-Analog conversion using MATLAB                                            
         Here we add some Gaussian noise to the input sine wave and then will will convert that to digital signal. This digital signal sampled data will be used in Modelsim. In the modelsim we develop moving average filter using VHDL, this will filters the sampled data and writes into another file. Using the new updated sampled data we will regenerate the Analog signal.
  
                   

%ADC & DAC
clear all;
close all;
clc;
fs=500000;
 % taking sampling frequency as 500kHz
fm=10000; 
% input signal frequency 10kHz 

t=1:200;     % displaying 200 samples
x=5*cos(2*pi*(fm/fs)*t);
 %input sinusoidal signal
z=awgn(x,1);
% adding white Gaussian noise to the input signal with S/N=1
h=1:1000;
plot(t,x,'g','LineWidth',2); 
% plotting input signal
hold on;
plot(t,z,'r','linewidth',1.5); 
% plotting noisy signal
hold on;
stem(t,z);
hold on;     
Vd=-5:0.0390625:5; % step size =0.0390625, when n=8 bits
for i=1:256  
Vdelta(i)=(Vd(i)+Vd(i+1))/2; 
% Quantization levels
end

 i=0:255;
binary= dec2bin(i); 
% decimal to binary conversion
% Quantization of input signal

for i=1:200
    for j=1:256
        if(z(i)< Vd(1))
            z(i) = Vdelta(1);
        end
        if (z(i) > Vd(257))
            z(i) = Vdelta(256);
        end
        if(z(i) <= Vd(j+1) && z(i) >= Vd(j))
            z(i) = Vdelta(j);
        end
    end
end

% Encoding the Quantized data
for i=1:200
    for j=1:256
        if (z(i)==Vdelta(j))
            B_data(i,1:8) = binary(j,1:8);
        end
    end
end
% representing binary data in decimal
figure
for i=1:200
 B(i)=bin2dec(B_data(i,1:8));    
end


% First solution; writing Encoded data into ADC.txt file. The we will perfom
% Moving average filter operation in VHDL
f = fopen('ADC.txt', 'w');
for n = 1:200
    fprintf(f, '%s\n', B_data(n,1:8));
end
fclose(f);
subplot(221);
plot(x);
title('original sinwave','fontsize',12);
xlabel('--->time in 2us');
ylabel('--->amplitude in volts');
subplot(222);
plot(z);
title('noise signal','fontsize',12);
xlabel('--->time in 2us');
ylabel('--->amplitude in volts');
% After the moving avg filter the filtered data has been written to vhdl_out.txt file
f=fopen('vhdl_out.txt','r');
A = fscanf(f,'%g',[1 inf]);
fclose(f);

subplot(224)
plot(B)
title('signal with white gaussian noise','fontsize',12);
xlabel('--->time in 2us');
ylabel('--->amplitude in decimal');
%Digital to Analog conversion
for i=1:192
    for j=1:256
      if(A(i)== j )
          outpt(i)=Vdelta(j);
      end
    end
end

subplot(223);
plot(outpt);
title('filtered sine wave sinewave output','fontsize',12);
xlabel('--->time in 2us');
ylabel('--->amplitude in decimal');



RESULT:  
Output data files