Ir ao conteúdo

MatheusLPS

Membro Pleno
  • Posts

    2.891
  • Cadastrado em

  • Última visita

Tudo que MatheusLPS postou

  1. Tentei reproduzir seu circuito aqui exatamente igual e não deu pico algum. Sem falar que seu circuito está errado. O proposto lá no início er aum capacitor em série com um resistor e depois o LED. Agora, não faz sentido nenhum eu querer ligar um simples LED direto no AC e para isso ter que gastar 10W no resistor pra isso. Imagine eu colocar 1 led em cada interruptor da minha casa. Para cada interruptor 10W. minah conta de luz no final iria lá em cima. Não tem cabimento. Imagem: Falou
  2. Não..... nem sinal de pico: PS: Favor nao montar na bancada com o resistor aterrado de 1.5k. Chutei aquilo só para simulação pois o proteus exige um resistor de pull-down quando se usa um botão. Melhor avisar antes que alguem exploda algo. auauhaah Falou
  3. Ok. Entendi mal mesmo. Mas pelo menos na simulação não há pico de corrente não. Veja o início da simulação: Falou
  4. Não colega mroberto98, você está equivocado. Não entendi porque você disse que o capacitor não terá reatância. Veja de um post do colega Faller do ano passado: Tirado daqui: http://forum.clubedohardware.com.br/showpost.php?p=5721588&postcount=7 Simulei o circuito proposto e veja como fica. Corrente em 0.020A (20mA) e ainda pode-se perceber a tensão em cima dos 2 leds. Na simulação somente 1 fica acesso de cada vez. Falou
  5. Também acho que o colega está perdido na tarefa a ser executada. Esse sensor que você monitora por acaso seria de abertura de um air-bag? Esse precisa abrir o mais rápido possível. Se não for algo do tipo, não veja necessidade de se preocupar com o tempo perdido no LCD. Afinal qual o sensor usado? Uma coisa que você deve ficar ciente é que o PIC não foi feito para realizar cálculos complexos. Dependendo das contas a serem feitas, as mesmas devem ter uma abordagem adequada. Falou
  6. você precisa do programa chamado FilterPro: http://www.ti.com/tool/filterpro
  7. No caso, o motor de passo deverá seguir a posiçao do potenciometro, certo? Veja se ajuda esse tópico: Controlando motor de passo com potenciometro Falou
  8. Sério mesmo que você pretende realizar essas contas com o PIC? Não é nem um pouco recomendado. Veja (20 mhz, 14 bit PIC): 8 bit add <1 us 8 bit multiply 9 us 8 bit divide 20 us 16 bit add 2 us 16 bit multiply 48 us 16 bit divide 65 us 32 bit add 5 us 32 bit multiply 138 us 32 bit divide 162 us float add 32 us float multiply 147 us float divide 274 us exp() 1653 us Ln() 2676 us sin() 3535 us Falou
  9. Projeto: http://www.4shared.com/rar/3eluw9GN/Projeto.html Programa para controlar servos. Veja se resolve pra você: #include <16F877.H> #device adc=8 #fuses HS, NOWDT, NOPROTECT, BROWNOUT, PUT, NOLVP #use delay(clock=20000000) #use rs232(baud=9600, xmit=PIN_C6, rcv=PIN_C7, ERRORS) #define LEFT_SERVO_PIN PIN_B0 #define RIGHT_SERVO_PIN PIN_B1 #include <servos.c> //========================================= void main() { int8 value; setup_adc_ports(ALL_ANALOG); setup_adc(ADC_CLOCK_DIV_32); set_adc_channel(1); init_servos(); while(1) { value = read_adc(); value = (int8)(value / 28.4); // Get value in 0 to 8 range // printf("value = %u ", value); if(value >= 4) // Is it 4 to 8 ? { // printf("Forward %u\n\r", value -4); set_servo(LEFT, FORWARD, value - 4); // Go forward } else // It's in 0 to 3 range. { // printf("Reverse %u\n\r", 4 - value); set_servo(LEFT, BACKWARD, 4 - value); // Go reverse } delay_ms(500); } } Falou
  10. A noite vou tentar fazer um projeto no mplab. Nao costumo usar ele. O meu código é para o CCS, o mesmo compilador que você usa. No caso, você não irá conseguir um pwm de 50Hz via hardware pois seria muito baixo. Tem que ser feito via software. Tenho um pronto. Mas você disse que seria paa contralar um esc. O que seria isso? No caso, se for igual a um servo, você precisa de pulsos entre 1ms e 2ms? Com um período total de 20mS (50hz). Falou
  11. Fiz uma abordagem diferente. Veja se a mesma será últil. No programa abaixo, ele fica monitorando o pino CCP1 o tempo todo. O TIMER1 é configurado para gerar 1 segundo. Dessa forma, sempre vejo em 1 segundo quantos pulsos chegaram no CCP1. Como você terá 4 buracos, você terá 4 vezes mais pulsos. Apenas divida por 4 a quantidade no final. /*============================================================================= Programa exemplo para contagem de pulsos no pino CCP1. Teste promo_version v1.0 by MatheusLPS (Koala) =============================================================================*/ #include <18F4550.h> //O PIC utilizado, obrigatório! #FUSES NOWDT //Sem Watch dog, evitando reset #FUSES XT //Crystal de oscilação igual a 4mhz #FUSES PUT //Tempo de início do PIC #FUSES NOPROTECT //Codigo sem proteção de leitura, software livre! #FUSES NODEBUG //No Debug mode for ICD #FUSES NOLVP //No low voltage prgming, B3(PIC16) or B5(PIC18) used for I/O #FUSES NOCPD //No EE protection #use delay(clock=4000000) // Definição do clock utilizado. Obrigatório! #include <lcd.C> //Inclusão da biblioteca de LCD. Obrigatório! int16 pulso_total; int16 pulsos; int8 aux; /*===================== Minha Interrupção: =======================*/ #int_TIMER1 //Interrupção do Timer1 void temp1s(void) //Funcão. O que deverá ser feiro a cada interrupão. { aux++; if (aux == 2) { pulso_total = pulsos; pulsos = 0; aux = 0; } set_timer1 (3036); //Preload do Timer1 } #int_ccp1 void trata_pulsos(void) { pulsos++; } /*===================== O programa Principal: =======================*/ void main() { lcd_init(); //Inicializa o LCD (obrigatório)! setup_ccp1(CCP_CAPTURE_RE); setup_timer_1 (T1_INTERNAL | T1_DIV_BY_8); //Configuração do Timer1 para clock interno = 1E6 dividido por 8 enable_interrupts(INT_CCP1); enable_interrupts(INT_TIMER1); //Habilita interrupção timer1 enable_interrupts(global); //habilita interrupcão global set_timer1 (3036); //Preload do Timer1 while(TRUE) //Loop Principal { printf(lcd_putc,"\f%lu\npulsos/segundo",pulso_total); delay_ms (500); } } Arquivo para simulação: http://www.4shared.com/rar/7Ldd_PCv/Exemplo_pulsos.html Falou
  12. Agora sim você explicou o que eu precisava. Vou bolar algo e volto depois. Falou
  13. Entendi. No caso o código funciona perfeitamenteno no 18F4550, apenas troque a primeira linha. Os pinos são compatíveis. No caso você deseja saber qual o tempo de duraçao de 4 pulsos? Ou você quer saber quando ocorreu o primeiro pulso e o último? Pois se você quiser saber o tempo que durou cada um podemos ter várias possibilidades. Ele pode ter durado 1 segudo e até várias horas. Explica essa parte direito. Falou
  14. Com o código abaixo, ele pisca o pino RB0: #include <16F877A.h> #FUSES NOWDT //No Watch Dog Timer #FUSES HS //Clock <=4Mhz #FUSES PUT //Power Up Timer #FUSES NOPROTECT //Code not protected from reading #FUSES NOBROWNOUT //No brownout reset #FUSES NOLVP //No low voltage prgming, B3(PIC16) or B5(PIC18) used for I/O #FUSES NOCPD //No EE protection #use delay(clock=8000000) #int_ccp1 void ccp1_int(void) { output_toggle (PIN_B0); } void main() { setup_ccp1(CCP_CAPTURE_RE); enable_interrupts(int_ccp1); enable_interrupts(global); while (TRUE); } Apenas coloque um sinal quadrado no PINO CCP1. Falou
  15. Nossa. Agora você me apertou. Pois eu nunca precisei trabalhar com mais de 64, então nao sei dizer. Sobre o PC ficar esperando comando do PIC seria possivel sim, mas você tem que tratar bem os hendlers ou o programa no pc pode travar ou ficar doidao. Já o PIC aceita numa boa ficar num loop infinito esperando comandos. Falou
  16. MatheusLPS

    Fita LED RGB

    Entendi sim o que você deseja. Veja bem. Na sua fita de 4 pinos não indica qual a função de cada pino. Só está escrito 12V. Nesse caso eu tentaria da seguinte forma (lembre-se de verificar se sua fonte consegue empurrar as duas fitas): Pegaria a fita de 4 pinos e identificaria qual seria o +12V, onde que a tensão "entra". Identificaria o R, G e o B. Colocaria um fio nesse +12V e levaria até o pino + da fita com 10 pinos. Eu acho que onde diz RRR, GGG e BBB seria o terminal negativo dos leds. ACHO. Teste assim: Coloco +12V no pino + da fita de 10 pinos. Aterre os outros pinos 1 a 1 para verificar se os leds acendem. Se eles acenderem, então dá certo. Os pinos R, G e B da fita de 4 pinos você emenda com os da de 10 pinos. No final todos irão ficar em paralelo. Qualquer duvida posta ai. Falou
  17. MatheusLPS

    Fita LED RGB

    Posta o anúncio, foto do produto, datasheet ou alguma coisa do tipo. No escuro fica muito difícil de ajudar. Falou
  18. Nelson, está recebendo dados seriais de outro PIC ou do PC? Tem o esquemático? Falou
  19. Magalena, veja o circuito abaixo com 4 canais PWM. você só irá precisar dos 3 de cima. O circuito que utilizei é esse: Veja que são 4 555. Os 3 de cima são para os leds e o 4º é para um FAN. O resultado você confere abaixo. Mas veja que no vídeo eu nao tinha transistores pequenos em casa. então tive que usar os grandões 2N3055 e MJ15003. Mas você pode usar o BD135 mesmo que segura 1.5A, é barato e dará pra ligar muiiiitos leds com ele. Algumas fotos de uns 2 anos atrás quando montei: Falou
  20. O que você já tem pronto? Não deseja que eu faça tudo né. O esquema dos botões é só você criar dois ifs e dentro de cada 1 incrementar ou decrementar a variável responsável pelo duty-cicle. Falou
  21. Veja que na resistência de 3 ohms, temos duas correntes, a i1 e a i2. Nesse caso, quando se trabalha com os loops, você precisa considerar a corrente do outro lado. Por isso no resistor de 3 ohms, passam "duas correntes", por isso coloquei 3i1 e -3i2 pois está no sentido contrário. Falou
  22. Resolvido, a sequencia é da esquerda para direita: Falou
  23. O único problema de usar controles do mercado é decifrar o protocolo de comunicação dos mesmos. Tem que usar um receptor e um osciloscópio para ver a forma de onda e encontrar um padrão. A vantagem de criar o controle do zero é como eu disse anteriormente, criar seu próprio protocolo. A desvantagem é realmente sair do zero. Mas nao seria tão complicado. Estou de viagem no feriadao. Quando voltar vejo algumas possibilidades. Falou
  24. Tá, posso te ajudar. Os PICs podemos programar em C usando o CCS, sendo a linguegem q tenho mais contato. Usando um PIC pequeno sai bem barato. E no caso do lado do PC, tenho experiencia com C#. Já tenho até 2 protocolos prontos q já usei. Tenho dois pares de módulos RF, alguns PICs e o gravador. Já dá para realizar alguns testes. Vi que você é da minha cidade. Fica mais fácil até para testes práticos. Só uma pergunta: Por que usar controle remoto e nao usar controles com cabo mesmo? Falou

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...

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!