Lucrarea 1, problema 1 [303025]
UNIVERSITATEA DIN ORADEA
FACULTATEA DE INGINERIE ELECTRICĂ ȘI
TEHNOLOGIA INFORMAȚIEI
PROGRAMUL DE STUDIU CALCULATOARE
FORMA DE ÎNVĂȚĂMÂNT IF
REFERAT SAPD
Student: [anonimizat]
2017
Partea Scrisă
Lucrarea 1, problema 1
#include "NIDAQ.h"
#include <stdio.h>
void main()
{
int nr_placa, canal, castig, i, status;
double tensiune;
nr_placa = 1;
castig = 1;
while(!kbhit()) {
for(i=0; i<=7; i++) {
status = AI_VRead(nr_placa, i, castig, &tensiune);
printf("Canal: %d, status: %d, tensiunea: %f \n", i, status, tensiune);
}
printf("\n\n");
delay(1000);
}
}
Lucrarea 1, problema 2
#include "NIDAQ.h"
#include <stdio.h>
void main()
{
int nr_placa, canal, i, status;
double tensiune_c1, tensiune_c2;
nr_placa = 1;
printf("\nIntroduceti tensiunea pentru canalul 1: ");
scanf("%lf", &tensiune_c1);
printf("\nIntroduceti tensiunea pentru canalul 2: ");
scanf("%lf", &tensiune_c2);
status = AO_VWrite(nr_placa, 0, tensiune_c1);
printf("\nStatus canal 0 = %d, tensiune_c1 = %f", status, tensiune_c1);
status = AO_VWrite(nr_placa, 1, tensiune_c2);
printf("\nStatus canal 1 = %d, tensiune_c2 = %f", status, tensiune_c2);
while(!kbhit()) {
}
status = AO_VWrite(nr_placa, 0, 0);
printf("\nResetare status canal 0 = %d", status);
status = AO_VWrite(nr_placa, 1, 0);
printf("\nResetare status canal 1 = %d", status);
while(!kbhit()) {
}
}
Lucrarea 1, problema 3
#include "NIDAQ.h"
#include <stdio.h>
#include <math.h>
#define N 100
void main()
{
int nr_placa, canal, i, status;
double tens[N], ampl, cc;
nr_placa = 1;
printf("\nIntroduceti amplitudinea: ");
scanf("%lf", &l);
printf("\nIntroduceti componenta continua: ");
scanf("%lf", &cc);
//Calculul valorilor de tensiune
for(i=0; i<N; i++) {
tens[i] = ampl*sin(i*2*3.14/N) + cc;
}
//Generarea formei de unda
while(!kbhit()) {
for(i=0; i<N; i++) {
status = AO_VWrite(nr_placa, 0, tens[i]);
}
}
status = AO_VWrite(nr_placa, 0, 0);
printf("\nResetare status canal 0 = %d", status);
status = AO_VWrite(nr_placa, 1, 0);
printf("\nResetare status canal 1 = %d", status);
while(!kbhit()) {
}
}
//[anonimizat]
#include "NIDAQ.h"
#include <stdio.h>
#include <math.h>
#define N 100
void main()
{
int nr_placa, canal, i, status, x;
double tens[N], ampl, cc, k, y, l;
nr_placa = 1;
printf("Alegeti forma de unda : \n");
printf("1.Sinus\n");
printf("2.Ramp up\n");
printf("3.Ramp down\n");
printf("4.Triangle\n");
printf("5.Sinx/x\n");
printf("6.Square\n");
printf("7.Log\n");
printf("8.Exp\n");
printf("9.EXIT\n");
scanf("%d", &x);
printf("\nIntroduceti amplitudinea: ");
scanf("%lf", &l);
printf("\nIntroduceti componenta continua: ");
scanf("%lf", &cc);
switch(x){
case 1:
//SIN
for(i=0; i<N; i++) {
tens[i] = ampl*sin(i*2*3.14/N) + cc;
}
break;
case 2:
//Calculul valorilor de tensiune RAMP UP
for(i=0; i<N; i++) {
tens[i] = ampl*i/N + cc;
}
break;
case 3:
//Calculul valorilor de tensiune RAMP DOWN
for(i=0; i<N; i++) {
tens[i] = ampl- ( ampl*i/N) + cc;
}
break;
case 4:
//Calculul valorilor de tensiune TRIANGLE
for(i=0; i< N/2; i++) {
tens[i] =2* ampl*i/N + cc;
}
for(i=N/2; i< N; i++) {
tens[i] =2*( ampl-( ampl*i/N)) + cc;
}
break;
case 5:
//Calculul valorilor de tensiune SINX/X
printf("\n:Dati valoare k ");
scanf("%lf", &k);
for(i=0; i<N; i++)
{
if (i!=N/2 )
{
y=i*2*k*3.14/N – k*3.14 ;
tens[i] = ampl*sin(y)/y + cc;}
else
tens[i]= ampl + cc;
}
break;
case 6:
//Calculul valorilor de tensiune RECT
printf("\n:Dati valoare factor ");
scanf("%lf", &k);
for(i=0; i<(N*k)/100; i++){
tens[i] = ampl + cc;}
for (; i<N; i++)
tens[i]= -ampl + cc;
break;
case 7:
//Log
printf("\n:Dati valoare baza logaritm ");
scanf("%lf", &k);
for(i=0; i<N; i++) {
tens[i] = ampl*log(1+i*(k-1)/N)/log(k) + cc;
}
break;
case 8:
//Calculul valorilor de tensiune
printf("\n:Dati factor baza exponent ");
scanf("%lf", &k);
for(i=0; i<N; i++) {
tens[i] = ampl *(exp(i*log(k)/N)-1) + cc;
}
break;
default: break;
}
//Generarea formei de unda
while(!kbhit()) {
for(i=0; i<N; i++) {
status = AO_VWrite(nr_placa, 0, tens[i]);
}
}
status = AO_VWrite(nr_placa, 0, 0);
printf("\nResetare status canal 0 = %d", status);
status = AO_VWrite(nr_placa, 1, 0);
printf("\nResetare status canal 1 = %d", status);
while(!kbhit()) {
}
}
Lucrarea 2, problema 1
//Generare forme de unda – regim static
#include "NIDAQ.h"
#include <stdio.h>
#include <math.h>
#define N 100
void main()
{
int nr_placa, canal, i, status, x;
double tens[N], ampl, cc, k, y, l;
nr_placa = 1;
printf("Alegeti forma de unda : \n");
printf("1.Sinus\n");
printf("2.Ramp up\n");
printf("3.Ramp down\n");
printf("4.Triangle\n");
printf("5.Sinx/x\n");
printf("6.Square\n");
printf("7.Log\n");
printf("8.Exp\n");
printf("9.EXIT\n");
scanf("%d", &x);
printf("\nIntroduceti amplitudinea: ");
scanf("%lf", &l);
printf("\nIntroduceti componenta continua: ");
scanf("%lf", &cc);
switch(x){
case 1:
//SIN
for(i=0; i<N; i++) {
tens[i] = ampl*sin(i*2*3.14/N) + cc;
}
break;
case 2:
//Calculul valorilor de tensiune RAMP UP
for(i=0; i<N; i++) {
tens[i] = ampl*i/N + cc;
}
break;
case 3:
//Calculul valorilor de tensiune RAMP DOWN
for(i=0; i<N; i++) {
tens[i] = ampl- ( ampl*i/N) + cc;
}
break;
case 4:
//Calculul valorilor de tensiune TRIANGLE
for(i=0; i< N/2; i++) {
tens[i] =2* ampl*i/N + cc;
}
for(i=N/2; i< N; i++) {
tens[i] =2*( ampl-( ampl*i/N)) + cc;
}
break;
case 5:
//Calculul valorilor de tensiune SINX/X
printf("\n:Dati valoare k ");
scanf("%lf", &k);
for(i=0; i<N; i++)
{
if (i!=N/2 )
{
y=i*2*k*3.14/N – k*3.14 ;
tens[i] = ampl*sin(y)/y + cc;}
else
tens[i]= ampl + cc;
}
break;
case 6:
//Calculul valorilor de tensiune RECT
printf("\n:Dati valoare factor ");
scanf("%lf", &k);
for(i=0; i<(N*k)/100; i++)
{
tens[i] = ampl + cc;}
for (; i<N; i++)
tens[i]= -ampl + cc;
break;
case 7:
//Log
printf("\n:Dati valoare baza logaritm ");
scanf("%lf", &k);
for(i=0; i<N; i++) {
tens[i] = ampl*log(1+i*(k-1)/N)/log(k) + cc;
}
break;
case 8:
//Calculul valorilor de tensiune
printf("\n:Dati factor baza exponent ");
scanf("%lf", &k);
for(i=0; i<N; i++) {
tens[i] = ampl *(exp(i*log(k)/N)-1) + cc;
}
break;
default: break;
}
//Generarea formei de unda
while(!kbhit()) {
for(i=0; i<N; i++) {
status = AO_VWrite(nr_placa, 0, tens[i]);
}
}
status = AO_VWrite(nr_placa, 0, 0);
printf("\nResetare status canal 0 = %d", status);
status = AO_VWrite(nr_placa, 1, 0);
printf("\nResetare status canal 1 = %d", status);
while(!kbhit()) {
}
}
Lucrarea 3, problema 1
//Generare forme de unda – regim Dinamic
#include "NIDAQ.h"
#include <stdio.h>
#include <math.h>
#define N 100
double tens[2*N],tens1[N],tens2[N], ampl1,ampl2, cc1,cc2, k, y, l, f ;
int buffer[2*N],buffer1[N],buffer2[N], canale[2];
void main()
{
int nr_placa, canal, i, status, x, r,j;
nr_placa = 1;
for(j=0;j<2;j++){
printf(" Alegeti forma de unda : \n");
printf(" 1.Sinus\n");
printf(" 2.Ramp up\n");
printf(" 3.Ramp down\n");
printf(" 4.Triangle\n");
printf(" 5.Sinx/x\n");
printf(" 6.Square\n");
printf(" 7.Log\n");
printf(" 8.Exp\n");
printf(" 9.EXIT\n");
scanf("%d", &x);
if(j==0){
printf("\nIntroduceti amplitudinea 1: ");
scanf("%lf", &l1);
printf("\nIntroduceti componenta continua 1: ");
scanf("%lf", &cc1);
switch(x){
case 1:
//SIN
for(i=0; i<N; i++) {
tens1[i] = ampl1*sin(i*2*3.14/N) + cc1;
}
break;
case 2:
//Calculul valorilor de tensiune RAMP UP
for(i=0; i<N; i++) {
tens1[i] = ampl1*i/N + cc1;
}
break;
case 3:
//Calculul valorilor de tensiune RAMP DOWN
for(i=0; i<N; i++) {
tens1[i] = ampl1- ( ampl1*i/N) + cc1;
}
break;
case 4:
//Calculul valorilor de tensiune TRIANGLE
for(i=0; i< N/2; i++) {
tens1[i] =2* ampl1*i/N + cc1;
}
for(i=N/2; i< N; i++) {
tens1[i] =2*( ampl1-( ampl1*i/N)) + cc1;
}
break;
case 5:
//Calculul valorilor de tensiune SINX/X
printf("\n:Dati valoare k ");
scanf("%lf", &k);
for(i=0; i<N; i++)
{
if (i!=N/2 )
{
y=i*2*k*3.14/N – k*3.14 ;
tens1[i] = ampl1*sin(y)/y + cc1;}
else
tens1[i]= ampl1 + cc1;
}
break;
case 6:
//Calculul valorilor de tensiune RECT
printf("\n:Dati valoare factor ");
scanf("%lf", &k);
for(i=0; i<(N*k)/100; i++)
{
tens1[i] = ampl1 + cc1;}
for (; i<N; i++)
tens1[i]= -ampl1 + cc1;
break;
case 7:
//Log
printf("\n:Dati valoare baza logaritm ");
scanf("%lf", &k);
for(i=0; i<N; i++) {
tens1[i] = ampl1*log(1+i*(k-1)/N)/log(k) + cc1;
}
break;
case 8:
//Calculul valorilor de tensiune EXP
printf("\n:Dati factor baza exponent ");
scanf("%lf", &k);
for(i=0; i<N; i++) {
tens1[i] = ampl1 *(exp(i*log(k)/N)-1) + cc1;
}
break;
default: break;
}
}
else{
printf("\nIntroduceti amplitudinea 2: ");
scanf("%lf", &l2);
printf("\nIntroduceti componenta continua 2: ");
scanf("%lf", &cc2);
switch(x){
case 1:
//SIN
for(i=0; i<N; i++) {
tens2[i] = ampl2*sin(i*2*3.14/N) + cc2;
}
break;
case 2:
//Calculul valorilor de tensiune RAMP UP
for(i=0; i<N; i++) {
tens2[i] = ampl2*i/N + cc2;
}
break;
case 3:
//Calculul valorilor de tensiune RAMP DOWN
for(i=0; i<N; i++) {
tens2[i] = ampl2- ( ampl2*i/N) + cc2;
}
break;
case 4:
//Calculul valorilor de tensiune TRIANGLE
for(i=0; i< N/2; i++) {
tens2[i] =2* ampl2*i/N + cc2;
}
for(i=N/2; i< N; i++) {
tens2[i] =2*( ampl2-( ampl2*i/N)) + cc2;
}
break;
case 5:
//Calculul valorilor de tensiune SINX/X
printf("\n:Dati valoare k ");
scanf("%lf", &k);
for(i=0; i<N; i++)
{
if (i!=N/2 )
{
y=i*2*k*3.14/N – k*3.14 ;
tens2[i] = ampl2*sin(y)/y + cc2;}
else
tens2[i]= ampl2 + cc2;
}
break;
case 6:
//Calculul valorilor de tensiune RECT
printf("\n:Dati valoare factor ");
scanf("%lf", &k);
for(i=0; i<(N*k)/100; i++)
{
tens2[i] = ampl2 + cc2;}
for (; i<N; i++)
tens2[i]= -ampl2 + cc2;
break;
case 7:
//Log
printf("\n:Dati valoare baza logaritm ");
scanf("%lf", &k);
for(i=0; i<N; i++) {
tens2[i] = ampl2*log(1+i*(k-1)/N)/log(k) + cc2;
}
break;
case 8:
//Calculul valorilor de tensiune EXP
printf("\n:Dati factor baza exponent ");
scanf("%lf", &k);
for(i=0; i<N; i++) {
tens2[i] = ampl2 *(exp(i*log(k)/N)-1) + cc2;
}
break;
default: break;
}
}
}
printf("\n:Dati frecventa ");
scanf("%lf", &f);
r=(int)(N*f);
canale[0]=0;
canale[1]=1;
//Generarea formei de unda
status=WFM_Scale(1, 0, N, 1, tens1, buffer1);
status=WFM_Scale(1, 1, N, 1, tens2, buffer2);
// status= WFM_Op(1, 1, canale, buffer, N, (long)(10*f), r);
for(i=0;i<N;i++)
{
buffer[2*i]=buffer1[i];
buffer[2*i+1]=buffer2[i];
}
status= WFM_Op(1, 2, canale, buffer, 2*N, 0, r);
while(!kbhit()) {
}
status= WFM_Group_Control(1,1,0);
status = AO_VWrite(nr_placa, 0, 0);
printf("\nResetare status canal 0 = %d", status);
status = AO_VWrite(nr_placa, 1, 0);
printf("\nResetare status canal 1 = %d", status);
while(!kbhit()) {
}
}
Lucrarea 3, problema 2
//Generare forme de unda – regim Dinamic
#include "NIDAQ.h"
#include <stdio.h>
#include <math.h>
#define N 100
double tens[2*N],tens1[N],tens2[N], ampl1,ampl2, cc1,cc2, k, y, l, f ;
int buffer[2*N],buffer1[N],buffer2[N], canale[2];
void main()
{
int nr_placa, canal, i, status, x, r,j;
nr_placa = 1;
for(j=0;j<2;j++){
printf(" Alegeti forma de unda : \n");
printf(" 1.Sinus\n");
printf(" 2.Ramp up\n");
printf(" 3.Ramp down\n");
printf(" 4.Triangle\n");
printf(" 5.Sinx/x\n");
printf(" 6.Square\n");
printf(" 7.Log\n");
printf(" 8.Exp\n");
printf(" 9.EXIT\n");
scanf("%d", &x);
if(j==0){
printf("\nIntroduceti amplitudinea 1: ");
scanf("%lf", &l1);
printf("\nIntroduceti componenta continua 1: ");
scanf("%lf", &cc1);
switch(x){
case 1:
//SIN
for(i=0; i<N; i++) {
tens1[i] = ampl1*sin(i*2*3.14/N) + cc1;
}
break;
case 2:
//Calculul valorilor de tensiune RAMP UP
for(i=0; i<N; i++) {
tens1[i] = ampl1*i/N + cc1;
}
break;
case 3:
//Calculul valorilor de tensiune RAMP DOWN
for(i=0; i<N; i++) {
tens1[i] = ampl1- ( ampl1*i/N) + cc1;
}
break;
case 4:
//Calculul valorilor de tensiune TRIANGLE
for(i=0; i< N/2; i++) {
tens1[i] =2* ampl1*i/N + cc1;
}
for(i=N/2; i< N; i++) {
tens1[i] =2*( ampl1-( ampl1*i/N)) + cc1;
}
break;
case 5:
//Calculul valorilor de tensiune SINX/X
printf("\n:Dati valoare k ");
scanf("%lf", &k);
for(i=0; i<N; i++)
{
if (i!=N/2 )
{
y=i*2*k*3.14/N – k*3.14 ;
tens1[i] = ampl1*sin(y)/y + cc1;}
else
tens1[i]= ampl1 + cc1;
}
break;
case 6:
//Calculul valorilor de tensiune RECT
printf("\n:Dati valoare factor ");
scanf("%lf", &k);
for(i=0; i<(N*k)/100; i++)
{
tens1[i] = ampl1 + cc1;}
for (; i<N; i++)
tens1[i]= -ampl1 + cc1;
break;
case 7:
//Log
printf("\n:Dati valoare baza logaritm ");
scanf("%lf", &k);
for(i=0; i<N; i++) {
tens1[i] = ampl1*log(1+i*(k-1)/N)/log(k) + cc1;
}
break;
case 8:
//Calculul valorilor de tensiune EXP
printf("\n:Dati factor baza exponent ");
scanf("%lf", &k);
for(i=0; i<N; i++) {
tens1[i] = ampl1 *(exp(i*log(k)/N)-1) + cc1;
}
break;
default: break;
}
}
else{
printf("\nIntroduceti amplitudinea 2: ");
scanf("%lf", &l2);
printf("\nIntroduceti componenta continua 2: ");
scanf("%lf", &cc2);
switch(x){
case 1:
//SIN
for(i=0; i<N; i++) {
tens2[i] = ampl2*sin(i*2*3.14/N) + cc2;
}
break;
case 2:
//Calculul valorilor de tensiune RAMP UP
for(i=0; i<N; i++) {
tens2[i] = ampl2*i/N + cc2;
}
break;
case 3:
//Calculul valorilor de tensiune RAMP DOWN
for(i=0; i<N; i++) {
tens2[i] = ampl2- ( ampl2*i/N) + cc2;
}
break;
case 4:
//Calculul valorilor de tensiune TRIANGLE
for(i=0; i< N/2; i++) {
tens2[i] =2* ampl2*i/N + cc2;
}
for(i=N/2; i< N; i++) {
tens2[i] =2*( ampl2-( ampl2*i/N)) + cc2;
}
break;
case 5:
//Calculul valorilor de tensiune SINX/X
printf("\n:Dati valoare k ");
scanf("%lf", &k);
for(i=0; i<N; i++)
{
if (i!=N/2 )
{
y=i*2*k*3.14/N – k*3.14 ;
tens2[i] = ampl2*sin(y)/y + cc2;}
else
tens2[i]= ampl2 + cc2;
}
break;
case 6:
//Calculul valorilor de tensiune RECT
printf("\n:Dati valoare factor ");
scanf("%lf", &k);
for(i=0; i<(N*k)/100; i++)
{
tens2[i] = ampl2 + cc2;}
for (; i<N; i++)
tens2[i]= -ampl2 + cc2;
break;
case 7:
//Log
printf("\n:Dati valoare baza logaritm ");
scanf("%lf", &k);
for(i=0; i<N; i++) {
tens2[i] = ampl2*log(1+i*(k-1)/N)/log(k) + cc2;
}
break;
case 8:
//Calculul valorilor de tensiune EXP
printf("\n:Dati factor baza exponent ");
scanf("%lf", &k);
for(i=0; i<N; i++) {
tens2[i] = ampl2 *(exp(i*log(k)/N)-1) + cc2;
}
break;
default: break;
}
}
}
printf("\n:Dati frecventa ");
scanf("%lf", &f);
r=(int)(N*f);
canale[0]=0;
canale[1]=1;
//Generarea formei de unda
status=WFM_Scale(1, 0, N, 1, tens1, buffer1);
status=WFM_Scale(1, 1, N, 1, tens2, buffer2);
// status= WFM_Op(1, 1, canale, buffer, N, (long)(10*f), r);
for(i=0;i<N;i++)
{
buffer[2*i]=buffer1[i];
buffer[2*i+1]=buffer2[i];
}
status= WFM_Op(1, 2, canale, buffer, 2*N, 0, r);
while(!kbhit()) {
}
status= WFM_Group_Control(1,1,0);
status = AO_VWrite(nr_placa, 0, 0);
printf("\nResetare status canal 0 = %d", status);
status = AO_VWrite(nr_placa, 1, 0);
printf("\nResetare status canal 1 = %d", status);
while(!kbhit()) {
}
}
Lucrarea 4, problema 1
//Generare forme de unda – regim Dinamic
#include "NIDAQ.h"
#include <stdio.h>
#include <math.h>
#define N 30
void main()
{
int nr_placa, canal, i, status, x, r;
double tens[N], ampl, cc, k, y, l, f,f0,p ;
int buffer[N], canale[2];
nr_placa = 1;
printf(" Alegeti forma de unda : \n");
printf(" 1.Sinus\n");
printf(" 2.Ramp up\n");
printf(" 3.Ramp down\n");
printf(" 4.Triangle\n");
printf(" 5.Sinx/x\n");
printf(" 6.Square\n");
printf(" 7.Log\n");
printf(" 8.Exp\n");
printf(" 9.EXIT\n");
scanf("%d", &x);
printf("\nIntroduceti amplitudinea: ");
scanf("%lf", &l);
printf("\nIntroduceti componenta continua: ");
scanf("%lf", &cc);
switch(x){
case 1:
//SIN
for(i=0; i<N; i++) {
tens[i] = ampl*sin(i*2*3.14/N) + cc;
}
break;
case 2:
//Calculul valorilor de tensiune RAMP UP
for(i=0; i<N; i++) {
tens[i] = ampl*i/N + cc;
}
break;
case 3:
//Calculul valorilor de tensiune RAMP DOWN
for(i=0; i<N; i++) {
tens[i] = ampl- ( ampl*i/N) + cc;
}
break;
case 4:
//Calculul valorilor de tensiune TRIANGLE
for(i=0; i< N/2; i++) {
tens[i] =2* ampl*i/N + cc;
}
for(i=N/2; i< N; i++) {
tens[i] =2*( ampl-( ampl*i/N)) + cc;
}
break;
case 5:
//Calculul valorilor de tensiune SINX/X
printf("\n:Dati valoare k ");
scanf("%lf", &k);
for(i=0; i<N; i++)
{
if (i!=N/2 )
{
y=i*2*k*3.14/N – k*3.14 ;
tens[i] = ampl*sin(y)/y + cc;}
else
tens[i]= ampl + cc;
}
break;
case 6:
//Calculul valorilor de tensiune RECT
printf("\n:Dati valoare factor ");
scanf("%lf", &k);
for(i=0; i<(N*k)/100; i++)
{
tens[i] = ampl + cc;}
for (; i<N; i++)
tens[i]= -ampl + cc;
break;
case 7:
//Log
printf("\n:Dati valoare baza logaritm ");
scanf("%lf", &k)
for(i=0; i<N; i++) {
tens[i] = ampl*log(1+i*(k-1)/N)/log(k) + cc;
}
break;
case 8:
//Calculul valorilor de tensiune EXP
printf("\n:Dati factor baza exponent ");
scanf("%lf", &k);
for(i=0; i<N; i++) {
tens[i] = ampl*(exp(i*log(k)/N)-1)+cc;
}
break;
default: break;
}
printf("\n:Dati frecventa de baza ");
scanf("%lf", &f0);
for(i=0;i<=12;i++)
{
p=(long)i;
f=f0*exp(p/12*log(2));
r=(int)(N*f);
canale[0]=0;
canale[1]=1;
//Generarea formei de unda
status=WFM_Scale(1, 0, N, 1, tens, buffer);
// status= WFM_Op(1, 1, canale, buffer, N, (long)(10*f), r);
status= WFM_Op(1, 1, canale, buffer, N, (long)(0.5*f), r);
/*while(!kbhit()) {
}
status= WFM_Group_Control(1,1,0);
*/
}
status = AO_VWrite(nr_placa, 0, 0);
printf("\nResetare status canal 0 = %d", status);
status = AO_VWrite(nr_placa, 1, 0);
printf("\nResetare status canal 1 = %d", status);
while(!kbhit())
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: Lucrarea 1, problema 1 [303025] (ID: 303025)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
