Ir ao conteúdo

.if

Membro VIP
  • Posts

    15.891
  • Cadastrado em

Tudo que .if postou

  1. static bit b=0; void main(void) { for(; { while(RA0);//espera "um toque..." while(!RA0);//tire o dedinho do botão por favor b^=1; if ( funcao(); //"...ele execute uma função" //else deixa_de_executar();//..."outro toque ela deixa de executar a mesma funcão." } }
  2. é assim sim. não disse errado. disse estranho sinal=v*0.0048875855327468230694037145650049; // = div/200 sendo que v não deve passar de 1023=10bits do ad Acho que você deveria PRIMEIRO analisar o valor de v "in natura" antes de fazer qualquer conta. p.ex. vazio=480, cheio=933. Faça só Printf("%f \n\r ",v); ou só printf(v) seilá. Veja e ANOTE os 2 valores. Os do meio viriam de sua nova fórmula que devo te ajudar a fazer .. ou não.. rs
  3. Usaste o divisor de tensão 10k-10k? Neste caso podes tentar 10k e 10u. Considerando que a variação da boia vai ser lenta, pode tentar até 100u. O resitor, corte o fio que vai pro pino ad, coloque o R "passando" por ele. O capacitor coloque entre a entrada ad e vss do pic Seu cálculo está estranho. A media nunca vai dar mais que 1023 e você divide por 200. vai dar no máximo 5. ou é isso mesmo?
  4. é isso sim amigo. Agora me informe se o terra da boia é o mesmo da bateria-chassi e este já está aplicando no gnd-terra-comum-vss ou algo assim do pic. Isso é importante. Se não for o mesmo, tem solução sim. Podemos complicar usando um acoplador ótico ou você fazer algumas medições e usar divisor resistivo. Se possível, farei alguma simulação pra gente testar ok?
  5. Seu circutio está errado mas como essa não é sua praia, tudo bem. pelo menos você está tentando e isso é o importante. voce já tem boas entradas de projeto. 1.55 a 5.52 já é um dado e tanto. O que você precisa é ligar os terras em comum (do pic e da boia) . Sugiro um simples divisor resistivo pra faclitar pode ser por 2 mesmo. 2 resistores 10k em série. um lado vem da sua boia, a conexão do meio, aplique na entrada ad do mc. o outro lado no terra-gnd-chassi que vai ser o mesmo do mc. Capacitor em paralelo com o resistor que vai pro terra vai ajudar muuuuitoooo. Pronto! Faça a leitura adcread() e analise o resultado. Anote o resultado quando cheio e quando vazio. A matemática pra converter pra litros a partir daí é muito simples. Também a é a lógica pros alarmes. Menos fácil seria uma talvez necessária "calibração" usando eeprom, mas nem tanto. Se não conseguir fazer sozinho, depois a gente vê.
  6. Bem.. isso seria pra baterias de boa qualidade. mas... voce fez a tal "calibração" da bateria? Certa feita quando fomos trocar as bat, os cara pediram uma minifortuna para tal. Então vou contar o segredo: esta calibração nada mais é do que 1 ciclo de carga-descarga-carga. Carregue até o nobreak indicar ok. Tire da tomada. Coloque algo como meia carga resistiva. Aguarde até desligar. Carregue até o nobreak indicar ok. Isso é maizomeno pra bateria "se sentir em casa".
  7. Môr gostei da sua teoria. Tudo bem se a gente apimentar e colocar um pouco de prática nela? Um simples filtro RC pode "fazer a média" (rs) e servir como "amortecedor" e manter o sinal mais estável pra nós. Perdoe se já disseram isto antes. Somando isso ao que dissestes teríamos uma boa leitura do sinal Boa leitura a todos... rs xeretando... Aparentemente ele não usa cristal. Nesta etapa de aprendizado, creio que ele não precisa de wdog. sorry
  8. oi. Você me OBRIGOU a dar uma olhada no datasheet. Tem sim que especificar o tipo de oscilador nos fuses. Só não sei como seu compilador faz isso. Isso prefiro não olhar tá? Caso não esteja colocando cristal por fora, deve especificar um tal de INTIO nos fusíveis. Note os váaarios modos de oscilaçao do bixo: 1.XTCrystal/Resonator 2.HSHigh-Speed Crystal/Resonator 3.HSPLL High-Speed Crystal/Resonator with PLL Enabled 4.EC External Clock with FOSC/4 Output 5.ECIO External Clock with I/O on RA6 6.ECPLL External Clock with PLL Enabled and FOSC/4 Output on RA6 7.ECPIO External Clock with PLL Enabled,I/O on RA6 8.INTHS Internal Oscillator used as Microcontroller Clock Source, HS Oscillator used as USB Clock Source 9.INTIO Internal Oscillator used as Microcontroller Clock Source, EC Oscillator used as USB Clock Source, Digital I/O on RA6 10.INTCKO Internal Oscillator used as Microcontroller Clock Source, EC Oscillator used as USB Clock Source, FOSC/4 Output on RA6 Agora não sei se o INTIO é o default do mc e/ou compilador por isso pode ser suprimido no fonte. Se não estiver seguro de como fazer isso dentro do fonte, faça por fora na hora de gravar. Acho que já expliquei anteriormente Faça um pisca led como a dica do amigo viniciuskruz Desacoplamento nada mais é do que um capacitor típico cd 100nF entre os pinos (bem perto) VCC e GND. Não que vá deixar de funcionar mas é meio que obrigatório além do + se for no protoboard! Ele dá uma última "limpadinha" na alimentação antes de entrar no mc. ok?
  9. Então remova o printf. ele pode estar zoando o processamento real. Além do + dentro da interrupt Dica: pra ver as variávies no proteus voce pode carregar o .cof e ver em debug-pic cpu-variables. voce vai ver só na pausa mas já é alguma coisa né. Pra ver rodando ao vivo debug-watch window. escolha o registro dos ad´s p.ex. Perdoe minha confusão pois não uso este compilador mas permita-me indagar: -não usa wdog mas faz setup dele. isso não o faz ativo? -o mesmo para brownout: não usa e faz setup? esse sugiro usar mesmo. -vi o tal PBADEN. voce está usando pino como ad mesmo? se não, está voltando os pinos pra digital? -usa cristal alta frequência. este está montado mesmo? se sim, frequencia alta a montagem é +- crítica. está perto do mc? e de acordo com o d.s.? -sua montagem está correta? -é no protoboard? -tem capacitor de desacoplamento? -tem vcc? -tem clock? -etc? Ah e provalmente seu compilador já faz o reload e zera o flag pra você. Se não... puxão de orelha nele!!
  10. realmente pode ser os fuses. Veja no help do seu compilador como configurá-los. Caso tenha dificuldade, configure-os manualmente na hora de programar. Da mesma forma, veja no help do programador. Mas é bem simples: procure algo como "config bits". Não estou com o datasheet do mc aberto mas procure deixar pino MCLR=IO e OSC=INTIO ou algo do gênero ah sim... 1-estranho (pra mim) você colocar printf dentro da interrupt. Vai pro display ou serial? 2- não conheço rtcc. é timer interno do pic? se sim to achando falta no reload e reset flag boa sorte!
  11. Agora que vi o topico do amigo fechado. Então vamo colocar + lenha nesta fogueira aqui mesmo... Anexo estão 2 projetos com .dsn e .hex com pic para acionar display matricial. Detalhes: -Feito em hitech-c. Também era pra ser em sdcc (gratuito) mas não se obteve sucesso total -Projeto antigo. Remonta a 2004. Houveram mudanças na sintaxe do hitech-c mas a essência c foi mantida. P.ex. atualmente sintaxe para nível baixo de interrupção foi alterada. A qualquer momento, se necessário, poderemos migrar pra versão atual. -Na simulação proteus está 100% funcional. bem.. 99,9. ninguém é perfeito né. -Um dos projetos consiste em enviar caracteres via terminal para o display. Envolveu o conceito de low level interrupt priority para a serial (mencionado acima). -também foi usada variável matriz bidimensional para conter as variáveis "espelho" do display bit a bit led a led. Parece complicado mas nem tanto. Código ficou mais enxuto ainda. -na simulação, carregue o hex apropriado no mc. Rodando, no terminal clique direita selecione echo typed characters. digite algo, pressione enter -Usado shift register HC595 para expansão de i/o. Pra simulação não há necessidade de drivers mas se for montar algum dia, sim. Pelo menos para as linhas. Basta p.ex. um bd135 pra cada -Não foi usado nada mastigado (do ccs, mikroc, p.ex.). Se quiser entender mais a fundo, vai ter que sujar as mãos dando uma olhadela nos datasheets -conveniente usar mc com frequência alta devido ao hw e cálculos que o mc faz -100% c. Código minimalista e otimizado. Facilmente migrável para qualquer microcontrolador (que tenha os recursos semelhantes, claro) de qualquer fabricante e qualquer compilador. Basta alterar pouquíssimos #defines. p.ex. onde está: #define SH RC0 //pro pic (veja os #defines do seu compilador) basta colocar: #define SH P0.0 //ou P0_0 ou P00 pro 8051 (veja os #defines do seu compilador) #define SH PORTA.0 //pro atmega16 (veja os #defines do seu compilador) #define SH PORTA_Bit0 //pro attiny26 (veja os #defines do seu compilador) etc -Fontes: só pedir Espero (não) ser (in)útil matrizdeleds.zip
  12. caro wozniak Sugiro usar displays maiores. rs. Mas é sério. Isso pode facilitar sua vida. Veja um exemplo. O fonte é relativamente simples pra um programador mediano o fonte c. O projeto completo com simulação, .dsn, .hex, fontes e tal, estou tentando contribuir no tópico do amigo xycote (onde acho ser mais coerente) mas não estou vendo o campo de responder. Mais tarde eu tento de novo. Se não conseguir, posto aqui mesmo, ok? Bom, o anexo era pra ser uma animação. Pelo menos no meu pc ficou desanimado... rs Hmm.. agora que eu percebi.. Clique na figura, espere um pouquinho que ela se anima... e... se anime com a mensagem!
  13. bom o princípio é o mesmo pra qualquer matriz. Mas vejamos: seria 64x16 (X,Y=linhas,colunas) certo?. Para uma palavra bastam 8 linhas (7). Mais que isso, creio eu, é mais útil para "desenhar" e não escrever. Portanto se for pra texto, sugiro 64x8 mesmo. Pra te ajudar ainda mais, mostre algo que já fez com sucesso. Não vale dizer que é em assembly ou que está começando do zero e não tem conhecimento algum e etc. rs (brinc.... ou não!)
  14. Boa!! Apesar de relé 5V x 15A p.ex. ser mais raro. Isso se for o caso do amigo. Mas de novo, você somou!! Outra alternativa: relé de estado sólido. a r r a z a m o s.! rs
  15. fonte 12V compacta no plug. simples assim. você não pôs em pauta o quesito custo. me dou o direito de não googlar pra você ok? o 'absurdo' foi expressão sua hein. E tenho dificuldade em saber se isso passaria por uma norma qualquer do inmetro (claro não é seu caso). Mas vejamos... Que tal complicar 1 pouco? fonte de 5V de carregador de gadgets você acha nos 1,99 da vida (desconsideremos certificação) a um preço bem acessível. Só que 5V não aciona relé 12V né? ... Então la vai a bicuda. 1 indutor, 1 transistor, 1 diodo, 1 capacitor, 1 pwm do proprio pino que aciona o relé e uma pequena leitura do conceito step-up regulator e... o resto é previsível.... doidera? também acho. Mas de toda forma, quem mandou perguntar? rs E caso insista na fonte rabo quente não esqueça de isolar bem do usuário ou mencionar no corpo do produto e manual se houver. boa sorte
  16. bom, permita-me .... já é errado usar fonte ac 'rabo quente' como a sua. Você deve adorar chokito neah? O poliester não bem 'errado' só não é recomendado. Um tipo de capacitor que suporta mais corrente ac é o tipo polipropileno que é mais caro. Uma alternativa é você colocar vários cap p.m. em paralelo. tende a durar mais pois distribui a corrente. Mas de novo... este circuito me choca! rs
  17. Amigo voce cometeu um engano básico: esqueceu de um capacitor entre +5 e gnd. Coloque um de uns 100uF proximo às 'pernas' do 7805 e um de 100n bem pertin de cada ci. Tente também em paralelo com entrada, entre trigger e gnd, base e gnd (ja falaram?), etc e gnd Se continuar, voce precisará de mais que um capacitor. abç.
  18. muito bem! a curiosidade é a porta da sabedoria. Para ouvir o motor de seu aeromodelo no speaker é um pouco + complexo e voce tem que ser um pouco + que curioso. Mas o princípio que vislumbro é: pegar uma amostra da corente do motor e amplificar. Bom pensando melhor... esquece pois voce num vai ouvir né. o avião tá longe! Pra voce ouvir no controle remoto... aí só curiosidade adicional não vai ser suficiente. Speaker 12V num tem muito sentido. Mas fico feliz por já ter feito o teste! espero que com sucesso. Se voce não entende nada me dê umas aulas pois entendo menos ainda! aguarde novas opiniões e sucessos!
  19. [+pilha]--[motor de brinquedo]--[altofalante]--[-pilha] duvido que alguém conheça algo + simples esta foi minha uma das 1ªs experiências no ramo. depois resolvi colocar um potenciômetro para simular a aceleração. Funcionou! Mas do potenciometro fumaça saiu. Há quase 40 anos atrás. wellcome
  20. comentando o comentário do amigo bcp o que quer dizer é que talvez o sinal no gate do igbt esteja sendo acionado direto ou seja mandando ele conduzir 100% do tempo. tirando-o voce pode medir com um multimetro talvez. Dica: use o recurso de postar fotos ou esquema se tiver/puder. Assim voce pode receber + ajuda dos muitos especialistas em Conclusões Hipotéticas Universais Técnicas Explicativas de boa vontade desta casa. Dentre eles o ignorante que vos escreve trafo em curto: depois das fotos e + info talvez possa-se dizer se é possível medir com multimetro comum abç
  21. bateu na trave. Trafo só AC tá bão? Pro caso de bateria deve pesquisar por regulador chaveado ou conversor dc-dc. Mas pra esta corrente acho que só deve existir na teoria. E claro a tensão deve cair MESMO. abç
  22. desculpe, não havia prestado atenção ao item que diz que as pilhas iriam ser utilizadas e carregadas no mesmo sistema. Pra mim era apenas pra carregar. Neste caso sim, o relé é uma opção fácil se comparada a algum fet (que tornaria o circuito mais elegante). Mas creio que a abordagem prática do amigo rubem de não se usar componentes “mosca branca” foi muito bem colocada e faz todo o sentido pro caso de utilidades made in home o que creio eu ser o propósito do autor do tópico. Realmente não precisa muita frescura pra carregar uma bat recarregável. Sabe como carrego as minhas? +10V...[10R]---led---led--- [4batnicd]. (na verdade são conjuntos de leds em paralelo) +10V vem de um rádio relógio que fica 24H ligado. E a própria resist do secundário do trafo limita a corrente. Já cheguei a usar parte da tensão que ia pra geladeira pra carregar uma bat automotiva pra posterior aproveitamento de sua carga. (não recomendado p/ inexperientes) Voltando a tua célula solar e visando um sistema minimalista feito em casa, creio então que apenas um diodo em série pode dar conta do recado. Portanto desconsidere se quiser a dica do post anterior e baseie-se preferivelmente em experiências práticas. abç
  23. veja isto: http://www.datasheetarchive.com/pdf-datasheets/Datasheets-18/DSA-345741.pdf ele se propõe a desperdiçar muito menos energia. Adicione a saída de seu comparador com ampop no pino 3 LBI pra finalizar a carga + o led indicativo. Hummm. Creio que deve ligar um diodo pra que o v+ não atrapalhe. K-saída do comp, A-pino LBI Desnecessário relé. Não vejo probl em usar noutro tipo de bat pra este tipo de aplicação não comercial desde que seu comparador limite com certa precisão o Vmáx da bat. abç

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