Ir ao conteúdo
  • Cadastre-se

GuilhermeMart

Membro Júnior
  • Posts

    7
  • Cadastrado em

  • Última visita

Reputação

0
  1. Galera, Alguém que conhece desse tipo de programação, poderia me ajudar verificando os comandos se estão corretos? Uma duvida minha são os comandos de chamar a entrada e adicionar o valor a um char. Ta correto isso? Chamar a entrada para depois fazer a leitura da mesma... não da pra fazer a leitura direto ?
  2. Galera, Consegui fazer o programa, porém não sei se funciona. Tem algum programa que consigo testar e ir inserindo as entradas e tal? Alguém poderia me dizer se esta correto essa programação? Ela está baseada no fluxograma da postagem acima. Estou usando o CCS C compiler. #include <Flexis PLUS CCS.h> #include <stdlib.h> // Define os nomes dos pinos de saída #define Y1 PIN_B0 #define Y2 PIN_B1 #define Y3 PIN_B2 #define Y4 PIN_B3 #define Y5 PIN_B4 #define Y6 PIN_B5 #define Y7 PIN_B6 #define Y8 PIN_B7 #define Y9 PIN_E0 #define Y10 PIN_E1 #define Y11 PIN_E2 #define Y12 PIN_C0 // Define os nomes dos pinos de entrada #define IN1 PIN_D0 #define IN2 PIN_D1 #define IN3 PIN_D2 #define IN4 PIN_D3 #define IN5 PIN_D4 #define IN6 PIN_D5 #define IN7 PIN_D6 #define IN8 PIN_D7 #define IN9 PIN_A2 #define IN10 PIN_A3 #define IN11 PIN_A4 #define IN12 PIN_A5 int16 AN0; int16 AN1; int16 AN2; char TempMax[8]; char TempMin[8]; char tensão[8]; void Board_init () //função que faz as configurações do PIC { setup_adc_ports(sAN0|sAN1); //configura os pinos A0 e A1 como canais analógicos setup_adc(ADC_CLOCK_INTERNAL); } while (1) { output_high(Y4); // Liga Relé para leitura do sensor Frio do pistão delay_ms (10); set_adc_channel(0); // seleciona o canal analógico A0 delay_ms (10); AN0 = read_adc(); // Lê o canal Analogico e coloca o valor na variavel AN0 (TEMPERATURA MINIMA) delay_us(100); itoa (AN0,10,TempMim); // Transforma a variavel int16 (AN0) em uma char (TempMim) output_low (Y4); // Desliga o rele set_adc_channel(0); // seleciona o canal analógico A0 delay_ms (10); AN1 = read_adc(); // Lê o canal Analogico e coloca o valor na variavel AN1 (Temperatura Maxima) delay_us(100); itoa (AN1,10,TempMax); // Transforma a variavel int16 (AN1) em uma char (TempMax) set_adc_channel(1); // seleciona o canal analógico A1 delay_ms (10); AN3 = read_adc(); // Lê o canal Analogico e coloca o valor na variavel AN3 (Tensão gerada pelo motor) delay_us(100); itoa (AN3,10,tensão); // Transforma a variavel int16 (AN3) em uma char (tensão) while ( tensão = 0) { while (TempMax < 1500); // Se a temperatura for maior que 150°C equivalente a 1500mA - Saia do While de sinal de aquicimento. { output_high (Y1) // Liga Led solicitando aquecimento. output_high(Y4); // Liga Relé para leitura do sensor Frio do pistão set_adc_channel(0); // seleciona o canal analógico A0 delay_ms (10); AN0 = read_adc(); // Lê o canal Analogico e coloca o valor na variavel AN0 (TEMPERATURA MINIMA) delay_us(100); itoa (AN0,10,TempMim); // Transforma a variavel int16 (AN0) em uma char (TempMim) output_low (Y4); // Desliga o rele do sensor ístao frio set_adc_channel(0); // seleciona o canal analógico A0 delay_ms (10); AN1 = read_adc(); // Lê o canal Analogico e coloca o valor na variavel AN1 (Temperatura Maxima) delay_us(100); itoa (AN1,10,TempMax); // Transforma a variavel int16 (AN1) em uma char (TempMax) } output_low (Y1); // desliga Led solicitando aquecimento. output_high(Y2); // Liga rele de acionamento do motor como arranque output_high(Y3); //Liga motor de arranque delay_ms (5000); // Mantem o motor de arranque ligado por 20 segundos output_low(Y2); // Desliga rele de acionamento do motor como arranque output_low(Y3); //desliga motor de arranque delay_ms (5000); // Aguarda 5 segundos para gerar energia set_adc_channel(1); // seleciona o canal analógico A1 delay_ms (10); AN3 = read_adc(); // Lê o canal Analogico e coloca o valor na variavel AN3 (Tensão gerada pelo motor) delay_us(100); itoa (AN3,10,tensão); // Transforma a variavel int16 (AN3) em uma char (tensão) } }
  3. Esse MikroBasic é o mesmo do MicroC ? Pois o fabricante também me mandou um modelo de programa para essa placa no MicroC.
  4. Por essa logica é mais complicado para mim. Não entendo muito de eletrônica e programação..... somente o C que eu entendo um pouco....
  5. Prezados, Comprei recentemente um PLC, com microcontrolador PIC, onde o mesmo pode ser programado em diversas linguagens, uma delas e a que menos tenho dificuldade é em C. Como não sou do ramo da Mecatrônica nem Informática, estou com muita dificuldade por se tratar de portas analógicas. Estou usando o programa "CCS C - Demo", o fabricante da placa enviou esses comandos como exemplo de programação. Em anexo elaborei um fluxograma de como o programa deve comportar, mas ta osso iniciar a elaboração dos comandos. Alguém ai pode dar um help? Principalmente em declarar as entradas analógicas e atribuir a uma variável? Esse fluxograma é complicado e fazer em C ? #include <Flexis PLUS CCS.h> #include <stdlib.h> // Define os nomes dos pinos de saída #define Y1 PIN_B0 #define Y2 PIN_B1 #define Y3 PIN_B2 #define Y4 PIN_B3 #define Y5 PIN_B4 #define Y6 PIN_B5 #define Y7 PIN_B6 #define Y8 PIN_B7 #define Y9 PIN_E0 #define Y10 PIN_E1 #define Y11 PIN_E2 #define Y12 PIN_C0 // Define os nomes dos pinos de entrada #define IN1 PIN_D0 #define IN2 PIN_D1 #define IN3 PIN_D2 #define IN4 PIN_D3 #define IN5 PIN_D4 #define IN6 PIN_D5 #define IN7 PIN_D6 #define IN8 PIN_D7 #define IN9 PIN_A2 #define IN10 PIN_A3 #define IN11 PIN_A4 #define IN12 PIN_A5 int16 AN0; char ANx[8]; void Board_init () //função que faz as configurações do PIC { setup_adc_ports(sAN0|sAN1); //configura os pinos A0 e A1 como canais analógicos setup_adc(ADC_CLOCK_INTERNAL); } void YandX () //função que ativa as saídas conforme o acionamento da entrada { if (input(IN1)) output_high(Y1); else output_low (Y1); delay_us(100); if (input(IN2)) output_high(Y2); else output_low (Y2); delay_us(100); if (input(IN3)) output_high(Y3); else output_low (Y3); delay_us(100); if (input(IN4)) output_high(Y4); else output_low (Y4); delay_us(100); if (input(IN5)) output_high(Y5); else output_low (Y5); delay_us(100); if (input(IN6)) output_high(Y6); else output_low (Y6); delay_us(100); if (input(IN7)) output_high(Y7); else output_low (Y7); delay_us(100); if (input(IN8)) output_high(Y8); else output_low (Y8); delay_us(100); if (input(IN9)) output_high(Y9); else output_low (Y9); delay_us(100); if (input(IN10)) output_high(Y10); else output_low (Y10); delay_us(100); if (input(IN11)) output_high(Y11); else output_low (Y11); delay_us(100); if (input (IN12)) output_high (Y12); else output_low (Y12); delay_us(100); } void main() { Board_init (); //chama a função que faz as configurações iniciais do PIC while(TRUE) { YandX (); // chamada da função que ativa as saídas conforme o acionamento da entrada set_adc_channel(0); // seleciona o canal analógico A0 delay_ms (10); AN0 = read_adc(); // Lê o canal Analogico e coloca o valor na variavel AN0 delay_us(100); itoa (AN0,10,ANx); // Transforma a variavel int16 (AN3) em uma char (ANx) } }
  6. vou tentar no linux... Sei que na pressa de formatar, eu somente cliquei com botão direito e mandei compactar, nem se qual programa usei, sei que não foi winrrar e winzip, porque ao compactar apreceu uma telinha azul, e foi compactando... valeu a dica! vou tentar no linux...
  7. Galera, bom dia. Tinha instalado em meu PC um windows 8, pore não gostei e fui formatar para instalar o Windows 7. Pois bem, juntei todo meu backup em uma pasta e compactei, e salvei no meu celular. Apos instalar o W7, transferi o arquivo e tentei descompactar, mas não consegui. Tentei Winrar, Winip, 7zip e sempre o mesmo erro: "O arquivo esta em formado desconhecido ou danificado." Arrumei um PC com W8, e tentei extrair, achando que deveria ser algo ha ver com o windows, mas sem sucesso. Não sei com qual programa eu compactei, mas o arquivo está em ".zip". Sei que existe uma forma de descompactar arquivos danificados, que extrai mesmo assim tudo até o arquivo corrompido, tentei e tb não consegui. São 9GB de arquivo. Alguem sabe o que posso fazer? Analisem a foto abaixo:

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...