-
Posts
57 -
Cadastrado em
-
Última visita
Tipo de conteúdo
Artigos
Selos
Livros
Cursos
Análises
Fórum
Tudo que GustavoS. postou
-
@MOR Poxa, realmente tem algo de estranho aí... Da maneira que faço (a citada pelo site) a camada de tinta não leva nem 40 minutos pra secar, juro. Lembro que a emulsão e sensibilizante que usavam eram ambos da Colordex, não sei se você já testou essa marca... Mas pode deixar, quando eu voltar fazer placas (e se tiver a mesma sorte do processo dar certo uehuehe) posto aqui um vídeo mostrando o processo. Abraço ! Gustavo Soares
-
Poxa, @MOR que coisa ! Acredita que nunca tive dificuldade alguma com as tintas silkscreen ? Fiquei maravilhado com esse método, porque na transferência térmica as vezes tinha que repetir o processo duas, três vezes pra conseguir uma placa boa, e nesse sempre deu certo de primeira. Todo o processo era feito no escuro, cortinas fechadas e tudo mais, a única iluminação era um LED de alto brilho que eu deixava na extremidade oposta do quarto, assim eu conseguia andar por lá sem derrubar tudo uehuehue Outra coisa que creio eu que deva fazer a diferença, é que eu deixava a lâmpada halógena ligada sobre o "sanduíche" (vidros + placa + fotolito) por uns 15 minutos ou um pouquinho mais, e como esse tipo de lâmpada irradia muito calor, o conjunto todo esquentava bastante ! Assim que começava a sentir um cheiro diferente (bonzinho até) era porque estava pronta a sensibilização. Infelizmente já tem um tempinho que não faço mais placas por causa da correria da engenharia, mas assim que eu fizer outra placa por este método vou fazer um post aqui com todos os detalhes. Aliás, creio que minha emulsão/sensibilizante já tenham vencido, daí compro outros e, caso dê certo, coloco também a marca dos mesmos como recomendação. Gustavo Soares
-
Assim como o @MOR , também lhe indico extremamente o método da tinta fotossensível. Com pouco treino você consegue fazer trilhas tão finas que é possível até mesmo passar duas trilhas dentre os terminais de um CI, pra você ter noção de como o método é preciso ! A primeira vez que fiz placas por esse método foi há três anos atrás, e me baseei totalmente nesse site aqui: http://marcioandreyoliveira.blogspot.com.br/2010/02/placa-de-circuito-impresso-pelo.html Só a título de curiosidade, já que dinheiro não está brotando em árvores uahuahua eu não tinha NENHUM dos materiais necessários pra fazer esse método. Gastei cerca de R$130 pra comprar absolutamente tudo, porém comprei dos grandes tanto o emulsificante quanto o sensibilizante, claro que você não precisa comprar dos grandes também, assim vai economizar um pouco. Pra você ter noção até hoje não consegui acabar com nenhum dos dois. Ou seja, dura bastante ! Ah, e senão me engano, o mais caro foi comprar a lâmpada halógena... De resto, tudo tranquilo. Pense que é um investimento que vai melhorar (e muito) a qualidade das suas placas, te permitindo fazer projetos com um nível cada vez mais "profissional". Aliás, é um valor que se paga rapidinho se for levar em conta o preço que você vai pagar em papel glossy + impressão a laser nas gráficas por aí. Pra esse método você não precisa de uma tinta especial, pode ser a comum mesmo. Abraço ! Gustavo Soares
-
kkkkkkkkkkkk, te digo, é bom mesmo ! Ele tem vários cursos como eletricista e técnico em eletroeletrônica. Agora ele trabalha no setor de manutenção de uma empresa, e o que não vai ter jeito de consertar, ao invés de jogar fora ele trás pra casa ! Como ele não tem mais tempo e nem paciência de ver uma pilha de sucata lá, ele sempre pega aquelas caixas de cesta básica, enche de componente e dá pra mim quando vou lá ! Então tenho muuuuuuuuuuuita tranqueira aqui, hehe, infelizmente a maioria dos componentes vem queimado ou é SMD, mas algumas coisas dá pra reaproveitar.
-
Opa, valeu de novo pessoal ! Legal Albert ! Nem fazia ideia que funcionavam deste modo. kkkkkkkkk, essa YUASA que tenho peguei lá na casa do meu tio, ele disse que eu podia mexer lá nas sucatas que ele guarda e pegar o que quisesse ! Dei sorte achando essa bateria e alguns trafos, creio que realmente se fosse comprar seria um pouquinho salgado. O trafo que achei usei esses tempos atrás, 24V por 5A, esse já sei que não é tão baratinho, mas da bateria não sabia. Abraço, pessoal ! Gustavo Soares
-
Entendi ! E olha que sorte, eu nem sabia que tinha fonte acima de 12v aqui, mas procurando agora e achei uma regulável que vai até 30v, corrente máx de 500mA. Vou colocá-la em 13,5v e deixá-la carregando a bateria por umas 10h, como disse. Ah, só uma dúvida .. Devo ligar a fonte direto na bateria, certo ? E se de repente eu acabar deixando mais tempo que o suficiente, o que pode acontecer ? Obrigado, Cesar ! Abraço
-
Pessoal, tenho uma bateria de chumbo-acido que me quebrava um galho, mas de tanto usar, a carga dela agora está bem baixa... Que tipo de circuito posso usar para recarregar uma bateria desse tipo ? Ah ! É possível usar um carregador de notebook com algum circuito externo ? Datasheet da bateria : http://www.yuasaeurope.com/images/uploads/uk/downloads/datasheets/REW/REW45-12_UK.pdf Especificações : 12V, 45W Pesquisei algo a respeito na internet, mas devido a algumas experiências passadas meio ruins com circuitos que não funcionam, preferi perguntar pro pessoal que realmente entende. Como estou meio enferrujado e nunca mexi com recarga desse tipo de bateria, tenho medo de fazer alguma besteira. Abraço ! Gustavo Soares Obs: Puxa, agora que criei o tópico que vi o erro macabro: Acido ! auhauhuhaha, desculpa aí pessoal, não era a intenção judiar do português ! Kkkk
-
@Israelfa Por que não aproveita esses 6 a 7 volts que disse e usa pra alimentar um relê de 6 volts ? Não sei se são fáceis de achar, mas eu tinha uma renca aqui, inclusive usei em um projeto meu .. No comum do relé ligue o VCC ( 6 a 7v) e no contato NA do relé, que é o que vai acionar quando colocar Farol Alto, coloque um 7805 e conecte a saída dele no controle .. Se o controle opera em 5v ( creio eu que sim ) não tem erro. Só não esqueça de colocar um diodo em paralelo com o relê também !! Abraço.
-
Projetos com Avr : Design, Programação em Basic e Assembly
GustavoS. respondeu ao tópico de aphawk em Microcontroladores
Hmm verdade .. Obrigado amigo, estou aprendendo muuito com você ... Obrigado mesmo ! Realmente interessante essa estrutura .. Vou estudar e por em ação em outros programas logo logo ! Abraço ! -
Projetos com Avr : Design, Programação em Basic e Assembly
GustavoS. respondeu ao tópico de aphawk em Microcontroladores
Era isso mesmo que queria amigo, muito obrigado pela ajuda ! Não tinha nem pensado em fazer dessa forma o "delay" para o buzzer .. Achei interessante isso aqui .. If Pronto = 1 Then Auxiliar = 0 Reset Pronto End If Incr Auxiliar If Auxiliar = C Then Toggle Portd.0 Auxiliar = 0 End If Como sabia que " Auxiliar " seria incrementada a cada 1 ms até alcançar o valor de C ? Não vi nada especificando o tempo de incremento de auxiliar em 1ms ... -
Projetos com Avr : Design, Programação em Basic e Assembly
GustavoS. respondeu ao tópico de aphawk em Microcontroladores
Com as modificações, o código ficou assim: '------------------------------------------------------------------------------- $regfile = "m328pdef.dat" ' uC Atmega328P $crystal = 8000000 ' Velocidade de Clock '------------------------------------------------------------------------------- $hwstack = 40 $swstack = 16 $framesize = 32 '------------------------------------------------------------------------------- Config Portd.2 = Output ' LCD Config Portd.3 = Output Config Portd.4 = Output Config Portd.5 = Output Config Portb.3 = Output Config Portb.4 = Output Config Pinc.1 = Input ' S1 ( Incr. ) Config Pinc.0 = Input ' S2 ( Decr. ) Config Portd.0 = Output ' Buzzer '------------------------------------------------------------------------------- ' Declaração das variáveis Dim Preload As Word Dim Contador As Integer Dim B As Word Dim C As Word '------------------------------------------------------------------------------- ' Declaração das Constantes '------------------------------------------------------------------------------- ' Inicializa as variáveis Preload = 6.78 Contador = 250 '------------------------------------------------------------------------------- Config Lcd = 16x2 Config Lcdpin = Pin , Db4 = Portd.5 , Db5 = Portd.4 , Db6 = Portd.3 , Db7 = Portd.2 , E = Portb.3 , Rs = Portb.4 '------------------------------------------------------------------------------- Set Pinc.1 ' Ligando resistores de pull-up Set Pinc.0 '------------------------------------------------------------------------------- ' Configuração tela de espera LCD Initlcd Cls Locate 1 , 1 Lcd "Metron. Digital" Cursor Off Noblink ' Desliga O Cursor Piscante '------------------------------------------------------------------------------- ' Gerando uma interrupção a cada 9,78 ms Inicio: Config Timer1 = Timer , Prescale = 8 On Timer1 Base_timer Enable Timer1 Timer1 = Preload Enable Interrupts Do Config Debounce = 30 Debounce Pinc.0 , 0 , Incrementa , Sub Debounce Pinc.1 , 0 , Decrementa , Sub ' Atualiza LCD Locate 2 , 1 Lcd "Tempo: " ; Contador ; " bpm " Loop End '------------------------------------------------------------------------------- Incrementa: Contador = Contador + 1 Gosub Limites Return '------------------------------------------------------------------------------- Decrementa: Contador = Contador - 1 Gosub Limites Return '------------------------------------------------------------------------------- ' Contador contando de 0 a 250 Limites: If Contador > 250 Then Waitms 100 Contador = 1 End If If Contador < 1 Then Waitms 100 Contador = 250 End If '------------------------------------------------------------------------------- ' Sub-rotina de timer, chamada a cada 9, 76 ms ' Base_timer: push r23 B = 60000 / Contador ' Quantas batidas por minuto ? C = B / 2 Portd.0 = 0 Waitms C Portd.0 = 1 ' Waitms C Timer1 = Preload pop r23 Return '------------------------------------------------------------------------------- Meu Contador está funcionando certinho, de 1 a 250 de acordo com os botões que aperto, mas quando adiciono essa parte abaixo não consigo mais mudar o valor de Contagem apertando os botões . B = 60000 / Contador ' Quantas batidas por minuto ? C = B / 2 ' Metade do tempo ON, metade OFF Portd.0 = 0 Waitms C Portd.0 = 1 Waitms C Como eu sou meio atrapalhado pra explicar .. ;s Sem aquele trecho : [ame= ] [/ame] PS: Não repare os fios enormes saltando ! hehe Com o trecho : [ame= ] [/ame] Abraço ! -
Projetos com Avr : Design, Programação em Basic e Assembly
GustavoS. respondeu ao tópico de aphawk em Microcontroladores
Amigo, o metrônomo está QUASE pronto. Consegui fazer o seguinte código, que está fazendo quase exatamente o que eu queria ! Agora só falta fazer o buzzer tocar de acordo com as bpm .. E esse é o problema agora .. '------------------------------------------------------------------------------- $regfile = "m328pdef.dat" ' uC Atmega328P $crystal = 8000000 ' Velocidade de Clock '------------------------------------------------------------------------------- $hwstack = 40 $swstack = 16 $framesize = 32 '------------------------------------------------------------------------------- Config Portd.2 = Output ' LCD Config Portd.3 = Output Config Portd.4 = Output Config Portd.5 = Output Config Portb.3 = Output Config Portb.4 = Output Config Pinc.1 = Input ' S1 ( Incr. ) Config Pinc.0 = Input ' S2 ( Decr. ) Config Portd.0 = Output ' Buzzer '------------------------------------------------------------------------------- ' Declaração das variáveis Dim Preload As Byte Dim Apertou As Byte Dim Contador As Integer Dim B As Byte Dim C As Byte '------------------------------------------------------------------------------- ' Declaração das Constantes '------------------------------------------------------------------------------- ' Inicializa as variáveis Preload = 6 '------------------------------------------------------------------------------- Config Lcd = 16x2 Config Lcdpin = Pin , Db4 = Portd.5 , Db5 = Portd.4 , Db6 = Portd.3 , Db7 = Portd.2 , E = Portb.3 , Rs = Portb.4 '------------------------------------------------------------------------------- Set Pinc.1 ' Ligando resistores de pull-up Set Pinc.0 '------------------------------------------------------------------------------- ' Configuração tela de espera LCD Initlcd Cls Locate 1 , 1 Lcd "Metron. Digital" Cursor Off Noblink ' Desliga O Cursor Piscante '------------------------------------------------------------------------------- ' Gerando uma interrupção a cada 9,78 ms Config Timer1 = Timer , Prescale = 8 On Timer1 Base_timer Enable Timer1 Timer1 = Preload Enable Interrupts Inicio: Do Gosub Tela_inicial Select Case Apertou Case 0 Gosub Tela_inicial Case 1 Locate 2 , 1 Lcd "Tempo: " ; Contador ; " bpm " Contador = Contador + 1 Waitms 140 Gosub Limites Case 2 Locate 2 , 1 Lcd "Tempo: " ; Contador ; " bpm " Contador = Contador - 1 Waitms 140 Gosub Limites End Select Loop End '------------------------------------------------------------------------------- ' Contador contando de 0 a 250 Limites: If Contador > 250 Then Waitms 100 Contador = 0 End If If Contador < 0 Then Waitms 100 Contador = 250 End If '------------------------------------------------------------------------------- Tela_inicial: Locate 2 , 1 Lcd "Tempo: " ; Contador ; " bpm " Return '------------------------------------------------------------------------------- ' Sub-rotina de timer, chamada a cada 100 ms ' Base_timer: push r23 Apertou = 0 If Pinc.0 = 0 Then Apertou = 1 End If If Pinc.1 = 0 Then Apertou = 2 End If Timer1 = Preload pop r23 Return '------------------------------------------------------------------------------- Play: B = 60 / Contador ' Quantas batidas por minuto ? C = B / 2 ' Metade do tempo ON, metade OFF Portd.0 = 0 Wait C Portd.0 = 1 Wait C Deixei a rotina Play sem ser chamada em lugar nenhum do programa, porque sempre que coloco ela, é necessário segurar o botão por mais tempo proporcionalmente ao número em que " CONTAGEM " está ( Quanto menor o valor, devo segurar o botão por mais tempo ) . Esse atraso acontece por causa dos delays que dei ali .. Eu poderia ter feito essa rotina de frequência do Portd.0 de uma forma diferente, sem os delays ? Como ? Se o que eu fiz está certo, como posso fazer o micro executar essa rotina paralelamente ao programa, sem que os delays que usei nela interfiram no programa e no tempo que devo segurar os botões ? Obrigado amigo ! -
Projetos com Avr : Design, Programação em Basic e Assembly
GustavoS. respondeu ao tópico de aphawk em Microcontroladores
=D Consegui amigo, fiz essas mudanças e funcionou como antes, mas mais enxugado e usando menos flash '------------------------------------------------------------------------------- $regfile = "m328pdef.dat" ' uC Atmega328P $crystal = 8000000 ' Velocidade de Clock '------------------------------------------------------------------------------- $hwstack = 40 $swstack = 16 $framesize = 32 '------------------------------------------------------------------------------- Config Portd.2 = Output ' LCD Config Portd.3 = Output Config Portd.4 = Output Config Portd.5 = Output Config Portb.3 = Output Config Portb.4 = Output Config Pinc.1 = Input ' S1 ( Incr. ) Config Pinc.0 = Input ' S2 ( Decr. ) '------------------------------------------------------------------------------- Config Lcd = 16x2 Config Lcdpin = Pin , Db4 = Portd.5 , Db5 = Portd.4 , Db6 = Portd.3 , Db7 = Portd.2 , E = Portb.3 , Rs = Portb.4 '------------------------------------------------------------------------------- 'Aliases do programa '------------------------------------------------------------------------------- Set Pinc.1 ' Ligando resistores de pull-up Set Pinc.0 '------------------------------------------------------------------------------- ' Configuração tela de espera LCD Initlcd cls Locate 1 , 1 Lcd "Metron. Digital" Cursor Off Noblink ' Desliga O Cursor Piscante '------------------------------------------------------------------------------- Do Inicio: ' Testa qual botão foi apertado If Pinc.0 = 0 Then Gosub Incrementa End If If Pinc.1 = 0 Then Gosub Decrementa End If Gosub Tela_inicial Loop End '------------------------------------------------------------------------------- Incrementa: Locate 2 , 1 Lcd "Aumenta Tempo !" Waitms 200 Return '------------------------------------------------------------------------------- Decrementa: Locate 2 , 1 Lcd "Diminui Tempo !" Waitms 200 Return '------------------------------------------------------------------------------- Tela_inicial: Locate 2 , 1 Lcd "Tempo: --- bpm " Return Falta colocar um timer para estourar a cada 150ms e com ele quero ver se o botão foi apenas apertado ou está sendo segurado. Caso seja segurado, vou colocar pro tempo incrementar/ decrementar sozinho. Vou deixar isso pra amanhã, mas creio que seja mais ou menos isso . Obrigado amigo, pra eu que estou apenas iniciando não sabe a motivação que dá um elogio vindo de você ! =] -
Projetos com Avr : Design, Programação em Basic e Assembly
GustavoS. respondeu ao tópico de aphawk em Microcontroladores
Era isso mesmo - faltaram ligar os pull-ups, ligar o botão ao terra e comparar com 0 . Mas não consegui usar o return logo após a rotina, toda vez que uso ele, a função do primeiro botão fica se repetindo juntamente com a do segundo. A solução que encontrei foi esta .. '------------------------------------------------------------------------------- $regfile = "m328pdef.dat" ' uC Atmega328P $crystal = 8000000 ' Velocidade de Clock '------------------------------------------------------------------------------- $hwstack = 40 $swstack = 16 $framesize = 32 '------------------------------------------------------------------------------- Config Portd.2 = Output ' LCD Config Portd.3 = Output Config Portd.4 = Output Config Portd.5 = Output Config Portb.3 = Output Config Portb.4 = Output Config Pinc.1 = Input ' S1 ( Incr. ) Config Pinc.0 = Input ' S2 ( Decr. ) Config Portc.4 = Output ' Apenas para teste Config Portc.5 = Output ' Apenas para teste '------------------------------------------------------------------------------- Config Lcd = 16x2 Config Lcdpin = Pin , Db4 = Portd.5 , Db5 = Portd.4 , Db6 = Portd.3 , Db7 = Portd.2 , E = Portb.3 , Rs = Portb.4 '------------------------------------------------------------------------------- 'Aliases do programa '------------------------------------------------------------------------------- Set Pinc.1 ' Ligando resistores de pull-up Set Pinc.0 '------------------------------------------------------------------------------- ' Configuração tela de espera LCD Initlcd Waitus 50 cls Locate 1 , 1 Lcd "Metron. Digital" ' Desliga O Cursor Piscante '------------------------------------------------------------------------------- Do Inicio: ' Testa qual botão foi apertado If Pinc.0 = 0 Then Goto Incrementa End If If Pinc.1 = 0 Then Goto Decrementa End If Goto Tela_inicial Loop End '------------------------------------------------------------------------------- Incrementa: Cursor On Blink ' Liga O Cursor Piscante Locate 2 , 1 Lcd "Aumenta BPM !" Cursor Off Noblink Waitms 200 Goto Inicio '------------------------------------------------------------------------------- Decrementa: Cursor On Blink ' Liga O Cursor Piscante Locate 2 , 1 Lcd "Diminui BPM !" Cursor Off Noblink Waitms 200 Goto Inicio '------------------------------------------------------------------------------- Tela_inicial: Cursor On Blink Locate 2 , 1 Lcd "Tempo: --- bpm " Goto Inicio O programa está saindo aos poucos .. Muito legal essa oportunidade de ver algo que programei por conta própria ( Graças as dúvidas tiradas por aqui, claro ! ) funcionar do jeitinho que queria ! Obrigado pela boa vontade em nos ensinar Paulo ! -
Projetos com Avr : Design, Programação em Basic e Assembly
GustavoS. respondeu ao tópico de aphawk em Microcontroladores
Estou com outro problema que estou hoje o dia inteiro praticamente tentando resolver mas não consegui ! Minha ideia é fazer um metrônomo - mas estou tentando fazer aos poucos, por enquanto só incluí 2 botões no programa, um que será de incremento e outro de decremento do tempo do metrônomo. Quando fui testar, não funcionou. Coloquei então pra cada botão que eu apertar acender um LED correspondente a ele, e não consegui .. '------------------------------------------------------------------------------- $regfile = "m328pdef.dat" ' uC Atmega328P $crystal = 8000000 ' Velocidade de clock '------------------------------------------------------------------------------- Config Pinc.1 = Input ' S1 ( Incr. ) Config Pinc.0 = Input ' S2 ( Decr. ) Config Portc.4 = Output ' Apenas para teste Led1 Config Portc.5 = Output ' Apenas para teste Led2 '------------------------------------------------------------------------------- 'Aliases do programa '------------------------------------------------------------------------------- Do If Pinc.1 = 1 Then Goto Incrementa End If If Pinc.0 = 1 Then Goto Decrementa End If Loop End '------------------------------------------------------------------------------- Incrementa: Portc.4 = 1 Return '------------------------------------------------------------------------------- Decrementa: Portc.5 = 1 Return '------------------------------------------------------------------------------- Bom, como disse não funcionou como queria. SEMPRE os 2 leds estão acendendo, não importa se estou apertando o botão ou não . -
Projetos com Avr : Design, Programação em Basic e Assembly
GustavoS. respondeu ao tópico de aphawk em Microcontroladores
Obrigado Paulo, consegui !! -
Projetos com Avr : Design, Programação em Basic e Assembly
GustavoS. respondeu ao tópico de aphawk em Microcontroladores
Pessoal, estou com problemas para conseguir escrever em um LCD 16x2 usando um Atmega328 .. Não entendi bem a parte das configurações que devo fazer e o comando que uso para inserir um texto .. Estou seguindo a apostila mas fiquei com dificuldade nessa parte, então tentei criar um programa só para escrever um simples texto mas mesmo assim não consegui ! Poderiam me dar uma ajuda ou um exemplo ?
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