
.if
Membro VIP-
Posts
15.916 -
Cadastrado em
Tipo de conteúdo
Artigos
Selos
Livros
Cursos
Análises
Fórum
Tudo que .if postou
-
Interrupção 18f4550- não consigo configurar os registradores
.if respondeu ao tópico de marcmec em Microcontroladores
Estás no lugar certo... Vejamos... tem algo estranho aí. TMR0IF é um bit só. Penso que você confundiu. O certo seria TMR0=0x06, não? Outra, não consigo ver "movimento" no seu sw. Tá "estático". Cadê o movimento dos bits do motor de passo? -
Como representar um número de 8 bits em três display's bcd-7 segmentos?
.if respondeu ao tópico de Leonardo Aires em Eletrônica
Se não for trabalho de curso escolar, é um bom momento de se cogitar o uso/aprendizado sobre microcontroladores. Mais versátil-barato-fácil de achar e alguns indizíveis etc No seu caso pesquise por decodificador binário bcd e depois bcd pra 7 segmentos. Provavelmente é isso que seu professor quer. -
coloque outro monitor que suporte tal resolução e refaça o setup. Também pode colocar na saída av ou hdmi e usar a tv pra tal retorno. Também pode ver se ele tem algum botão de reset de fábrica. Obs: desconheço tal produto. Só intuições generalizadas
-
PIC ler/modificar dados na eeprom de outro PIC
.if respondeu ao tópico de sergiohardware em Microcontroladores
talvez... Eu faria tudo com putc() e getc() no campo dos bytes mesmo sem o guloso printf(). De fato nem isso. Acessaria direto o hw do mc..., getc() trava o processamento esperando chegar algo. Mas esquece isso por hora. Vejamos se entendi seu protocolo... No 675: unsigned char a,b;//c,d nem precisa //... a=eeprom_read(x); b=eeprom_read(x+1); //... if (getc()=='C') { putc('0'); putc(a);putc(b);//putc(c);putc(d);...// pra variável int nem precisa de c e d ok? } //... no 628: unsigned int d; //... putc('C'); //... if (getc()=='0') { d=getc(); d<<=8; d|=getc(); } pronto: d é o conteúdo de 2 bytes da eeprom do 675 -
PIC ler/modificar dados na eeprom de outro PIC
.if respondeu ao tópico de sergiohardware em Microcontroladores
Então não há dificuldade alguma. Anallise isto... unsigned int _INT16 putc('L');//ler _INT16=getc(E);//1o byte vai ser meu... _INT16<<=8; //...MSB _INT16=getc(E+1);//e o 2o no LSB Perceba que tens que ter 2 bytes de eeprom em 2 endereços sequenciais pra formar um int16. Penso que não há nescessidade de fechar. Pode ser que precise de + luz. (p.ex. pra escrever um int16 no 675) adicionado 13 minutos depois Ah sim... supõe-se que o argumento E da getc() será usado como endereço da eeprom_read() no 675. Portanto, deves criar sua própria getc(unsigned char).... cara tá ficando confuso kk... Mas a essência pra ler 1 int: leia 1 byte nele, desloque 8x pra esquerda, faça um OR com próxima leitura. Talvez isto te baste temporariamente. -
Sim esta é sua missão aqui na terra. Antes tarde do que nunca. Melhor ter este problema do que pifar seus equipamentos. Não use benjamin e use outro filtro ou simples régua de tomadas com fusível ou disjuntor apropriado. Sugiro com o dobro da capacidade máxima.
-
PIC ler/modificar dados na eeprom de outro PIC
.if respondeu ao tópico de sergiohardware em Microcontroladores
Tenta algo como um protocolo qualquer. Por partes. P.ex. leiamos a eeprom do 675 -o 675 fica esperando um comando de leitura L e endereço E for(;;) { if (getc())=='L') { while (getc()!=E); \\espera endereço putc(eepromread(E)); } } -o 628 envia L e quer saber o que tem no E putc('L'); getc(E); É só um micro_start. Tem maneiras mais inteligentes e seguras pra tal façanha. Espero que abra portas e sua mente. A propósito, já fez um pisca led? Nada melhor que ele pra iniciar a dominação do micro_mundo. -
pra mim a primeira suspeita é que c2073 e/ou a940 estão em curto. Depois os d+, depois diodos e depois, capacitores. Mas se falar que a chave estava em 127 e ligou em 220,receba um cascudo
-
PIC ler/modificar dados na eeprom de outro PIC
.if respondeu ao tópico de sergiohardware em Microcontroladores
Mostre o que já fez, o erro que deu, como tentou resolver, o que deu certo, o que não e etc -
exatamente o que eu dia dizer mas fiquei com preguiça kk. Adicionemos algo: apague os segmentos, desligue o transistor,espere, coloque o novo dado nos segmentos, ligue o outro transistor Se você não se importar, permita-me observar que, se refizer a montagem, pode colocar o dado direto na saída do mc. Não precisa ser bit a bit. Algo como movf contagem,w movwf porta fica mais eficiente Não agora, nem hoje e talvez nem amanhã mas num futuro próximo você deve perceber que nem precisa do 4511 ... e muito menos do ,,, assembly sucessos
-
Vi o video algumas vezes pra tentar achar o valor dos resistores que ligaste nos sinais abcdefg. Não consegui. Coloque 1k em cada e volte como estava. Do jeito que colocou foi um resistor comum pra cada display e configurado como seguidor de emissor. Isto pode diminuir a corrente IC pois o transistor não satura. @vtrx ... Paulão @aphawk pode corroborar se achar que deve.
-
Uma microanálise preliminar (e óbvia) seria verificar com osciloscópio se os pinos uni e dez estão operantes e se alternando. Aí você verifica blocos da interrupção deles. Talvez uma interrupt esteja zoando outra, Sorry de novo... só analisei a superfície do seu assembly.
-
Contador Regressivo com problemas l PIC 18F4520
.if respondeu ao tópico de ThiiiaGo101 em Microcontroladores
tentar... segundo=unsigned int=vai no máximo até 0xffff ou 65535. Um dia de 24H tem 24*3600 que é + que isso: não cabe. Mas 12H => 12*3600 < 65535 : cabe Pra caberem 24H em segundo, esta teria que ser outro tipo de variável. Sabe qual? Sobre char signed e unsigned... ... sendo minutos= unsigned, esta condição jamais vai ocorrer. Dê uma conferida/pesquisada e considere tecer algum comentário se achar que deve. (Desnecessário de tiver certeza que teu compilador considera char como signed). -
se na simulação funciona e na prática não, procure problema de montagem e afins. P. ex . transistores invertidos ou em curto. ahhh. sorry não analisar seu código com a profundidade que você merece
-
Contador Regressivo com problemas l PIC 18F4520
.if respondeu ao tópico de ThiiiaGo101 em Microcontroladores
isto pressupõe que sua variável segundo deve ser signed char. E você define como talvez seu compilador defina como char como unsigned Bem... eu (eu) faria (certa feita fiz tipo) assim unsigned int segundo; unsigned char hora, minuto; ... hora=segundo%3600; minuto=segundo%60; e só manipulava a segundos ou algo do gênero. Funciona bem só para doze horas. Sabe porquê? -
menos... http://produto.mercadolivre.com.br/MLB-764419285-gravador-programador-st-link-v2-stm8-stm32-mcu-_JM Ganhar de graça: contate um representante ST.Fale sobre seu projeto e expectativa de venda mensal. Mas acho que sua saliva vale mais que http://produto.mercadolivre.com.br/MLB-764419285-gravador-programador-st-link-v2-stm8-stm32-mcu-_JM kk
-
O site da www.microchip.com te da muita luz São muitos. Os avr's te atendem sim. Mas os st8m8s00xx da ST preenchem mais requisitos teus. P.ex. st8m8s005k6t6 supera tudo no teu projeto e é surpreendentemente barato. Programador da da st é bem barato e você pode até ganhar da st. (ganhei 2) Sobre a gravação é indiferente se tem bootloader ou não.
-
Parar motor DC 5V com o módulo driver l298n
.if respondeu ao tópico de CrocGamer em Microcontroladores
Trabalhar com circuitos apenas fazendo sw não é totalmente bom. Uma analisada/estudada no d.s. não é nada má. São conhecimentos complementares entende? Bem... Dei uma olhadela rápida e aparentemente se duas entradas = H =>fast motor stop. Provavelmente o tal curto. De fato o motor não vai travar como se fosse um freio de mão. Apenas vai dificultar seu giro pois o motor funciona como gerador e um curto nele dificulta eletromagneticamente sua rotação. Faça um teste "externo": motor fora do circuito, gire com as mãos com e sem curto nos fios e sinta "na pele" a coisa toda. Não dói nada...kk Se achar que deve, publique o seu circuito e sw. bj -
+ Intuição I.. Maquina de lavar tem tipo um pressostato (que opera como boia) que indica o nível de água pro sistema. Caso ele (ou seus cabos, conectores) esteja com maucontato ou danificado, em algum momento o sistema acha que ainda falta água e pára o processo. Intuição II .. o mesmo para o sensor da tampa e seu circuito - que faz a máquina parar quando abre
-
Parar motor DC 5V com o módulo driver l298n
.if respondeu ao tópico de CrocGamer em Microcontroladores
O buraco é mais em baixo. A princípio, pra frear o motor é dar um curto nele. Claro, não sem antes desligar sua alimentação. Analise o d.s. do seu driver, veja se ele possui e crie condições pra isso. de nada -
Se achar que deve, pode dizer o tipo de erro que dá sem medo. E também as condições em que ele ocorre. Ou clique aqui. Isto pode te ajudar
-
pesquise por inport32.dll. Esta lib você acessa(va) a nível de bit todo o hw do seu pc. Me lembro que travei o pc pois escrevi numregistro errado kk. Até o xp havia acesso. w7,8,10 só Deus sabe. Ah também seu pc deve ser 1/2 antigo com paralela real e não destas usb. Me lembro de ter tido sucesso com delphi, borland c e vb sendo que neste último, você pode acessar direto com uma panilha excel. To com a (antiga) panilha mas não sei se publico...
-
que tal ... aquecedor rabo quente em paralelo com lampadas led...
-
pior que tens razão. Preciso trocar osóculos kk. Ah sim... tive problemas. Um deles foi de saúde. Da mesma linha do paulão @aphawk Sobre o cabo, vi isso bem mal traduzido no m.l. ou seja, aparentemente sua placa tem que ter a tal função tv-out. (o que me remonta à memória do tal programa dos dos anos 80 que vos mencionara)
-
Provavelmente não dá pra inverter mesmo portanto nem leia o comentário abaixo... se os fios azuis forem em curto=comum rede-capacitor (meça na escala 200R=pode dar zero), uma alternativa que eu (EU) faria era colocar o capacitor no preto-vermelho. Eu (EU) ligaria algo como uma lampada em série pra testar.
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