Professor Fernando K, Parabens pelo seu trabalho, é sério, muito didatico e divertido. Desejo muito sucesso, ainda mais do que ja conquistou, portugal é um exemplo disso e que venha muito mais á frente. Grande abraço !
Obrigado Fernando! Obrigado por tão bons vídeos aula, que está ajudando muita gente a entrar neste novo mundo da programação para todos e Obrigado por estar feliz por Portugal reconhecer o seu contributo. Força
Mais uma vez, parabéns Fernando! Excelente explanação. Talvez por conta das atualizações, a função esp_restart_noos(); gera uma mensagem de erro ao debugar o código. Para resolver, basta substituí-la por esp_restart();
Boa tarde professor, as tuas aulas são as melhores que se encontra na youtube, se possível ensine um programinha com Watchdog no Arduíno uno, obrigado.
Parabéns show de video aula fiz uma automação na minha casa com o esp32 e algumas vezes ele trava mas vou colocar no meu cod para textar muito obrigado .
Poderias fazer um vídeo sobre o circuito de Brown-out reset, o qual serve para reiniciar o microcontrolador caso a tensão de alimentação baixe de um nível crítico. A propósito foi muito bom este vídeo , parabéns !!
Sensacional! Perfeito! Adorei essa dica! Vou implementar isso na minha biblioteca, agora até o Blink vai ter essa função =] Obs: Seria possível fazer um projetinho em que fosse possível desligar e ligar novamente um rele quando a internet ficasse offline? Para resetar o modem? Com isso junto o projetinho só vai falhar por algum componente queimado rs.
Ótima aula Fernando, parabéns pelos diversos conteúdos no seu canal! Estou acompanhando sempre... Tenho uma dúvida, se estou trabalhando com os dois CORE, como estes cores são independente, saberia me dizer se tenho que implementar dois WD? Obrigado.
Otávio Rafael de Souza Não 1 wd serve para os dois, mas tem que zerar o contador em ambos.
6 лет назад+1
Fernando K Tecnologia Ok, obrigado pelo retorno! Só fiquei pensativo no seguinte caso, imaginando se um CORE trava e o outro não, o WD continuará sendo alimentado e o uC não se reiniciará... ou estou enganado, não existe travar apenas um CORE, sempre para ambos, para tudo? Estou trabalhando com dois CORE só agora, e entendendo melhor o funcionamento, então me desculpa qualquer "bola fora". Obrigado mais uma vez!
Olá Fernando, excelente conteúdo sempre. Estou precisando de um auxilio, gravei um código para automação de lâmpadas via web com o ESP32, usei o Watchdog do seu exemplo para evitar travamentos. Mas quando acesso o esp para ligar ou desligar, ele trava mesmo assim. O que fazer?
@Fernandok estou inspirado a aprender automação residencial. Parabéns pelo seu trabalho. Muito bom. Gostaria de saber, qual o melhor microcontrolador para comprar e aprender? (Já tenho um arduino uno)
Oi Fernando, depois que comecei utilizar a IDE Arduino 2.x, muitas bibliotecas mudaram radicalmente, como essa do timer. Agora minha linha timer = timerBegin(0,80,true) não é aceita mais, agora não tenho como definir o timer que eu quero(o ID) nem o último argumento "true". Agora só aceita timer = timerBegin (80000000); Saberia dizer como escolho o ID do timer agora?
Fernando parabéns pelo vídeo foi de GRANDE AJUDA!!!!!, você teria algum exemplo para colocar o WatchDog no Arquino UNO? eu achei alguns exemplos mas não gostei. Obrigado pela atenção..
Na hora de compilar esta indicando os seguintes erros, eu apenas copiei e colei seu código Desktop\watchdog\watchdog.ino: In function 'void setup()': watchdog:24: error: 'resetModule' was not declared in this scope timerAttachInterrupt(timer, &resetModule, true); \Desktop\watchdog\watchdog.ino: In function 'void resetModule()': watchdog:53: error: 'esp_restart_noos' was not declared in this scope esp_restart_noos(); //reinicia o chip exit status 1 'resetModule' was not declared in this scope
Ótima aula em parabéns! Fernando to precisando montar uma interface, ligar arduino Uno ao computador e um rádio transmissor "ht baofeng " e app Zello, você tem material?
Toda troca de contexto deve ser feita pelo FreeRTOS na ESP32 (programada via Arduino). Trocar contexto via interrupção de Timer Overflow (estouro do Timer) vai acarretar problemas com o SO.
Um assunto de grande importância no ESP e que até a Espressif não não comenta. Professor se possível elaborar um vídeo que comenta sobre as bibliotecas. Essa bibliotecas é uma coisa de doido! Eu gostaria de compreender os parâmetros passados no código de como atuam nos registradores.
Olá tudo bem? ótimo video!!, infelizmente eu to com um problema em minha placa que é semelhante a do picdem (inclusive to usando o bootloader do picdem dela). No entando quando utilizo a interrupção o microcontrolador trava, o sintoma é o mesmo que o MCLR, qualquer interrupção, sendo interna ou externa está fazendo o pic travar. Utilizo o pic18f4550. Estou necessitado de uma solução, por favor se puder me ajudar.
Fernando, já testou travar o ESP32 sem ligar watchdog nenhum no sketch? Acredito que ele já tem um watchdog no hardware que reinicia... Posso estar errado, depois eu testo também.
Ricardo O Arduino core liga um watchdog em algumas funções. Mas se vc nao ligar formalmente ele pode travar, principalmente por ruido elétrico. Já tive esse problema.
Ola professor. Comprei um ttgo esp32 com sim800l integrado. Rodei um codigo nele, agora não acende a luz do esp32 e nem do sim800l tem alguma sugestao do que eu possa fazer.
Boa tarde fernando tenho um esp32 e ele so carregar os skects ao aperta o botao de debug. Por que isso. Tem como fazer isso sem precisa de aperta o botao.
estou com outro problema, pois toda vez que meu esp liga ou reinicia ele liga todos os reles do modulo e desliga depois de alguns segundos, gostaria de saber como posso evitar isso, pois ele acaba ligando meu quarto por inteiro
Bom dia. Este assunto é de extrema importância. Parabéns pelo vídeo. Preciso relatar que o comando esp_restart_noos(); não funcionou no esp32 aqui. o Arduino não reconheceu o mesmo. Tentei substituir pelo comando ESP.restart(), no entanto o esp32 continua travando. Alguma dica?
Boa noite..... tenho um esp8266 nodeMcu Esp-12E . programei ele, e a alexa reconheceu o dispositivo, resolvi modificar o código, apaguei todos os dispositivos criados na alexa, e reprogramei, só que agora a alexa não acha o dispositivo, o esp8266 nodeMcu Esp-12E. fica conectado na internet. Poderia me auxiliar, sou novato na arte. Desde já agradeço
Eu implementei esse WachDog em uma aplicação, funciona normal. Só que toda vez que o WachDog reinicia o ESP, todos os dados que eu salvo na memória EEPROM são Zerados. O estranho é que se eu dou um esp_restart() em outra parte do código, funciona de boa, só mesmo quando estoura o Tempo do WachDog. Alguma sugestão?
ets Jan 8 2013,rst cause:2, boot mode:(3,6) load 0x4010f000, len 3460, room 16 tail 4 chksum 0xcc load 0x3fff20b8, len 40, room 4 tail 4 chksum 0xc9 csum 0xc9 v0004f6a0 ~ld esta me aparecendo esse erro no esp do atmega , sempre que mando o comando alguem pode ajudar ...
professor Fernando como vai, gostaria de que o Sr. nos retorna-se em relaçao a este problema, porque acontence este erro hw_timer_t does not name a type . OK, agradecemos desde ja , Obrigado
Fernando, hoje pesquisei o GitHub, e vi que já tem gente fazendo a conversão do GRBL para o ESP32 e também para o STM32. Dê uma olhada, por favor: github.com/bdring/Grbl_Esp32 github.com/dungjk/grbl-stm32 Mas ainda assim, preferia que você fizesse também. Ficaria bem melhor, em português, e teríamos vídeos !
Boa Tarde Fernando, parabéns pelos vídeos, te enviei um e-mail ontem a respeito de TCC de automação residencial para deficientes físicos, se puder de uma olhada neste e-mail por favor !!
Se você modularizar seu código, fizer uma nomenclatura decente dos seus métodos (não usar miguchês pra nomear método, tipo mHwXtu() ou coisa assim), fizer o código dos métodos *refletir o nome* (ao invés de um método getX() que manda um e-mail criptografado pra Deus, termina com a sua namorada por telefone e depois retorna X), não usar aqueles truques do C++ que sacaneiam quem vai ler o código (sobrecarga de operador, atalhos que mais parecem a equação antivida)... E REFATORAR o seu código sempre que notar que ele começou a ficar muito zoado, você consegue ter até milhares de linhas de código sem enlouquecer as pessoas. Esses códigos impossíveis de ler no Github só tem um nome: preguiça. Quem tiver curiosidade e quiser rir um pouco, procura um documento na internet chamado "How to Write Unmaintainable Code"
CopernicoTube , eu tive enorme dificuldade em aprender o básico de C, mesmo já tendo programado por anos, em Cobol, Pascal e até Assembly. Que bom seria se as pessoas não tentassem economizar teclas na hora de escrever os programas... "Num = Numx + 1" é muito melhor que aqueles símbolos malucos do C e C++.
Vc não apenas aprendeu uma linguagem nova no C, mas todo um paradigma novo. C (não C++) é uma linguagem funcional, no mesmo grupo de Haskell, Scala, etc. Bem diferente de linguagens procedurais (Cobol, Pascal e similares). A mesma diferença você vai sentir entre essas linguagens funcionais e as de mais alto nível orientadas a objeto, como Java, Python, C++ (híbrida entre funcional e OO, é que que vc usa no Arduíno), Kotlin, etc. Em relação aos operadores do C++ e Java, é apenas uma questão de vocabulário. Depois que você adiciona essas construções ao seu vocabulário pessoal, elas ficam expressivas e vc até passa a sentir falta. Muitos programadores de COBOL com os quais eu já trabalhei reclamam do excesso de código que precisam escrever e o tamanho final das rotinas. De fato, eu escrevo códigos muito mais curtos e concisos em Java, e em Kotlin mais ainda. O problema é usar recursos e construções para escrever código pouco expressivo, o que maus, ou mal intencionados, programadores podem fazer até em COBOL.
Link do "manual do programador fdp" no Github: github.com/Droogans/unmaintainable-code Alerta: há relatos de que programadores que seguiram essas dicas foram assassinados cruelmente pelos colegas.
Poxa Fernando, seus vídeos tem conteúdo excelente, mas gasta muito tempo do vídeo com comentários que na realidade não ajudam no assunto do vídeo. Aí sempre saiu assistindo os seus vídeo pulando alguns segundos para frente. E COM CERTEZA MOSTRAR O CÓDIGO NA IDE ARDUÍNO É MAIS FÁCIL DE ENTENDER! Enfim, já te sigo faz um tempo, e seus conteúdos são excelentes, mas tem esses detalhes q acho falho nos seus vídeos.
Eu nunca tive saco para assistir ele sem objetivo, o brincando com ideias a mesma coisa, eles são vendedores de curso e sempre fazem essas coisas para cair em área vip
Ola Fernando, assiti seu video sobre watchdog e queria tirar uma duvida. Eu baixei o programa para ser carregado no esp8266 e ao compilar deu o seguinte erro. 'hw_timer_t' does not name a type o que pode ser, falta alguma biblioteca ? o que pode ser. eu agradeço se poder me ajudar ok. Obrigado. meu email é ailton.vasconcelos2014@gmail.com
Professor Fernando K, Parabens pelo seu trabalho, é sério, muito didatico e divertido. Desejo muito sucesso, ainda mais do que ja conquistou, portugal é um exemplo disso e que venha muito mais á frente. Grande abraço !
Obrigado Fernando!
Obrigado por tão bons vídeos aula, que está ajudando muita gente a entrar neste novo mundo da programação para todos e
Obrigado por estar feliz por Portugal reconhecer o seu contributo.
Força
A cada dia que passa eu gosto mais dos vídeos do Fernando K,é tudo muito Top SEMPRE...
Parabéns mais uma vez, e muito obrigado!
Show de bola...
Parabéns pela inspiração sensacional.
Queria ter um professor assim lá na faculdade.
Sucesso!
Muito bom o desabafo sobre o tamanho do código dos outros. Quando olha o código dos outros, as vezes a gente fica preocupado.
Muito bom cara ! Estou sempre acompanhando esse canal, parabéns ! Continue esse maravilhoso trabalho.
Cara... Vc foi além de professor, foi Psicologo.... Obrigado.
Desse jeito mesmo.
Cara que didática. E que bom humor.
Só agora descobri o canal. Sou de Portugal. Obrigado pelos ensinamentos grande mestre =)
Mais uma vez, parabéns Fernando! Excelente explanação.
Talvez por conta das atualizações, a função esp_restart_noos(); gera uma mensagem de erro ao debugar o código.
Para resolver, basta substituí-la por esp_restart();
Cara, o seu canal é um muito bom! Parabéns!
Vídeo fantástico! Parabéns pela dedicação em passar seu conhecimento!
BOA tarde gostei das aulas muito obrigado Professor valeu
Obrigado Fernando um grande abraço aqui de Portugal..
Excelente professor. Muito obrigado!
Oba... Obrigado Professor
BR em Portugal... Porto de Mos-Leiria
Aula perfeita, show de bola Fernando!
Boa tarde professor, as tuas aulas são as melhores que se encontra na youtube, se possível ensine um programinha com Watchdog no Arduíno uno, obrigado.
Parabéns show de video aula fiz uma automação na minha casa com o esp32 e algumas vezes ele trava mas vou colocar no meu cod para textar muito obrigado .
Poderias fazer um vídeo sobre o circuito de Brown-out reset, o qual serve para reiniciar o microcontrolador caso a tensão de alimentação baixe de um nível crítico.
A propósito foi muito bom este vídeo , parabéns !!
Parabéns pelo trabalho. Obrigado por compartilhar!!!
Parabéns Fernando, os vídeos ficam cada vez melhor, obg por compartilhar seu conhecimento, uma pergunta o esp8266 também tem whatcdog
deu esse erro 'hw_timer_t' does not name a type no arduino esp8266
Muito Claro! Muito obrigado pela aula.
Excelente!!! Só faltou colocar "Watchdog" no nome do vídeo para facilitar a busca.
Obrigado pelos vídeos, ta ajudando muito...a edição também é fantástica, kkkkkkkk
Show Fernando, obrigado vou implementar no meu projeto
Fernando, parabéns de novo!
Sensacional! Perfeito! Adorei essa dica! Vou implementar isso na minha biblioteca, agora até o Blink vai ter essa função =] Obs: Seria possível fazer um projetinho em que fosse possível desligar e ligar novamente um rele quando a internet ficasse offline? Para resetar o modem? Com isso junto o projetinho só vai falhar por algum componente queimado rs.
Interessante, achei que o ESP32 já tinha uma parte só dedicada para o WatchDog no hardware tipo os PIC. Realmente WatchDog é super necessário.
Portugal aqui!! 🇵🇹🇵🇹
Ótima aula Fernando, parabéns pelos diversos conteúdos no seu canal! Estou acompanhando sempre...
Tenho uma dúvida, se estou trabalhando com os dois CORE, como estes cores são independente, saberia me dizer se tenho que implementar dois WD?
Obrigado.
Otávio Rafael de Souza
Não 1 wd serve para os dois, mas tem que zerar o contador em ambos.
Fernando K Tecnologia Ok, obrigado pelo retorno!
Só fiquei pensativo no seguinte caso, imaginando se um CORE trava e o outro não, o WD continuará sendo alimentado e o uC não se reiniciará... ou estou enganado, não existe travar apenas um CORE, sempre para ambos, para tudo? Estou trabalhando com dois CORE só agora, e entendendo melhor o funcionamento, então me desculpa qualquer "bola fora". Obrigado mais uma vez!
Muito obrigado fernando, acho fantastico o watchdog!
Parabéns pelo material...
Olá Fernando, excelente conteúdo sempre. Estou precisando de um auxilio, gravei um código para automação de lâmpadas via web com o ESP32, usei o Watchdog do seu exemplo para evitar travamentos. Mas quando acesso o esp para ligar ou desligar, ele trava mesmo assim. O que fazer?
@Fernandok estou inspirado a aprender automação residencial. Parabéns pelo seu trabalho. Muito bom.
Gostaria de saber, qual o melhor microcontrolador para comprar e aprender? (Já tenho um arduino uno)
Oi Fernando, depois que comecei utilizar a IDE Arduino 2.x, muitas bibliotecas mudaram radicalmente, como essa do timer. Agora minha linha timer = timerBegin(0,80,true) não é aceita mais, agora não tenho como definir o timer que eu quero(o ID) nem o último argumento "true". Agora só aceita timer = timerBegin (80000000); Saberia dizer como escolho o ID do timer agora?
Show de bola mestre.
Fernando parabéns pelo vídeo foi de GRANDE AJUDA!!!!!, você teria algum exemplo para colocar o WatchDog no Arquino UNO? eu achei alguns exemplos mas não gostei. Obrigado pela atenção..
No RUclips só deveria ter isso conteúdos educativos !
Na hora de compilar esta indicando os seguintes erros, eu apenas copiei e colei seu código
Desktop\watchdog\watchdog.ino: In function 'void setup()':
watchdog:24: error: 'resetModule' was not declared in this scope
timerAttachInterrupt(timer, &resetModule, true);
\Desktop\watchdog\watchdog.ino: In function 'void resetModule()':
watchdog:53: error: 'esp_restart_noos' was not declared in this scope
esp_restart_noos(); //reinicia o chip
exit status 1
'resetModule' was not declared in this scope
Valeu Fernando show esse vídeo
quem quiser compilar o programa e der erro no restart vc pode trocar o "esp_restart_noos();" pelo "ESP.restart();"
Ótima aula em parabéns!
Fernando to precisando montar uma interface, ligar arduino Uno ao computador e um rádio transmissor "ht baofeng " e app Zello, você tem material?
Olá Fernando, vc poderia usar esta função ESP.restart(); para resetar o ESP?
Lucas não testei.
que cara bommmmm meu deusss q excelenciaaa
Por falar em GRBL... Estou aguardando ansiosamente aquela adaptação do GRBL para o Esp32. Lembra ?
kkkkk... Não fica sem dormir não, Fernando! Mas eu sei como é isso! :)
Toda troca de contexto deve ser feita pelo FreeRTOS na ESP32 (programada via Arduino). Trocar contexto via interrupção de Timer Overflow (estouro do Timer) vai acarretar problemas com o SO.
Um assunto de grande importância no ESP e que até a Espressif não não comenta.
Professor se possível elaborar um vídeo que comenta sobre as bibliotecas. Essa bibliotecas é uma coisa de doido! Eu gostaria de compreender os parâmetros passados no código de como atuam nos registradores.
Estamos com o mesmo problema 'hw_timer_t' does not name a type quando compila para o NodeMCU v3 LoLin . como resolver? Obrigado e parabéns pelas aulas
Olá tudo bem? ótimo video!!, infelizmente eu to com um problema em minha placa que é semelhante a do picdem (inclusive to usando o bootloader do picdem dela). No entando quando utilizo a interrupção o microcontrolador trava, o sintoma é o mesmo que o MCLR, qualquer interrupção, sendo interna ou externa está fazendo o pic travar. Utilizo o pic18f4550. Estou necessitado de uma solução, por favor se puder me ajudar.
Boa noite Fernando, coloque na descrição o seu telegram para os inscritos trocarem ideias la, abraços...
Audinei Nascimento
telegram grupo fernandok_oficial
Boa noite professor Fernando, a ideia era colocar abaixo da indicação de download o link do seu telegram...
Fernando, já testou travar o ESP32 sem ligar watchdog nenhum no sketch? Acredito que ele já tem um watchdog no hardware que reinicia... Posso estar errado, depois eu testo também.
Ricardo
O Arduino core liga um watchdog em algumas funções. Mas se vc nao ligar formalmente ele pode travar, principalmente por ruido elétrico.
Já tive esse problema.
Ola professor. Comprei um ttgo esp32 com sim800l integrado. Rodei um codigo nele, agora não acende a luz do esp32 e nem do sim800l tem alguma sugestao do que eu possa fazer.
esse código funciona para o Esp8266 também? obrigado professor
?
Prof. um delay(muito longo); tb poderia disparar o reboot?
Ql tempo máximo do contador?? Apenas 3s?? Tenho delay muito longo no meu cód
Boa tarde Professor ,
como resolvo esse erro
A fatal error occurred: MD5 of file does not match data in flash!
estou usando um esp32 oled
Boa tarde, funciona usando os 2 núcleos ou preciso fazer um para cada núcleo?
Muito obrigado... Parabéns... Fernando não da pra baixar o pdf
Muito boa aula ,e da para usar esse código no nodemcu esp8266? tenho que mudar alguma coisa ? desde já agradeço
Achei esse código mais simples portal.vidadesilicio.com.br/watchdog-esp8266/
Boa tarde fernando tenho um esp32 e ele so carregar os skects ao aperta o botao de debug. Por que isso. Tem como fazer isso sem precisa de aperta o botao.
estou com outro problema, pois toda vez que meu esp liga ou reinicia ele liga todos os reles do modulo e desliga depois de alguns segundos, gostaria de saber como posso evitar isso, pois ele acaba ligando meu quarto por inteiro
vc é fantástico
Bom dia.
Este assunto é de extrema importância. Parabéns pelo vídeo.
Preciso relatar que o comando esp_restart_noos(); não funcionou no esp32 aqui. o Arduino não reconheceu o mesmo.
Tentei substituir pelo comando ESP.restart(), no entanto o esp32 continua travando.
Alguma dica?
o mesmo aconteceu com o meu. Conseguiu solucionar?
Boa noite..... tenho um esp8266 nodeMcu Esp-12E . programei ele, e a alexa reconheceu o dispositivo, resolvi modificar o código, apaguei todos os dispositivos criados na alexa, e reprogramei, só que agora a alexa não acha o dispositivo, o esp8266 nodeMcu Esp-12E. fica conectado na internet. Poderia me auxiliar, sou novato na arte. Desde já agradeço
Esse codigo funciona no esp-8266 também?
Eu implementei esse WachDog em uma aplicação, funciona normal. Só que toda vez que o WachDog reinicia o ESP, todos os dados que eu salvo na memória EEPROM são Zerados. O estranho é que se eu dou um esp_restart() em outra parte do código, funciona de boa, só mesmo quando estoura o Tempo do WachDog. Alguma sugestão?
Fernando poderia fazer um video de watchdog para esp826, tentei compilar este programa no esp8266b e deu erro
drive.google.com/drive/folders/1IZ34MGrozbDNrWph2mmEEUvZ9Tiev-6y?usp=sharing
@@eletronicaemtudo Valeu!
ets Jan 8 2013,rst cause:2, boot mode:(3,6)
load 0x4010f000, len 3460, room 16
tail 4
chksum 0xcc
load 0x3fff20b8, len 40, room 4
tail 4
chksum 0xc9
csum 0xc9
v0004f6a0
~ld
esta me aparecendo esse erro no esp do atmega , sempre que mando o comando
alguem pode ajudar ...
OI... esse sistema da para fazer também no pic16f84A ?
acho q sim, todo Pic que mexi tinha wdt
cara o meu so trava quando se conecta ao wifi e depois a aws iot core , não sei mais que eu faço, nem com isso ai ta funcionando.
Muito bom!
(esp_restart_noos' was not declared in this scope) esse erro aparece no console do arduino usando o esp32
Otima aula
professor Fernando como vai, gostaria de que o Sr. nos retorna-se em relaçao a este problema, porque acontence este erro hw_timer_t does not name a type . OK, agradecemos desde ja , Obrigado
manja demaaaais
O GRBL prometido em ESP32, cairia muito bem em um STM32, chefe ! Pode ser ?
Gênio!
Fernando, hoje pesquisei o GitHub, e vi que já tem gente fazendo a conversão do GRBL para o ESP32 e também para o STM32. Dê uma olhada, por favor:
github.com/bdring/Grbl_Esp32
github.com/dungjk/grbl-stm32
Mas ainda assim, preferia que você fizesse também. Ficaria bem melhor, em português, e teríamos vídeos !
Na compilação apresenta o erro: 'esp_restart_noos' was not declared in this scope.
minha compilação apresentou o mesmo erro...vc conseguiu ressolver?
só usar o esp_restart()
Tem algum exemplo de Watchdog para ESP8266 ?
drive.google.com/drive/folders/1IZ34MGrozbDNrWph2mmEEUvZ9Tiev-6y?usp=sharing
Código nem compilou aqui...
Boa Tarde Fernando, parabéns pelos vídeos, te enviei um e-mail ontem a respeito de TCC de automação residencial para deficientes físicos, se puder de uma olhada neste e-mail por favor !!
Aqui deu o mesmo erro 'hw_timer_t' does not name a type no arduino esp8266
drive.google.com/drive/folders/1IZ34MGrozbDNrWph2mmEEUvZ9Tiev-6y?usp=sharing
da pra usor no esp 8266
Aleksander Faleiro tenho a mesma dúvida. E também gostaria de saber se funciona no Arduino...hehe
bacana demais todos os videos.. mas nesse tive erro no -esp_restart_noos;
Se você modularizar seu código, fizer uma nomenclatura decente dos seus métodos (não usar miguchês pra nomear método, tipo mHwXtu() ou coisa assim), fizer o código dos métodos *refletir o nome* (ao invés de um método getX() que manda um e-mail criptografado pra Deus, termina com a sua namorada por telefone e depois retorna X), não usar aqueles truques do C++ que sacaneiam quem vai ler o código (sobrecarga de operador, atalhos que mais parecem a equação antivida)...
E REFATORAR o seu código sempre que notar que ele começou a ficar muito zoado, você consegue ter até milhares de linhas de código sem enlouquecer as pessoas.
Esses códigos impossíveis de ler no Github só tem um nome: preguiça.
Quem tiver curiosidade e quiser rir um pouco, procura um documento na internet chamado "How to Write Unmaintainable Code"
CopernicoTube , eu tive enorme dificuldade em aprender o básico de C, mesmo já tendo programado por anos, em Cobol, Pascal e até Assembly. Que bom seria se as pessoas não tentassem economizar teclas na hora de escrever os programas... "Num = Numx + 1" é muito melhor que aqueles símbolos malucos do C e C++.
Vc não apenas aprendeu uma linguagem nova no C, mas todo um paradigma novo. C (não C++) é uma linguagem funcional, no mesmo grupo de Haskell, Scala, etc. Bem diferente de linguagens procedurais (Cobol, Pascal e similares).
A mesma diferença você vai sentir entre essas linguagens funcionais e as de mais alto nível orientadas a objeto, como Java, Python, C++ (híbrida entre funcional e OO, é que que vc usa no Arduíno), Kotlin, etc.
Em relação aos operadores do C++ e Java, é apenas uma questão de vocabulário. Depois que você adiciona essas construções ao seu vocabulário pessoal, elas ficam expressivas e vc até passa a sentir falta. Muitos programadores de COBOL com os quais eu já trabalhei reclamam do excesso de código que precisam escrever e o tamanho final das rotinas. De fato, eu escrevo códigos muito mais curtos e concisos em Java, e em Kotlin mais ainda.
O problema é usar recursos e construções para escrever código pouco expressivo, o que maus, ou mal intencionados, programadores podem fazer até em COBOL.
Link do "manual do programador fdp" no Github: github.com/Droogans/unmaintainable-code
Alerta: há relatos de que programadores que seguiram essas dicas foram assassinados cruelmente pelos colegas.
LIKE
Poxa Fernando, seus vídeos tem conteúdo excelente, mas gasta muito tempo do vídeo com comentários que na realidade não ajudam no assunto do vídeo. Aí sempre saiu assistindo os seus vídeo pulando alguns segundos para frente. E COM CERTEZA MOSTRAR O CÓDIGO NA IDE ARDUÍNO É MAIS FÁCIL DE ENTENDER! Enfim, já te sigo faz um tempo, e seus conteúdos são excelentes, mas tem esses detalhes q acho falho nos seus vídeos.
Eu nunca tive saco para assistir ele sem objetivo, o brincando com ideias a mesma coisa, eles são vendedores de curso e sempre fazem essas coisas para cair em área vip
Ola Fernando, assiti seu video sobre watchdog e queria tirar uma duvida. Eu baixei o programa
para ser carregado no esp8266 e ao compilar deu o seguinte erro. 'hw_timer_t' does not name a type o que pode ser, falta alguma biblioteca ? o que pode ser. eu agradeço se poder me ajudar ok. Obrigado. meu email é ailton.vasconcelos2014@gmail.com
like
ele vai travar.... pura verdade kkkkkkkkkk
Kkkkk