Ir ao conteúdo
  • Cadastre-se

mister nintendo

Membro Pleno
  • Posts

    1.092
  • Cadastrado em

  • Última visita

  1. O mais correto é que fale para ele que ha erros no código, e que ele faça as alterações. Dei uma olhada no código e o que ha na maioria é erros por falta de chaves, parêntesis e afins. Isto só pode ser corrigido por quem sabe precisamente a lógica do funcionamento. Corrigir alguns erros de sintaxe é relativamente fácil, complicado é corrigir erros mantendo a lógica de quem fez o projeto, sem ter muita base sobre o projeto é complicado. Fiz umas alterações no código e ele compila sem erros no MikroC, mas duvido funcionar hahahaha. Realmente o certo é você ir falar com o dono para que ele revise o projeto.
  2. você pode usar a série de taylor pra calcular um seno ou cosseno sen(x)= x - x^3/3! + x^5/5! - x^7/7! + x^9/9! .......... (continua dependendo da precisão que você quer) mas pelo formato da conta da pra ver que um pic demoraria muito tempo pra fazer isso, só de ter que elevar um numero a nona haha, impraticável para seu projeto flowww
  3. @Mulder_Fox estou com um problema bem estranho, desde que baixei e instalei a ultima versão do MPLAB, a v8.92, o compilador não gera mais as configurações, eu coloco pra não setar pelo código, e sim pelos checkbox que tem em um menu, como sempre fiz, mas o compilador não gera mais as configurações no hexadecimal.... você sabe algo a respeito, como corrigir isto e tal.... já desinstalei e re-instalei, mas continua com o mesmo bug vlewwwww
  4. http://www.4shared.com/file/TWPgxQNx/Tutorial_de_Programao_Assembly.html esse com certeza é o melhor de assembly pra PIC, é de um colega do fórum que manja muito, é muito bom mesmo flowww
  5. pra você fazer o que você quiser, me parece que é só substituir esta parte no código pela função que você quer executar..... /* With a new cardnumber, show it. */Serial.println(" ");Serial.println("Card found");serNum0 = rfid.serNum[0];serNum1 = rfid.serNum[1];serNum2 = rfid.serNum[2];serNum3 = rfid.serNum[3];serNum4 = rfid.serNum[4];//Serial.println(" ");Serial.println("Cardnumber:");Serial.print("Dec: "); Serial.print(rfid.serNum[0],DEC);Serial.print(", "); Serial.print(rfid.serNum[1],DEC);Serial.print(", "); Serial.print(rfid.serNum[2],DEC);Serial.print(", "); Serial.print(rfid.serNum[3],DEC);Serial.print(", "); Serial.print(rfid.serNum[4],DEC);Serial.println(" ");Serial.print("Hex: "); Serial.print(rfid.serNum[0],HEX);Serial.print(", "); Serial.print(rfid.serNum[1],HEX);Serial.print(", "); Serial.print(rfid.serNum[2],HEX);Serial.print(", "); Serial.print(rfid.serNum[3],HEX);Serial.print(", "); Serial.print(rfid.serNum[4],HEX);Serial.println(" ");//buzzeranalogWrite(3,20);delay(500);analogWrite(3,0); ela fica no código onde eu tentei destacar e coloquei umas setas...... /*** Read a card using a mfrc522 reader on your SPI interface* Pin layout should be as follows (on Arduino Uno):* MOSI: Pin 11 / ICSP-4* MISO: Pin 12 / ICSP-1* SCK: Pin 13 / ISCP-3* SS: Pin 10* RST: Pin 9** Script is based on the script of Miguel Balboa.* New cardnumber is printed when card has changed. Only a dot is printed* if card is the same.** @version 0.1* @author Henri de Jong* @since 06-01-2013*/#include <SPI.h>#include <RFID.h>#define SS_PIN 10#define RST_PIN 9RFID rfid(SS_PIN, RST_PIN); int buzzPin = 3;// Setup variables:int serNum0;int serNum1;int serNum2;int serNum3;int serNum4;void setup(){ Serial.begin(9600);SPI.begin();rfid.init();}void loop(){if (rfid.isCard()) {if (rfid.readCardSerial()) {if (rfid.serNum[0] != serNum0&& rfid.serNum[1] != serNum1&& rfid.serNum[2] != serNum2&& rfid.serNum[3] != serNum3&& rfid.serNum[4] != serNum4) {------------->/* With a new cardnumber, show it. */ Serial.println(" "); Serial.println("Card found"); serNum0 = rfid.serNum[0]; serNum1 = rfid.serNum[1]; serNum2 = rfid.serNum[2]; serNum3 = rfid.serNum[3]; serNum4 = rfid.serNum[4]; //Serial.println(" "); Serial.println("Cardnumber:"); Serial.print("Dec: "); Serial.print(rfid.serNum[0],DEC); Serial.print(", "); Serial.print(rfid.serNum[1],DEC); Serial.print(", "); Serial.print(rfid.serNum[2],DEC); Serial.print(", "); Serial.print(rfid.serNum[3],DEC); Serial.print(", "); Serial.print(rfid.serNum[4],DEC); Serial.println(" "); Serial.print("Hex: "); Serial.print(rfid.serNum[0],HEX); Serial.print(", "); Serial.print(rfid.serNum[1],HEX); Serial.print(", "); Serial.print(rfid.serNum[2],HEX); Serial.print(", "); Serial.print(rfid.serNum[3],HEX); Serial.print(", "); Serial.print(rfid.serNum[4],HEX); Serial.println(" "); //buzzer analogWrite(3,20); delay(500); analogWrite(3,0); <----------------------} else {/* If we have the same ID, just write a dot. */Serial.print(".");}}}rfid.halt();} substitua ai a função que você quer fazer que me parece que pode dar certo flowwww
  6. Vamos la cara. o que acontece com este pino é que ele é do tipo OPEN DRAIN, ou seja, ele tem apenas o transistor conectado ao negativo, e não um conectado ao negativo e outro ao positivo, fazendo assim que ele só tenha a capacidade de drenar a corrente por esse pino, e não fornecer a corrente, que aconteceria quando ele estivesse em 1, de modo que pra você poder fornecer a corrente, "mandar 1 no pino", você precisa colocar um resistor externo ligado entre o VCC e o seu pino, tipo esta ligação aqui. http://upload.wikimedia.org/wikipedia/commons/a/a6/Open_Collector_Pull_Up.png a parte dentro do "quadrado" é o interior do pic, ai o resistor é o que você vai implementar no circuito Não, só que pra mexer com valores maiores de 255 você precisa começar a associar bytes, pra poder formar valores maiores, mas não se preocupe, você usa C, o compilador faz isso automaticamente pra você, basta apenas você declarar a variável do tipo certo, que vá até valores maiores de 255, que o compilador faz o resto, no caso você já fez isto, declarou como INT, e ela vai de -32.768 até 32.767 O que acontece é que o microcontrolador enxerga tudo como bytes, e pra ele não existe diferença entre os bytes, é tudo tratado como bytes, passiveis de soma, subtrações, rolagens, ou quaisquer outras operações lógicas. O que acontece é que associado a alguns bytes ha funções especiais, como são os ports, que são nossos pinos externos, mas para o microcontrolador ele enxerga como byte. O que aconteceria + OU - é que cada a bit do byte dos ports temos transistores ligados neles, e esses transistores é que estão ligados aos pinos, "cada bit controla 2 transistores", que alteram os valores dos pinos.... é claro que digo isto A GROSSO MODO, ha todo um circuito mais complexo envolvendo tudo, mas pra entender é bom e a grosso modo até que esta "correto".... se você perceber pela explicação, o PIC continuara enxergando como um byte normal, mas como esse byte esta associado a transistores ele tem um efeito externo, que é manipular os ports..... flowwww
  7. Cara, um colega nosso do fórum fez este tutorial, o dele é pra ensinar a base pra começar a mexer no RFID, mas pelo que vi o código é bem completo e pode te ajudar em alguma coisa.... http://forum.clubedohardware.com.br/forums/topic/1061005-mini-tutorial-rfid-mikroc/ de qualquer forma eu cito ele aqui pra ter uma maior chance de ele ver seu tópico e te ajudar, já que faz um tempinho que não vejo ele por aqui .... @LuizGBarrio =D flowww
  8. @MatheusLPS , se comprar um módulo deste W5100 ou EN28J60 e se comunicar com um PIC, é inviável também você acha? pois é muito complexo... flowww
  9. http://www.axoonmed.com.br/forum/node/4 vê se este tutorial te ajuda, pelo pouco que pesquisei é bem difícil achar material sobre isto flowwww
  10. Aqui na faculdade que faço tem um projeto deste... Foi um colega meu o responsável por faze-lo, o projeto era criar imagens a partir de ultra-som... ele usava apenas 1 sensor, e variava a peça de posição para conseguir fazer uma imagem da peça.... não tenho muitos detalhes, só sei disto que falei.... Ele é um cara extremamente inteligente e disse que era MUITO difícil, por isso só fez por 1 ano e depois abandonou para outros... então ha uma bela caminhada pra você ai.... flowww
  11. Olha cara, nunca vi isto na vida, mas essa formula das forças ai é a Lei dos Senos..... Tente entender geometricamente o que esta acontecendo que talvez você possa assimilar melhor esse lamy ai.... sempre me ajuda.... flowwww
  12. Usa esse regulado então =D ..... eu aconselhei mais pelo fato de ter 12V na entrada ser um desperdício.... aconselhei mais para colocar em paralelo e ganhar capacidade de carga, pra durar mais.... =D flowww
  13. Creio que um jeito mais eficiente de utilizar essas 10 pilhas é colocar 5 pilhas em série, em paralelo com outro conjunto de 5 em série... assim você teria 6V de saída, não perderia muito com aquecimento dos componentes tipo 7805, e sua corrente de saída duplicaria para 4.000mAh, o que te daria uma autonomia bem maior.... flowww
  14. aqui esta o datasheet.... http://www.ti.com/lit/ds/symlink/tlc5917.pdf eu olhei bem por cima então não entendi bem seu funcionamento, mas se for um shift register como o @circuit disse, um CD4094 funcionara bem também.... o ruim é que ele fornece apenas 5mA nas suas saidas flowwww

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