Ir ao conteúdo
  • Cadastre-se

PVC

Membro Júnior
  • Posts

    10
  • Cadastrado em

  • Última visita

Reputação

0
  1. Oi vtrx... Tudo bem? É o seguinte, eu fiz uma rede de sensores e atuadores ligados a um pic 18F4550, que transmite esses dados a um computador, que por sua vez mostra o valor de cada sensor numa aplicação montada com Visual C#, mas também montei um pequeno painel com leds, botões e displays de 7 segmentos, de modo a poder operar essa rede de forma independente, pelo painel ou pelo PC. Na verdade, o painel é apenas uma sofisticação do projeto... e então eu queria colocar um led que indicasse no painel que o PC está ativo ou não. Estou usando a comunicação USB BULK que copiei aqui do Matheus, com driver WinUSB! Por enquanto é isso! Obrigado camarada! Paz pra você!
  2. Prezado VTRX, obrigado pela atenção... Imagine a seguinte situação... eu tenho o PIC e o PC-Visual C# conectados pela USB, os dois ligados, e em stand-by... Para detectar uma desconexão do cabo, ou o desligamento de um ou outro "lado", eu posso manter um looping enquanto em stan-by, com o PC perguntando e o PIC respondendo algo muito simples, e na falta de pergunta ou resposta, eu saberia que a linha foi rompida... A minha pergunta é se o próprio protocolo USB não faz isso e teria um espécie de interrupção, de um ou outro lado, indicando desconexão do cabo! Mais uma vez, obrigado pela atenção! Paz e Amor!
  3. Prezado Matheus e amigos deste reduto PIC-USB, paz e amor a todo vocês! Por favor, alguém sabe que função usar para detectar que o cabo usb foi desconectado, ou por exemplo, que o PC que roda o Visual C# foi desligado? E, na outra ponta, a função semelhante, que do Visual C# eu usaria para testar a conexão com o PIC? Do Visual eu até imagino que possa fazer um looping chamando o pic constantemente, mas pode existir algo mais inteligente! Mais uma vez obrigado a todos!
  4. Amigos, muito obrigado pelas respostas, obrigado pela ajuda. Eu conectei dois pics 18F2550 entre si pela USART e um deles ao PC usando os códigos do Matheus. O PIC "escravo" lê e armazena os dados de um sensor num looping de 1024 bytes e então envia em pacotes de 64 bytes esses dados para o PIC mestre que por sua vez envia ao PC para ser plotado em um gráfico no Visual C#. Este ciclo está sendo feito em em mais ou menos 400 milissegundos, o que é bastante bom, mas "a gente" é "guerrero", sempre quer testar limites. Mais uma vez, muito obrigado! Que nunca vos falte ajuda quando precisarem!
  5. Oi Matheus, eu de novo! Tudo bem com você? Matheus, eu já te disse o quando foi útil tudo que você fez por aqui... agora, à medida que fui aprimorando meus programas, me deparei com o limite de 64 bytes enviados do PIC para a porta USB, setados nas linhas "#define USB_EP1_TX_SIZE 64" no PCW e "byte[] rdBuffer = new byte[64];" no VisualC#. Eu tenho como aumentar esse número, ou seja, enviar pacotes de mais de 64 bytes? Minha outra questão é que nesse modelo que você me enviou, o PIC fica em looping aguardando uma solicitação do PC-VisualC#. Você tem a contrapartida disso, ou seja, o PC-VisualC# aguardando uma solicitação do PIC? Mais uma vez muito obrigado pela atenção!
  6. Matheus, "vim" só te agradecer! Rapaz, depois de penar demais com os drives da Microchip, consegui finalmente ver tudo funcionando no Windows7 com esses (PicWinUSB) códigos que você me mandou. Muito obrigado MESMO pela sua ajuda! Vou montar agora uma redinha de sensores e depois te escrevo de novo sobre o desempenho e a estabilidade do sistema inteiro! E não se esqueça Matheus... precisando qualquer coisa de São Paulo, conte comigo! Fique em paz e com Deus! Forte abraço!
  7. Oi Matheus! Você é mesmo um grande sujeito! Se todo mundo tivesse a sua boa vontade em compartilhar conhecimento o mundo seria mesmo mais fácil de se viver... e conviver... Obrigado pelos arquivos... nem precisa analisar os outros que eu te mandei... vou estudar esses aqui com WinUSB, era isso mesmo que eu queria, e a medida que eu for evoluindo vou te dando um retorno... Mais uma vez, MUITO OBRIGADO! Fique em paz e com Deus, Sempre! Paulo...
  8. Oi Matheus! Boa tarde! Boa Semana! Matheus, será que você poderia me mandar os arquivos que você disse ter para rodar USB em Windows 7? Essa é uma semana mais tranquila, quero ver se consigo mexer com isso, apesar de que desde que te escrevi venho quebrando demais a cabeça com isso... Fique em paz e com Deus, meu camarada! Paulo...
  9. Oi Matheus... em primeiro lugar muito obrigado mais uma vez pela sua atenção.... além disso, por favor me desculpe pela demora... mas, eu tive uma semana muito cheia na semana passada e não queria te pedir socorro de novo sem testar tudo que fiz no Windows XP Mode, que eu não conhecia, não tinha instalado, e gostei muito de conhecer. Infelizmente, mesmo no Windows XP meu programa não funcionou... o máximo que eu consegui com o XP foi a enumeração do dispositivo, ou seja, ser reconhecido pelo Windows, mas em momento algum consegui fazer o PIC reconhecer qualquer chamado do Windows. Como você pediu, os arquivos estão disponíveis em http://www.4shared.com/rar/MCMQ6jNl/file.html, com mais algumas poucas informações. Se você puder me disponibilizar os arquivos que você tem para Windows 7 eu te ficaria muito grato, porque, mesmo tentando fazer a coisa funcionar em XP, eu tenho que usar o Windows 7... Outra coisa, eu vi não sei onde, afinal bati a cabeça por essa "Net de Deus" como um doido tentando encontrar soluções, mas acho que foi você que estava com dificuldade em arranjar algum componente... veja, eu sou de São Paulo... tudo que você precisar daqui e que eu puder te ajudar, será com grande prazer que o farei... conte comigo! Matheus, mais uma vez muito obrigado pela atenção! Fique em paz e com Deus, sempre! Paulo...
  10. Boa noite Comunidade! Salve Matheus! Excelente trabalho! Que nunca te faltem respostas e auxílio em tudo que você procurar! Matheus, sou mais um que estou te "seguindo" aqui, e meu foco nesse instante é na comunicação USB entre o 18F4550 e um PC. Segui à risca seus códigos para programar o PIC usando um compilador CCS versão 4.114 e montei o hardware também exatamente como você indicou. No PC uso Windows 7 e montei em Visual C#2008 um programinha muito simples usando seus códigos também, mas usando apenas as funções Status_Pic() e SumaPic(). Consegui resolver todos os problemas com drivers com pouca dificuldade... O Pic é reconhecido, é enumerado, reconhece o pedido do PC, tanto de Soma quando de Status, mas não responde em hipótese alguma, e, pior do que isso, trava depois de apenas um pedido respondido. Evoluindo um pouco o código para tentar descobrir onde estaria o problema, eu coloquei leds para verificar se o PIC recebia e entendia os pedido de Status ou Soma, e os leds efetivamente são acionados quando o programa no PIC "passa" pelas funções que deveriam responder se foi solicitada uma Soma ou seu Status. Além disso, coloquei 8 leds no PORTB e quando uso a sua função de SumaPic, o PIC entende essa solicitação, recebe corretamente os dados da parcelas a serem somadas enviadas pelo PC e, como eu programei, coloca, em binários claro, os valores das duas parcelas a serem somadas, separadas por um delay no PORTB... mas depois de apenas uma solitação, seja de Soma ou de Status, o programa trava no looping e não mais reconhece os pedidos do PC. Quando eu compilo o PIC aparecem os seguintes avisos: >>> Warning 203 "C:\Program Files\PICC\drivers\pic18_usb.c" Line 619(1,1): Condition always TRUE >>> Warning 216 "TesteUSB.c" Line 149(0,1): Interrupts disabled during call to prevent re-entrancy: (usb_token_reset) >>> Warning 216 "TesteUSB.c" Line 149(0,1): Interrupts disabled during call to prevent re-entrancy: (usb_flush_out) >>> Warning 216 "TesteUSB.c" Line 149(0,1): Interrupts disabled during call to prevent re-entrancy: (usb_tbe) >>> Warning 216 "TesteUSB.c" Line 149(0,1): Interrupts disabled during call to prevent re-entrancy: (usb_flush_in) >>> Warning 202 "TesteUSB.c" Line 37(6,10): Variable never used: send >>> Warning 202 "TesteUSB.c" Line 40(7,10): Variable never used: adc Memory usage: ROM=13% RAM=10% - 12% 0 Errors, 7 Warnings. Não sei bem, mas acho que o erro pode estar nos arquivos ".c" ou ".h" incluídos no projeto... Será que alguém pode me dar um help nisso! Obrigado a todos pela atenção! Fiquem em paz e com Deus, sempre!

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!