Ir ao conteúdo
  • Cadastre-se

aphawk

Membro Pleno
  • Posts

    8.316
  • Cadastrado em

  • Última visita

Tudo que aphawk postou

  1. Tche, Acabei de ler a sua dúvida, e a resposta do Jorge. voce tem razão, eu errei quando falei dos bits 0 a 6 serem saida e o 7 ser enrtrada ! Na verdade, esse erro o corre porque eu mudei o circuito e esqueci de mudar o programa .... mas o funcionamento do programa não é alterado, mas realmente o comentário está errado. Vou corrigir o trecho abaixo , e pedir ao amigo BCPetronzio para mudar o tutorial. O texto correto é o que se segue: Quanto ao que voce falou : Eu não disse que a sequencia binária de um byte é rb0rb1......rb7 !!! Como o texto estava errado, voce intuiu isso a partir dos meus comentários. Mas temos sempre de representar um numero, não importa qual a base dele, tendo os maiores pesos colocados à esquerda dos menores pesos. Para deixar claro, sempre escrevemos um numero binário com o menor bit à direita, e o maior bit à esquerda. Exemplo : o numero 169 ( em decimal ) se escreve assim em binário : 10101001, e em termos de bits, temos : b7- 1 b6- 0 b5- 1 b4- 0 b3- 1 b2- 0 b1- 0 b0- 1 Valeu , amigo Tche !!!!!!!! Isso mostra que voce está mesmo lendo e entendendo os passos corretamente ! Paulo
  2. Ok, Dani, achei um monte de coisa errada.... já te enviei uma versão que a meu ver está funcionando. Mas vou te pedir uma coisa, não fique colocando aqui no Fórum esse programa, pois voce está fazendo tipo TENTATIVA E ERRO ! Cara, leia primeiro o TUTORIAL, siga os exemplos, leia as dicas, assim ficará bem mais fácil para voce acertar. Lembre-se que este tópico é para iniciantes em PIC e programação com o PSI ; se voce continuar com dúvida em seu programa, crie um novo tópico, assim poderemos te ajudar diretamente no seu tópico, evitando aumentar muito as páginas deste tópico enquanto solucionamos o seu problema ok ? Desculpe pedir isto, mas se continuarmos postando aqui um monte de códigos, fica complicado para o pessoal mais novo seguir as dicas ok ? Paulo
  3. Dani, Hahahaha meu, tá pensando que eu sou Einstein é ????? Mais tarde, quando eu estiver em casa eu dou uma olhada e te falo. Mas adianta o que que esse programa tem de fazer ok ? Paulo
  4. Legal, não é, Jorge ??? Eu já tive de apelar para isso também ....... e deu certo !!!! Porisso que insisto no PSI, para quem quer mesmo aprender a usar Pics ! Paulo
  5. Dani, te mandei uma msg privada , é melhor falarmos via MSN senão vai longe aqui heheheh. Paulo
  6. Dehsantana, Tem algumas "feras" aqui no Fórum que estão escrevendo um tutorial em Assembler, e olha que a turma aqui entende bem disso ! Teremos de esperar mais algum tempo, até ficar pronto, mas vaivaler a pena ! Eu não entendo quase nada de Assembler, porisso que faço tudo em Basic, usando o PIC SIMULATOR IDE, se quiser dar uma olhada, quem sabe te ajuda , veja aqui as duas partes : http://www.4shared.com/file/117938802/8f95b920/INTRODUO_AO_USO_DE_PIC.html http://www.4shared.com/file/134451544/3759fe56/INTRODUO_AO_USO_DE_PIC_-_PARTE_2.html Boa sorte meu amigo! Paulo
  7. Extraido do tutorial : Um comando extremamente útil para mostrar valores armazenados em uma variável é este aqui : LCDOUT #DADO Este comando mostra o conteúdo decimal da variável de nome DADO . Embora não tenha tratado aqui neste programa, existem também funções que definem em qual posição do display você quer escrever. Por exemplo, LCDCMDOUT LcdLine2Pos(7) faz com que a próxima saída LCDOUT escreva na linha 2, a partir da coluna 7 do display. Heheheh Dani, nem vou falar de novo, voce já entendeu né :D:D ? Paulo
  8. Dani, não é bem isso, cuidado !!!!!!! Use o fator de escala, do jeito que eu te passei, isso sempre funciona ! Se voce tentar fazer na mesma escala, e usar 1/2 , o PSI sempre vai dizer que 1/2 é ZERO !!!!! Hehehehe parece fácil, não é ???? São truques demais para a gente aprender ! Paulo
  9. Dehsantana, Bem-vindo ao Fórum, meu amigo, e valeu pela sua observação sobre o clock interno ! Dani, Hehehehe agora voce vai ter trabalho .. Não, o PSI não atende cálculo com ponto flutuante, mas voce pode usar truques para isso. Veja o meu tutorial, a primeira parte, nas páginas 30 - 33 inclusive ! A dica é voce sempre aumentar o fator de escala .... Por exemplo, se voce quer arredondar o seu resultado, voce iria somar 0.5 e depois pegar apenas a parte inteira, certo ? No PSI, voce tem de fazer assim : contagem_final = (10 * contagem) +5 contagem_final = contagem_final / 10 Entendeu ? Leia a apostila, siga os exemplos, Dani, te garanto que vai ficar bem mais fácil voce fazer o seu programa, eu já passei por esses mesmos problemas um montão de vezes ... Quanto ao restante da pergunta, as contagens, procura um post que eu respondí, com um código para tratar exatamente esse problema de botões para UP e para Down, se não me engano é este aqui : http://forum.clubedohardware.com.br/showpost.php?p=3850352&postcount=53 Veja se agora ficou mais fácil ok ? Paulo
  10. Dani, leia acima de seu post ok ? Demorei muito para escrever, e fui editar, aí voce postou hehehehe. Paulo
  11. Dani, Este programa pelo que me parece é para gerar uma interrupção a cada 0,5 segundos aproximadamente, certo ? Mudei algumas coisas , e funcionou. Mas para voe testar no PSI, sugiro mudar o valor de TMR0 para algo bem maior, tipo 0XFE, para voce poder ver a simulação, senão vai esperar por mais de uma hora aparecer uma mísera interrupção , ok ? Repare que eu mudei algumas coisas, que estão coloridas aqui : [COLOR=Red]Define CONF_WORD = 0x3f50[/COLOR] [COLOR=Red]AllDigital[/COLOR] 'lcd TRISB = 0x00 Define LCD_BITS = 4 Define LCD_DREG = PORTB Define LCD_DBIT = 0 Define LCD_RSREG = PORTB Define LCD_RSBIT = 5 Define LCD_EREG = PORTB Define LCD_EBIT = 4 'Variáveis Dim contador As Byte contador = 20 Lcdinit 'iniciar lcd Lcdcmdout LcdClear 'limpar lcd [COLOR=Red]Gosub configura_timer[/COLOR] [COLOR=Red]aqui: ' loop eterno ! Goto aqui[/COLOR] End On Interrupt Save System Lcdcmdout LcdClear Lcdout "valor timer " TMR0 = 0x3d INTCON.T0IF = 0 Resume [COLOR=Red]configura_timer:[/COLOR] OPTION_REG.T0CS = 0 'usar clock interno OPTION_REG.PSA = 0 'prescaler ligado no TIMER0 OPTION_REG.PS2 = 1 'valor prescaler = 256 OPTION_REG.PS1 = 1 OPTION_REG.PS0 = 1 TMR0 = 0x3d 'contagem inicial do TIMER0 'isto fornece uma interrupt a cada 0,4992 segundos ... !!!!! INTCON.T0IE = 1 'habilita interrupções timer0 INTCON.GIE = 1 'habilita todas interrupções mascaradas Enable [COLOR=Red]Return[/COLOR] Repare que voce chamava a rotina de inicialização das interrupts via Call, que é uma chamada de procedure, e portanto EXIGE PASSAGEM DE PARÂMETRO e voce não passava nenhum .... então mudei para a velha e boa GOSUB ok ? E não esqueça da tall de ALLDIGITAL, a menos que voce esteja querendo usar algo analógico. Nào entendí a sua conf_word, tomei a liberdade de usar a minha , que é para clock interno, e sem MCLR ok ? Veja se resolveu. Paulo
  12. Olha, esses números são assustadores, a fiação disso é coisa de gente grande heheheh... Ricardo, O tipo de retificação é ponte de 4 diodos ou 2 diodos apenas ? Pois se for de 2 diodos, com "apenas" essa capacitância, quando voce puxar 120 ampéres ou mais, , a tensão vai cair muito, fazendo um Ripple considerável, e vai aparecer um zumbido enorme na saida do amplificador. Tem de aumentar esse banco de capacitores, ok ? Paulo
  13. Dani, qual é o PIC, e qual é o clock, para eu ver o que está acontecendo ??? Paulo
  14. Pessoal, eu tirei isto do próprio tutorial que eu postei : ' DEFINIÇÃO DO DISPLAY LCD Define LCD_BITS = 4 Define LCD_DREG = PORTD Define LCD_DBIT = 4 Define LCD_RSREG = PORTD Define LCD_RSBIT = 0 Define LCD_RWREG = PORTD Define LCD_RWBIT = 1 Define LCD_EREG = PORTD Define LCD_EBIT = 2 Define LCD_READ_BUSY_FLAG = 1 Eu uso sempre da maneira acima, que é a recomendada. Existem comandos que definem qual o PORT do PIC, e comandos que definem qual o Bit do port que vamos usar. Não esqueçam de colocar todos os comandos acima, claro que adaptados para as suas necessidades, em termos de PORT e de bits disponíveis, assim sempre vai funcionar. Dani, fala prá gente qual PORT voce está usando para enviar dados ao display, e quais os bits desse PORT que voce está usando. Pera... melhor ainda, poste o circuito prá gente ver ok ? Felipe, agradeço muito sua ajuda para podermos difundir mais ainda os microprocessadores para todos que precisarem deles ! Paulo
  15. Dani, é muito fácil usar os cartões SD, basta ter este pequeno produto : http://www.tato.ind.br/detalhesproduto.asp?id=69 A vantagem é que ele já vem com um relógio RTC ! E a programação em Basic é muito simples, baixe o maual dele e voce vai ver que não é nenhum bicho de 7 cabeças. Quanto aos HID's, infelizmente eu mesmo ainda não usei, mas sei que o PSI18 suporta comunicação via USB , e o buffer implementado no PSI18 é de 8 bytes para transmissão e 8 bytes para recepção. Veja um exemplo completo aqui : http://www.oshonsoft.com/pic18usb.html Quanto ao MSN, eu tenho mas nunca uso .... deixe uma mensagem pessoal aqui no fórum ok ? Gustavo555 , Valeu pelo agradecimento !!!! O tutorial é um trabalho em andamento, conforme eu vou tendo um tempinho livre eu vou escrevendo mais e aumentando a cobertura !!! TcheCara, Manda bala, pode postar o link, é muito interessante e eu quero fazer algo parecido no tutorial ( mas em escala MUITO menor heheheh ) Paulo
  16. Tche, muito obrigado pela sua contribuição, se voce me permite, vou incluir a sua página traduzida junto com o tutorial, realmente ajuda quem não domina bem o Inglês. Dani, existe a versão do PSI, escrito para a linha PIC18, e ela tem suporte para HID , veja o comentário do autor : PIC18 Simulator IDE can be used for development of USB generic HID devices É o mesmo ambiente do PSI , a mesma linguagem, acrescida do suporte USB !!! Se voce quiser, pode seguir pelo tutorial do PSI, e depois migrar para o PIC18 SIMULATOR IDE, está nesta página : http://www.oshonsoft.com/pic18.html Agrício, não entendí a sua dúvida .... Paulo
  17. Oi Enio, caramba, legal isso que voce descobriu ! Já vou acrescentar isso na primeira apostila, assim todos ficam sabendo isso. Isso só mostra a todos que sempre podemos aprender algo novo, não é mesmo ? Obrigado pelo seu comentário, Enio, só te lembro que a segunda apostila já está disponível, veja o próximo post logo abaixo do post que contém o link da primeira apostila, e ela vai te deixar mais animado ainda : Lcd´s , comunicação serial, I2C, e Relógios de tempo real ( RTC ) , voce vai se divertir com isso tudo junto ! Um abraço a todos ! Paulo
  18. Tche, Obrigado mesmo, nessas horas que eu sinto que valeu o trabalho hehehe Quanto à ver os dois displays ao mesmo tempo no simulador, não tem jeito, voce vai ver um de cada vez, e vai ter uma ideia do que acontece no processo. Mas pode montar o circuito num protoboard, e vai ver funcionar direitinho ! Jorge, Vale a mesma coisa que eu disse ao Tche, a simulação não é perfeita, e não vai fazer as atualizações em tempo real, que é necessária para termos o efeito desejado, que é o de parecer que ambos estão acesos ao mesmo tempo , ok ? Gente, quando simulamos programas E hardwares, temos vários limites, e não temos como contornar. Paulo
  19. Vou tentar deixar mais fácil ... Bootstrap é uma técnica de realimentação, que acaba aumentando enormemente a imperdãncia de um circuito. Como exemplo , alguns circuitos de entrada de amplificadores ou pré-amplificadores possuem um capacitor ligado meio esquisito, que vai tipo entre a base e um arranjo de resistores ligados no coletor de um mesmo transistor, o efeito de realimentação que acaba ocorrendo diminui a corrente necessária na base do transistor, o que equivale à impedância de entrada ficar bem maior do que era sem o capacitor. Charge-pumping , funciona mais ou menos assim, a energia é enviada em " pacotes" para um capacitor, aos poucos, e ele vai armazenando essa energia, até que chega a um limite e ocorre a descarga completa dessa enenrgia de uma só vez. Normalmente existe um circuito chaveador, que a cada vez envia um pouco de carga. A tradução literal desse termo é "bombeando carga" .... Paulo
  20. Heheheh num esquenta não Felipe, é que não me sinto bem com esse tal de Sr. ..... ! hahahahaha Meu, eu não tenho essa reverência toda não, não tenho frescura, nem sou diferente de ninguém aqui no Fórum, estou aqui para ajudar , como quase todos , não é ? Ah, muito legal o projetinho que voce achou, me interessei, vou ver se consigo montar um aqui em casa e dar umas incrementadas nele.... Felipe, dá a dica, aonde compro esses pots digitais duplos ???? Me passa um lugar aqui em SP , ou um telefone, sei lá, ! Paulo
  21. Pessoal, legal mesmo, agradeço as sugestões, estou anotando todas elas e vou procurar aplicações com elas para colocar na terceira ( e ultima, espero ! ) parte do tutorial. Caramba, gente, pelo que vejo tem gente mais velha do que eu aqui... válvulas, eu também cheguei a montar amplificadores de RF com as velhas 6KD6, mas retificador de selênio ...... essa ganhou !!!!!! Nunca ví um desses ! O M350 era um belo amplificador, eu montei um m310 se não me engano, era um kit da Ibrape .... 10 + 10 watts stereo , um baita som na época dos toca-discos tipo vitrolinha ! Rodrigo, a revista que tem o TDA 1524 eu tenho ela, vou escanear e te mando ela amanhã mesmo ok ? Mas ele tem muito ruido para usar em hi-fi ou home teather. Quanto aos pots digitais, é fácil usar eles como colume e equilíbrio, mas complica um pouco como controle de tom. Mas acho que encontrei a solução, vou projetar um controle de tom tipo Baxandall, com um transistor BC549C, e polarizando direitinho acho que vai funcionar sim. Vou usar um pot duplo , 100K linear, padrão I2C, só estou com dificuldade de comprar esse ci, pois nem na Farnell eu encontrei .... Se souberem onde tem isso me avisem por favor, assim eu faço o protótipo e se funcionar coloco no tutorial também ok ? Para variar a tensão na saida do Pic, o melhor método é usar um conversor R-2R, ou , claro , usar um CI conversor D-A mesmo. Eu coloquei aqui uma ideia de projeto : http://forum.clubedohardware.com.br/programa-pic/713720 Um abraço a todos ! (ah .... Rodrigo, Sr. Paulo é fogo ein .... meu eu tenho 49 anos cronológicamente, mas mentalmente tenho 35, pára com isso ! hehehe ) Paulo
  22. Ok gente, vou colocar até amanhã à noite, vou pedir para o grande Bcptronzio atualizar o link. Amigos Jorgeeletronico, Sennamaral e Itamar, Obrigado pelos comentários, mas lembre-se de que eu preciso também de sugestões, idéias, pois quanto mais completo o tutorial, mais gente ele vai ajudar ! Para a parte 3 ficaram o PWM, Leds RGB, e potenciômetros digitais I2C, ok ? Ah, Sennamaral, eu me lembro sim.... a simplicidade dos artigos era algo que se fosse publicada hoje seria vendida para crianças ! Mas a Editora Saber de vezem quando faz umas publicações desse tipo, vira e mexe eu encontro em bancas de jornais ! Mas sabe o que me deixa assim, meio saudoso também ? Quando eu tive meu primeiro contato com eletrônica, meu pai me deu de presente um kit da Phillips chamado "Engenheiro Eletrônico" , que vinha com 3 transistores ( AF114, e dois AC126, todos de Germânio... ) , e com ele voce fazia 23 montagens diferentes, e tinha uma que era um rádio AM, que funcionava de verdade com um volume bom, eu ficava tentando entender como aquilo funcionava..... Hoje, os kits que existem, são muito mais orientados à eletrônica Digital, e não dão a mesma satisfação de quando eu montava um intercomunicador, ou um alarme, um interruptor crepuscular, heheheh quando me lembro disso fico pensativo também , e com uma saudades dos meus 11 anos de idade... Tem horas que eu acho que o progresso fêz as coisas simples perderem o encanto. Um abraço a todos. Paulo
  23. Oi pessoal, estou com uma duvida : Ainda não terminei toda a segunda parte, mas já escreví sobre displays LCD's, memórias flash I2C, RTC's , serial assíncrona, e falta muito pouco para acabar o que me propús . Percebí que muita gente pediu sobre LCD's e I2C, e isto já está pronto. Estive pensando em publicar mais esta parte, e só ficaria para o final o PWM, e outros exemplos de uso mais complexos. Só que aí o tutorial completo seria composto de 3 partes em vez de 2 . Outra coisa que vou fazer é colocar um arquivo com todas as listagens de programa, pois muitos me escreveram solicitando isso. Gostaria de suas opiniões ok ? Paulo
  24. Daniel, Olha, para ter segurança, é melhor usar 20 2N3055 . Fiz uma conta básica, se tivermos na saida da ponte retificadora cerca de 24 volts quando solicitarmos 100 ampéres, teremos uma dissipação total de (24-13,8) X 100 = 1020 WATTS, onde teríamos cerca de 54 watts por transistor de dissipação. Não confio nos 2N3055, eles dizem que suporta tranquilo, mas já ví queimar um monte deles. Infelizmente esse transistor tem um péssimo controle de qualidade de produção ! Já ví uma fonte semelhante, quem montou usou 20 transistores 2n3055, e funcionou durante anos. Mas .... um dia um dos transistores queimou, entrou em curto, e apareceu quase 30 volts na saida, queimou o rádio, o módulo de potencia de RF, o repetidor, tudo ..... Falo isso para lembrar que quanto mais transistor voce usa, maior é o risco de queima da fonte .... basta apenas 1 deles queimar, por exemplo, por sobreaquecimento, e tchau .... Eu colocaria na saida da fonte um sistema de proteção a tiristor, para garantir que o fusível abra se a tensão de saida passar em torno de 14,5 volts ok ? Lembre-se de fazer um excelente dissipador, isso vai esquentar bastante, mesmo com ventilação forçada ok ? Paulo
  25. Sennamaral, Obrigado, fico muito contente em saber que esse tutorial está servindo para muitos aprenderam a utilizar os Pics, e principalmente desmistificando que apenas Experts podem fazer projetos com eles ! Rodrigo, Legal, eu sabia que você estava de olho heheheh, só esclarece prá gente se o projeto que você se refere nesse link é o pré digital. Gladson, Ok, já deu para entender o que voce quer fazer. De minha parte, sei que podemos fazer fácilmente o controle digital das entradas de áudio, e do controle de volume e equilíbrio, sem nenhum problema, com baixa distorção. Mas quanto ao controle de tonalidade..... esse até hoje náo achei nenhum exemplo de circuito utilizando pots digitais, pelo que vejo deve existir algum fator limitante que eu náo saiba ainda qual é .... Também sei que existem alguns CI's que sào utilizados em sistemas de som de alta fidelidade por alguns fabricantes renomados, como a Sony, que facilitariam muito a nossa vida, e eles são controlados por I2C . Mas náo sei se é fácil encontrar esses CIs aqui no Brasil. Vamos dividir os problemas desse projeto completo : 1 - Power Existem dezenas de circuitos, esse é só escolhermos um já testado e mandar bala. 2 - Pré - Amplificador com controle digital Precisamos definir a INTERFACE entre o usuário e o pré, por exemplo, quantos botões ele vai ter, quantos Leds, o LCD como vai ser e o que ele vai mostrar, tipo de seleção de funçoes que vamos adotar, etc. Turma, deem sugestões para isto ok ? Ah, e o tal do controle digital de tonalidade, se alguém tiver algo para começarmos, por favor postem ok ? 3 - Lay-out de PCB e cuidados para separarmos o sinal analógico do Digital, ou teremos um montão de zumbidos e chiados... 4 - Circuito de controle digital Qual PIC, sensores diversos ( por exemplo , temperatura do estágio de saída e acionamento de ventoinhas de proteção...) , etc... Bom, quanto ao programa, só poderemos começar quando o projeto estiver mais adiantado. Agora, vou dar a minha ideia... adoraria ter um display igual ao Quasar QRT-5500 ........ que é um analizador de espectro... já pensaram que lindo que ficaria isto ???? Eu tenho algumas rotinas em Basic que fazem DFT para obtermos a amplitude do sinal de áudio em pelo menos umas 10 frequências, mas acredito que precisaríamos usar a família 18F com uns 768 bytes de Ram e no clock máximo possível. Ah, e o software teria de ser obrigatóriamente no MikroBasic, pois temos cálculos de senos e cossenos...... Se alguém se habilitar para fazer isto, eu passo o que já conseguí de software, algoritmos, exemplos , etc. Aqui vocês podem ter uma ideia de como ficaria o display : YouTube - Cool Audio Spectrum Analyzer- Distinctive Excellence.mpg Se pesquisarem no Youtube, verão que existem vários projetos que utilizam PICs, e AVR's de 16 bits fazendo isto. Vamos lá, pessoal, sugestões e idéias ???? Paulo

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

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!