Ir ao conteúdo
  • Cadastre-se

Projetos com Avr : Design, Programação em Basic e Assembly


Ir à solução Resolvido por aphawk,

Posts recomendados

Não sei não, o programa é caro, mais de 200 obamas. Talvez eu prefira testar o Mikropascal, que para mim é bem mais familiar (pascal). Passei muitos anos programando em pascal (antes de largar a informática) e vou me sentir em casa com ele, certamente seria tudo muito mais fácil. Mas ele é mais caro ainda que o Mikrobasic. É isto que mata.

Link para o comentário
Compartilhar em outros sites

Bom, ..

 

Teste o MikroBasic, ele é uma excelente alternativa ao Bascom, e suporta um montão de hardwares muito mais poderosos.

 

Eu pretendo migrar para ele em alguns anos, ou caso aparece algum projeto muito complicado onde precise de performance.

 

Boa diversão !

 

Paulo

 

Não sei não, Paulo.

Ouvi falar que o Mikrobasic tem pouca compactação de código.

 

http://asm51.eng.br/phpBB/viewtopic.php?f=33&t=15356&p=116787#p116787

 

MOR_AL

Link para o comentário
Compartilhar em outros sites

@MOR,

Eu ví algo sobre isso para o MikroC... O pessoal fala que ele acaba copiando trechos inteiros repetidos quando voce repete a mesma instrução.

Não acredito que o MikroBasic consiga superar o Bascom na área dos Avrs, afinal são 10 anos de maturidade contra 3, mas eu acompanho os Fórus de vez em quando para ver as reclamações dos usuários do MikroBasic, e melhorou muito desde que eu fiz os meus testes.

Vou dar uma olhada na versão para Arm, para poder pelo menos "sentir" os usuários.

Quanto ao que falam sobre compactação, tenho um pouco de dúvida : quando temos 128k de memória para código, qual a importância relativa disto ?

Tomo a mim como exemplo, pois eu hoje nem faço nenhum projeto do programa, simplesmente começo a escrever o código que me vem na cabeça sem nenhuma preocupação com eficiência do algoritmo ou tamanho de código resultante.

Ainda não consegui fazer um programa que passou dos 12k de código-objeto, mesmo escrevendo com péssima qualidade, altamente redundante e sem otimizar nada.

Será que eu vou mudar o jeito que eu brinco, ainda mais tendo espaços para códigos 10 vezes ainda maiores para serem utilizados ?

Com certeza, NÃO kkkkkkkk !

O que vai mudar, pelo menos para mim, é justamente a maior velocidade permitida, por exemplo poder utilizar um desses modernos displays GLCD para trabalhar com vídeo em tempo real.

O que vai me importar de verdade é a quantidade de bibliotecas de suporte, a facilidade de uso principalmente nos projetos com Internet, e a ausência de Bugs no compilador... Seria muito ruim não poder confiar 100% nele, e esse é o principal motivo de eu ter escolhido o Bascom.

Mas, pelo menos para os Arms, ainda não vejo nenhuma opção de linguagem Basic.

Por enquanto, e pelo que vejo por mais alguns anos, o Bascom me atende em tudo que eu utilizo.

Paulo

Link para o comentário
Compartilhar em outros sites

  • 2 semanas depois...

Paulo!

Comecei a ler o seu tutorial e mais alguma coisa sobre o AVR e tenho algumas dúvidas, que acredito que para você sejam triviais. Agradeceria se você pudesse esclarecer algumas delas.

 

1 – Pesquisei e encontrei diversos sítios que apresentam o mesmo hardware do programador bem simples. Aquele que possui 1 transistor, 1 diodo, 2 zeners  e 5 resistores. Dúvidas:

 

a) O nível do sinal que sai do uC (MISO) é TTL, mas o nível do sinal identificado pela serial é: ‘0’ para -3V a -25V e ‘1’ para 3V a 25V. Isso faz com que o zero do TTL não seja compatível com o zero da porta serial. Por outro lado, todos os sítios que pesquisei informam que funciona. Alguém já montou e funcionou? Acho que seria necessário OU um MAX232, OU um conversor USB para TTL. É isso mesmo?


Item b e não emotion. Não tem a opção de cancelar o emotion O PonyProg 2000 (baixei há cerca de 1 mês, portanto deve ser a última versão) não possui a opção do uC ATMEGA328. Existe outro uC que possa ser selecionado para programar e funcionar? Qual seria o substituto?


c) O Ponyprog 2000 só disponibiliza as portas seriais COM1, COM2, COM3 e COM4. Minha porta COM1 está queimada. Possuo em um slot uma placa que configura 2 portas seriais, COM10 e COM11. Verifiquei no meu PC (XP), que pude alterar a COM10 para COM2. Com isso a porta COM2 no Ponyprog ficou disponibilizada. Será que funciona? Ou há um meio do Ponyprog “ver” a porta COM10?
 

2 – Dúvida BASCOM. Baixei a versão free, ou demo, versão 2.0.7.5 (deve ser a última).


a) Porque o comentário não fica na posição que eu coloco? Já alterei todas as possibilidades (Smart TAB, TAB-size = 3 e comment position), mas quando o cursor sai da linha, o BASCOM escolhe uma posição diferente para o início do comentário. Isso permite que o comentário fique mais à direita, ultrapassando a posição 80 do caractere. Isso obriga a imprimir em folha no modo Paisagem, necessitando de mais folhas. Há como obrigar a posição do início do comentário ficar onde eu quero?


Item b e não emotion. Não tem a opção de cancelar o emotion   Mesmo com o Smart TAB ativado e o TAB-size = 3, ao digitar “Enter” após por exemplo, o “Do”, o cursor vai para baixo do “D” do “Do” e não para uma posição deslocada de 3 à direita, como deveria ser. Será que é um bug, ou há um modo de fazer com que isso aconteça?


c) O BASCOM permite selecionar a porta COM10, que disponho. (Opções > Programador > Comunicação > COM port = COM10). Pergunto: Para o BASCOM o programador é irrelevante.
Ele enviará o arquivo .hex, desde que os pinos sejam setados corretamente. É isso?

 

Em tempo:

Parece que quem começou o estudo com Fortran, ou Basic, não se adapta ao C. Essa linguagem é cheia de símbolos, que no fim tendem a atrapalhar, quem a usa esporadicamente. Isso não ocorre com o Basic.

 

Grato.

MOR_AL

Link para o comentário
Compartilhar em outros sites

Paulo!

Parece que quem começou o estudo com Fortran, ou Basic, não se adapta ao C. Essa linguagem é cheia de símbolos, que no fim tendem a atrapalhar, quem a usa esporadicamente. Isso não ocorre com o Basic.

 

Grato.

MOR_AL

 

Pois é, eu percebí a mesma coisa, e tenho alguns amigos que compartilhas da mesma opinião.

Esses símbolos não entram em nosas cabeças, eu juro que tentei.... mas desistí de vez ! Quem é do tempo do MOV BL,10 não consegue entender essa linguagem simbólica doida, que tem umas 6 maneiras diferentes de se escrever a mesma coisa.....

 

Quanto ao ítem 1 :

 

Eu nunca montei esses circuitos... o primeiro que eu montei era com a interfaçe da impressora, a porta Centronics, que é suportado pelo Bascom sem nenhum problema. Só de olhar já ví que esses circuitos que utilizam direto a RS232 sem nenhuma conversão devem ser uma bela gambiarra !

Mas mesmo que você use um conversor de nível, o Ponyprog é tão antigo que não reconhece um monte de processadores, ente eles o ATMEGA328 ....

 

Eu sugiro que voce adquira um programador padrão USBASP, eu tenho um aqui que é perfeito. Eles fazem a programação pela interface ISP, que está disponível em qualquer kit de desenvolvimento, ou até mesmo nos Arduínos. O Bascom trabalha direto com ele, mas eu prefiro utilizar um software externo , o AVRdude, que basta configurar no Bascom e pronto , fica tudo automatizado.

 

Procure por esse programador USBASP, está na faixa de 20 a 30 reais, encaixa numa porta USB e pronto, liga na interface ICSP dos AVR's .

 

Tem no Mercado Livre, e tem também em várias lojas on-line.

 

 

Item 2 :

 

a - Sim, o Bascom tem a mania irritante de não deixar a gente colocar onde quer o comentário .... não importa aonde você coloca, quando salvar o seu programa sempre vai vir no lugar que o Bascom quer !

 

Eu prefiro colocar o comentário sempre na próxima linha, logo no início dela, assim o Bascom não mexe nela.

 

b - Eu não sei se tem como ajeitar isso. Eu uso uma outra interface, que é o Programmers Notepad :

 

http://www.pnotepad.org/download/

 

É fantástico !

 

Só uso o editor do Bascom para debugar o programa, e quando termino, volto ao Programmers Notepad para ficar tudo bonitinho...

 

 

c - Sim, para o Bascom pode ser qualquer porta, inclusive quando voce utiliza com o USBASP é criada uma porta COM virtual pelo driver USBASP, com esses endereços doidos tipo COM8, e funciona sem nenhum problema.

 

Mas como já disse acima, uma grande vantagem é que o Bascom pode ser configurado para criar os arquivos compilados e chamar automáticamente um programa externo, que é o que eu faço com o AVRDude . Assim, qualquer programador de AVR pode ser chamado pelo Bascom, e após a gravação volta para o Bascom.

 

Paulo

Link para o comentário
Compartilhar em outros sites

Mas mesmo que você use um conversor de nível, o Ponyprog é tão antigo que não reconhece um monte de processadores, ente eles o ATMEGA328 ....

Que pena. Mas tudo bem.

Eu sugiro que voce adquira um programador padrão USBASP, eu tenho um aqui que é perfeito. Eles fazem a programação pela interface ISP, que está disponível em qualquer kit de desenvolvimento, ou até mesmo nos Arduínos. O Bascom trabalha direto com ele, mas eu prefiro utilizar um software externo , o AVRdude, que basta configurar no Bascom e pronto , fica tudo automatizado.

Procure por esse programador USBASP, está na faixa de 20 a 30 reais, encaixa numa porta USB e pronto, liga na interface ICSP dos AVR's .


Seria um destes?

http://www.ebay.com/itm/USBASP-USBISP-AVR-Programmer-Adapter-10-Pin-Cable-USB-ATMEGA8-ATMEGA128-Arduino/310506909410?_trksid=p2045573.c100033.m2042&_trkparms=aid%3D111000%26algo%3DREC.RVI%26ao%3D1%26asc%3D20131017132637%26meid%3D4495877138871022145%26pid%3D100033%26prg%3D20131017132637%26rk%3D1%26rkt%3D4%26sd%3D181297087299

Eu comprei e já recebi um Arduino UNO clonado. Então você diz que posso, de dentro do BASCOM, usar o Arduino para programar o que compilei no BASCOM? Qual seria a sequência?

Também comprei alguns ATmega 328P-PU já com o bootloader do Arduino. Ainda não chegaram. Eu poderia usar um deles para gravar o arquivo compilado no BASCOM, usando o Arduino? Nesse caso o processo apagaria o bootloader do Arduino e o uC ficaria "virgem", como se fosse um uC sem o bootloader do Arduino, apto a receber o arquivo.hex?

b - Eu não sei se tem como ajeitar isso. Eu uso uma outra interface, que é o Programmers Notepad :
http://www.pnotepad.org/download/
É fantástico !
Só uso o editor do Bascom para debugar o programa, e quando termino, volto ao Programmers Notepad para ficar tudo bonitinho...


Baixei o pnotepad, mas não consegui alterar as cores. Só fica preto e branco. Assim fica difícil visualizar. Mesmo porque o editor do BASCOM deve alertar quando escrevemos algo errado, não?

c - Sim, para o Bascom pode ser qualquer porta, inclusive quando voce utiliza com o USBASP é criada uma porta COM virtual pelo driver USBASP, com esses endereços doidos tipo COM8, e funciona sem nenhum problema.

Ok!

Mas como já disse acima, uma grande vantagem é que o Bascom pode ser configurado para criar os arquivos compilados e chamar automáticamente um programa externo, que é o que eu faço com o AVRDude . Assim, qualquer programador de AVR pode ser chamado pelo Bascom, e após a gravação volta para o Bascom.

Legal!
AVRDude é o programador do Arduino?. Caso negativo, qual seria?

 

Só acho que o BASCOM, com a idade que tem, por 89 euros, cerca de R$ 300, essa IDE poderia já ter corrigido esses pequenos inconvenientes. Parece que você faz um bom malabarismo para chegar até o arquivo .hex.
Desculpe pela enxurrada de perguntas....
Grato.
MOR_AL

Link para o comentário
Compartilhar em outros sites

Realmente,

 

Eu Aprendi com o Basic, Assembler, Fortran, Pascal, mas C para mim é grego e por alguma razão misteriosa eu não simpatizo com ele e não morro de vontade de aprender. a "CPU" já estou na fase de esquecer as coisas que eu aprendi, e se eu tentar aprender C vou acabar esquecendo Pascal (que eu adoro) e mais alguma coisa importante.

Link para o comentário
Compartilhar em outros sites

@MOR,

 

É exatamente um desses que voce colocou no link.

 

Se voce já tem um Arduino Uno, resolveu o problema !

 

Basta voce instalar a IDE do Arduino, e instalar o driver para o Uno.

 

Para rodar no Uno, não tem nenhum segredo, basta informar ao bascom que voce está usando um Atmega328P , coloque o clock do Uno como 16 MHZ, e pronto, pode fazer o programa sem se importar com nada mais.

 

Dentro do IDE do Arduíno, existe dentro de um dos diretórios o AVRDUDE, que é quem vai fazer a gravação ( Respondendo à sua pergunta, o Arduíno usa o Avrdude como seu programador... ) .

 

Eu te passo a linha de comando que voce tem de colocar no Bascom hoje mais tarde quando voltar para casa. Por hora, só anote qual a porta serial que foi criada pelo Arduíno, ok ? Vamos precisar dela .

 

Quanto aos ATMEGAS com bootloader do Arduíno, o que complica é justamente ter de montar um conversor de nível TTL-RS232C , ou mesmo aquele chip que transforma USB em serial. Ou seja, continua complicado sem um programador de verdade. Este é o motivo do USBASP !

 

O que você vai fazer é exatamente isto, apagar o bootloader e usar ele normalmente. Mas se quiser manter um Bootloader, existe alguns do próprio Bascom para ser gravado. Eu, pessoalmente, nem sei o que é isto, eu uso ele puro, apagado mesmo totalmente.

 

O Programmer's Notepad pode mudar sim os textos, cores, tudo, existe um menú para voce trocar e ficar tudo exatamente como voce quer.

 

Concordo com voce, essa interface já poderia ter sido muito melhorada.... uma vez um amigo disse que o programa BASCOM deve ter sido escrito por um engenheiro ..... funcionamento 10 e estética 0 .... hoje eu digo que ele tinha razão kkkkkk !

 

Mas não concordo com malabarismos.

 

A função do compilador é apenas gerar o código, não gravar ! Neste sentido, o próprio Bascom permitir a gravação já acho que é uma ideia excelente.

 

Num esquenta, pode perguntar o que quiser, mais tarde eu posto aqui como eu configurei o programador no bascom, e você vai ver a tranquilidade que é fazer isto com um Arduíno Uno.

 

Como uma sugestão, siga este wiki : http://wiki.mcselec.com/Getting_started_with_Arduino_UNO , pois é o mesmo procedimento !

 

Assim você já vai usando o seu Arduíno !

 

 


@Intrudera6,

 

É, eu estou formando a minha opinião .... quem começou aprendendo Assembler tem muita dificuldade em aprender o C, me parece uma linguagem com muitos símbolos que indicam ações demais, em vez de comandos....

 

Eu usava muito o L80 e o M80, que também permitiam macros como símbolos, mas sempre olhava e sabia o que estaria sendo feito. Não tenho essa segurança no C.... alias, eu vejo alguns códigos em C que eu não consigo entender o que que faz por mais que eu tente, acho que o pessoal abusa demais de alguns truques possíveis na linguagem, em vez de fazer de uma maneira mais "formal" . 

 

Mas o pessoal que primeiro aprende C consegue pegar o assembler tranquilo, gozado, não é ?

 

Paulo

Link para o comentário
Compartilhar em outros sites

Olá Paulo!

O sinal da minha internet acaba de retornar do limbo. Minha última postagem ocorreu em um hiato de tropeços, quando tentavam corrigir o problema. Depois retornou ao limbo. Agora voltou. Espero que se mantenha por aqui. Já reclamei tanto com a operadora, mas estou "amarrado" à ela. Apesar de tudo, é a melhor (ou a menos pior) das opções disponíveis em minha região. Espero que você entenda, quando fico algum tempo sem responder (ou mesmo perguntar, hehe).

Mas vamos lá:

 

É exatamente um desses que voce colocou no link. Legal, pois deve estar chegando...

 

Se voce já tem um Arduino Uno, resolveu o problema !

Basta voce instalar a IDE do Arduino, e instalar o driver para o Uno. Vou fazer isso...

 

Para rodar no Uno, não tem nenhum segredo, basta informar ao bascom que voce está usando um Atmega328P , coloque o clock do Uno como 16 MHZ, e pronto, pode fazer o programa sem se importar com nada mais.

Ok! Na realidade o vendedor do kit anunciou com Atmega328P-PU mas entregou com o Atmega8. Sendo assim, devo informar ao BASCOM que uso o Atmega8 e quero fazer um upload com o  ISP para o Atmega328P-PU, que é o que vou receber. É isso? O Atmega8 vai conter os pinos que fazem a comunicação entre o PC e o Atmega328P-PU.

Outra opção é retirar o Atmega8 e colocar o Atmega328P-PU, como você informou. Por favor, informe se estou certo.

 

Dentro do IDE do Arduíno, existe dentro de um dos diretórios o AVRDUDE, que é quem vai fazer a gravação ( Respondendo à sua pergunta, o Arduíno usa o Avrdude como seu programador... )

Pois é. Nesse meio tempo li a respeito e concluí isso mesmo.

 

Eu te passo a linha de comando que voce tem de colocar no Bascom hoje mais tarde quando voltar para casa. Por hora, só anote qual a porta serial que foi criada pelo Arduíno, ok ? Vamos precisar dela .

Certo! Parece que também já li sobre isso em um sítio. Inclusive mostram a tal linha de comando.

 

Quanto aos ATMEGAS com bootloader do Arduíno, o que complica é justamente ter de montar um conversor de nível TTL-RS232C , ou mesmo aquele chip que transforma USB em serial. Ou seja, continua complicado sem um programador de verdade. Este é o motivo do USBASP !

 

O que você vai fazer é exatamente isto, apagar o bootloader e usar ele normalmente. Mas se quiser manter um Bootloader, existe alguns do próprio Bascom para ser gravado. Eu, pessoalmente, nem sei o que é isto, eu uso ele puro, apagado mesmo totalmente.

Apagar o bootloader significa simplesmente fazer o upload do arquivo .hex gerado no BASCOM, certo?

 

O Programmer's Notepad pode mudar sim os textos, cores, tudo, existe um menú para voce trocar e ficar tudo exatamente como voce quer.

Acho que estou entendendo o que pode estar ocorrendo. Há dois arquivos para se baixar no sítio do Notepad. Eu baixei o que é direto, sem precisar instalar. Basta rodar o arquivo notepad++.exe que já vem pronto (depois de descompactado). Ele não fica instalado no PC, apenas executo o arquivo. Acho que este modo não salva as alterações realizadas por mim. Vou baixar o outro modo e ver se as alterações permanecem.

 

Baixei o arquivo instalável. Agora as palavras aparecem com as cores. O problema é que não sei como configurar o estilo, por exemplo, comentário, palavra reservada, função, etc. Do modo que está, ele não identifica nada. Ele não identifica, por exemplo, o ' como linha de comentário.

 

Concordo com voce, essa interface já poderia ter sido muito melhorada.... uma vez um amigo disse que o programa BASCOM deve ter sido escrito por um engenheiro ..... funcionamento 10 e estética 0 .... hoje eu digo que ele tinha razão kkkkkk !

Isso é verdade! Pelo menos é o que acontece comigo e tenho uma explicação. Dá tanto trabalho para fazer a coisa com os detalhes que nos são relevantes, que no final abrimos mão dos floreios.

 

Mas não concordo com malabarismos. Realmente só saberei quando usar o BASCOM por algum tempo. Até lá, desconsidere o comentário. Foi apenas uma suposição.

 

Num esquenta, pode perguntar o que quiser, mais tarde eu posto aqui como eu configurei o programador no bascom, e você vai ver a tranquilidade que é fazer isto com um Arduíno Uno.

 

Ok, grato.

 

Como uma sugestão, siga este wiki : http://wiki.mcselec.com/Getting_started_with_Arduino_UNO , pois é o mesmo procedimento !

 

Assim você já vai usando o seu Arduíno !

Vou dar uma olhada nele, apesar de já ter baixado tanta coisa sobre o Arduino e ter lido o suficiente para andar com os próprios pés. O Arduino é muito fácil, por isso é o mais popular entre os hobistas. Entendo que por ser tão fácil possua limitações intrínsecas, mas o ganho em tempo de projeto compensa largamente.

 

Estou estudando o seu tutorial. É realmente esclarecedor e tira muitas dúvidas para o iniciante. Infelizmente cheguei no exemplo 5. Ele já consome 66% da memória (mais de 2k bytes). Como ainda não entrei na parte do hardware, não há problema quanto a limitação de memória da versão demo do BASCOM.

Outra coisa é que o BASCOM gerou o arquivo .hex, sem informar que ultrapassou o limite da versão demo. Será que a limitação não é mais de 2k bytes, aumentando a quantidade? Como posso identificar esta limitação. Você que tem algo a acrescentar sobre isso?

 

Grato.

MOR_AL

Link para o comentário
Compartilhar em outros sites

Olá Paulo!

O sinal da minha internet acaba de retornar do limbo. Minha última postagem ocorreu em um hiato de tropeços, quando tentavam corrigir o problema. Depois retornou ao limbo. Agora voltou. Espero que se mantenha por aqui. Já reclamei tanto com a operadora, mas estou "amarrado" à ela. Apesar de tudo, é a melhor (ou a menos pior) das opções disponíveis em minha região. Espero que você entenda, quando fico algum tempo sem responder (ou mesmo perguntar, hehe).

Mas vamos lá:

É exatamente um desses que voce colocou no link. Legal, pois deve estar chegando...

Se voce já tem um Arduino Uno, resolveu o problema !

Basta voce instalar a IDE do Arduino, e instalar o driver para o Uno. Vou fazer isso...

Para rodar no Uno, não tem nenhum segredo, basta informar ao bascom que voce está usando um Atmega328P , coloque o clock do Uno como 16 MHZ, e pronto, pode fazer o programa sem se importar com nada mais.

Ok! Na realidade o vendedor do kit anunciou com Atmega328P-PU mas entregou com o Atmega8. Sendo assim, devo informar ao BASCOM que uso o Atmega8 e quero fazer um upload com o ISP para o Atmega328P-PU, que é o que vou receber. É isso? O Atmega8 vai conter os pinos que fazem a comunicação entre o PC e o Atmega328P-PU.

Outra opção é retirar o Atmega8 e colocar o Atmega328P-PU, como você informou. Por favor, informe se estou certo.

Infelizmente tem muito nego esperto.... sim, é o mesmo processo, só mudando o nome do processador. Mas é melhor voce substituir pelo seu Atmega328P que você adquiriu já com o bootloader.

Dentro do IDE do Arduíno, existe dentro de um dos diretórios o AVRDUDE, que é quem vai fazer a gravação ( Respondendo à sua pergunta, o Arduíno usa o Avrdude como seu programador... )

Pois é. Nesse meio tempo li a respeito e concluí isso mesmo.

Eu te passo a linha de comando que voce tem de colocar no Bascom hoje mais tarde quando voltar para casa. Por hora, só anote qual a porta serial que foi criada pelo Arduíno, ok ? Vamos precisar dela .

Certo! Parece que também já li sobre isso em um sítio. Inclusive mostram a tal linha de comando.

Quanto aos ATMEGAS com bootloader do Arduíno, o que complica é justamente ter de montar um conversor de nível TTL-RS232C , ou mesmo aquele chip que transforma USB em serial. Ou seja, continua complicado sem um programador de verdade. Este é o motivo do USBASP !

O que você vai fazer é exatamente isto, apagar o bootloader e usar ele normalmente. Mas se quiser manter um Bootloader, existe alguns do próprio Bascom para ser gravado. Eu, pessoalmente, nem sei o que é isto, eu uso ele puro, apagado mesmo totalmente.

Apagar o bootloader significa simplesmente fazer o upload do arquivo .hex gerado no BASCOM, certo?

Não.... Nos processadores da linha Atmega, existe uma área reservada para isto, bootloader, que é onde voce pode colocar um programa para facilitar um futuro update do seu programa real que está gravado na área flash normal.

Quando voce usa um Arduino, que depende do bootloader, voce não pode apagar todo o processador. Porisso que é melhor utilizar o gravador pelo Bascom, com os comandos prontinhos.

Quando voce for montar o seu projeto usando apenas um microcontrolador ( sem o Arduíno ) , voce gera o .hex, mas grava o chip pela interface ICSP, usanco aquele programador USBASP.

Quando você utiliza o Arduíno, tudo é feito de maneira transparente utilizando a própria interface USB !

Inclusive tem uma coisa legal, voce pode usar um terminal no Bascom mesmo para conversar com o seu programa no Arduíno, basta configurar a porta serial do terminal para ser igual à do seu Arduíno.

O Programmer's Notepad pode mudar sim os textos, cores, tudo, existe um menú para voce trocar e ficar tudo exatamente como voce quer.

Acho que estou entendendo o que pode estar ocorrendo. Há dois arquivos para se baixar no sítio do Notepad. Eu baixei o que é direto, sem precisar instalar. Basta rodar o arquivo notepad++.exe que já vem pronto (depois de descompactado). Ele não fica instalado no PC, apenas executo o arquivo. Acho que este modo não salva as alterações realizadas por mim. Vou baixar o outro modo e ver se as alterações permanecem.

Concordo com voce, essa interface já poderia ter sido muito melhorada.... uma vez um amigo disse que o programa BASCOM deve ter sido escrito por um engenheiro ..... funcionamento 10 e estética 0 .... hoje eu digo que ele tinha razão kkkkkk !

Isso é verdade! Pelo menos é o que acontece comigo e tenho uma explicação. Dá tanto trabalho para fazer a coisa com os detalhes que nos são relevantes, que no final abrimos mão dos floreios.

Mas não concordo com malabarismos. Realmente só saberei quando usar o BASCOM por algum tempo. Até lá, desconsidere o comentário. Foi apenas uma suposição.

Num esquenta, pode perguntar o que quiser, mais tarde eu posto aqui como eu configurei o programador no bascom, e você vai ver a tranquilidade que é fazer isto com um Arduíno Uno.

Ok, grato.

Como uma sugestão, siga este wiki : http://wiki.mcselec.com/Getting_started_with_Arduino_UNO , pois é o mesmo procedimento !

Assim você já vai usando o seu Arduíno !

Vou dar uma olhada nele, apesar de já ter baixado tanta coisa sobre o Arduino e ter lido o suficiente para andar com os próprios pés. O Arduino é muito fácil, por isso é o mais popular entre os hobistas. Entendo que por ser tão fácil possua limitações intrínsecas, mas o ganho em tempo de projeto compensa largamente.

Estou estudando o seu tutorial. É realmente esclarecedor e tira muitas dúvidas para o iniciante. Infelizmente cheguei no exemplo 5. Ele já consome 66% da memória (mais de 2k bytes). Como ainda não entrei na parte do hardware, não há problema quanto a limitação de memória da versão demo do BASCOM.

Outra coisa é que o BASCOM gerou o arquivo .hex, sem informar que ultrapassou o limite da versão demo. Será que a limitação não é mais de 2k bytes, aumentando a quantidade? Como posso identificar esta limitação. Você que tem algo a acrescentar sobre isso?

Sim, o autor deu uma colher de chá... desde o ano passado a limitação é de 4K !!!!!!

Grato.

MOR_AL

Minhas respostas estão acima em vermelho.

Apenas para esclarecer melhor :

Enquanto voce usar o Arduíno, esqueçe o conector ICSP... tudo no arduíno é feito usando o próprio bootloader dele, basta fazer a configuração correta do Bascom, como eu fiz abaixo.

Seguem as imagens onde mostro a configuração do meu :

2igh.png

A última linha é muito grande, segue ela aqui :

7xsh.png

No seu caso, usando um Atmega8, voce tem de mudar o "m328p" para o "m8p" ou "m8" , e a porta serial tem de ser informada a que aparece em seu computador. No meu está como "com4".

Ah, e o local do programa em seu micro pode ser diferente também.

Veja a informação da limitação do Bascom :

7ls0.png

Não estranhe a versão que aparece na primeira tela, eu sou um dos beta tester da nova versão que é a 2.0.7.7 .

Update -> acabou de sair oficialmente o novo release. Mudou bastante coisa na interface, tem um novo Code Explorer, agora mostra a indentação do código, acabei de baixar e ficou bem legal. Dá uma olhada no Fórum, tem um post com as novidades todas.

Boa diversão, meu amigo ! Eu acredito que tudo o que voce está fazendo vai lhe abrir um novo mundo de possibilidades.

Paulo

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Não estranhe a versão que aparece na primeira tela, eu sou um dos beta tester da nova versão que é a 2.0.7.7 .

Update -> acabou de sair oficialmente o novo release. Mudou bastante coisa na interface, tem um novo Code Explorer, agora mostra a indentação do código, acabei de baixar e ficou bem legal. Dá uma olhada no Fórum, tem um post com as novidades todas.

Boa diversão, meu amigo ! Eu acredito que tudo o que voce está fazendo vai lhe abrir um novo mundo de possibilidades.

Paulo

O que é que tem de interessante na versão 2.0.7.7 ?

 

Comandos novos por exemplo ?

 

Consegui um Embarcadeiro XE5 (Delphi), ele tem suporte a ARM e android. Ainda não instalei mas pode ser interessante fazer umas experiências com Android comunicando com Arduino (via bluetooth, rede ou wifi) , e quem sabe eu comece a me meter com o Arduino com controlador ARM. Pascal é a minha praia, estou um pouco enferrujado (bastante) mas nada que seja impossível de contornar se eu estiver com a motivação para isso.

Link para o comentário
Compartilhar em outros sites

@Intrudera6,

Alguns comandos tiveram modificações, como por exemplo o SPIMOVE(), que agora permite especificar quantidade de bytes... Isso ajuda muito no caso de voce usar os novos displays Rgb que possuem interfaçe SPI, deve mais que dobrar o desempenho dos displays.

Legal isso de Arduíno e Android, de vez em quando aparecem alguns posts no Fórum do Bascom, tem bastante gente usando multiplataformas.

Você está enferrujado ????? Kkkkkk imagina eu com 54 anos kkkkk .

É que nem andar de bicicleta, é só você resolver montar numa que já sai andando, mesmo ficando 20 anos sem andar.

Paulo

Link para o comentário
Compartilhar em outros sites

Já fiz algumas coisas interessantes em Delphi, mas isto já tem mais de 15 anos que não faço nada. Eu nunca cheguei a dominar programação orientada a objeto (OO), o meu forte era programar a moda antiga (então você imagina como era fazer uma interface com usuário sem ter domínio de Orientação a Objeto em Delphi). Os meus programas funcionavam com grande eficiência matemática, mas a interface era horrível (falta de OO). Na época eu trabalhava com PO, que consome enormes recursos computacionais nos seus modelos, e estava então tudo bem, a interface era também para engenheiro.

 

Teve um programa (grande programa) que eu fiz que no início eu rodava ao sair do trabalho para ver o resultado no dia seguinte (e às vezes não tinha terminado), mas os recursos computacionais foram melhorando (e eu fui otimizando o código, usando assembler no looping principal entre outras coisas), que chegava a demorar menos de 1 hora numa otimização. Hoje já tem versões em macro rodando em planilha excel que rodam em minutos (a lógica ficou bem mais enxuta e eficiente).

 

Não vai ser tão fácil assim remover a ferrugem.

.

Link para o comentário
Compartilhar em outros sites

  • 2 meses depois...

Muita gente quando começa a brincar com os microcontroladores tem dificuldades quanto quer mostrar algum resultado em um display de Leds, seja ele de 7 segmentos ou em matrix 8x8 .

 

Vou publicar aqui alguns exemplos para os iniciantes, com exemplo de ligação de circuito e os programas de exemplo. Todos utilizam o Atmega328P, que é o mesmo utilizado no Arduíno Uno.

 

 

CASO 1 - Display de 7 segmentos com 4 dígitos multiplexados

 

Veja o esquema :

 

zssi28.jpg

 

Segue o programa que faz um contador de 0000 até 9999 :

'----------------------------------------------------------------------
' PROGRAMA MULTIPLEX1 - Implementa o Multiplex com 4 dígitos, e
' um contador para ficar alterando os numeros a serem mostrados.
' Mostra semelhante a um multímetro, mostrando sempre 4 digitos acesos
' por exemplo, quando é 0 mostrará 0000 .
' Este programa utiliza o Timer0 de 8 bits para a base de tempo
' e implementa um refresh de 120 Hertz aproximado.
'----------------------------------------------------------------------
$crystal = 8000000
$regfile = "m328pdef.dat"
$hwstack = 40
$swstack = 16
$framesize = 32
Dim Digitos(4) As Byte
Dim Disp_index As Byte
Dim Disp_aux As Byte
Dim Disp_flag As Bit
Dim Dp_position As Byte
Config Portb = Output
' PortB vai acender os segmentos, usaremos todos como saída.
Config Portc.0 = Output
Config Portc.1 = Output
Config Portc.2 = Output
Config Portc.3 = Output
' portc comanda qual display será aceso. usamos os bits PortC.0 até PortC.3
' assim configuramos apenas os 4 bits como saída.
Digitos(1) = 11
Digitos(2) = 11
Digitos(3) = 11
Digitos(4) = 11
Disp_index = 0
Dp_position = 0
Config Timer0 = Timer , Prescale = 1024
Timer0 = 191
' vamos gerar uma interrupção a cada 8,32 milissegundo
' que corresponde a uma frequencia de Multiplex de 120,2 Hertz
' ou seja, cada display vai acender 30 vezes por segundo !
On Timer0 Timer0_sub
Enable Timer0
Enable Interrupts
Wait 1
' todos os segmentos vao ficar acesos por 1 segundo
' util para ver se algum foi danificado!
Digitos(1) = 0
Digitos(2) = 0
Digitos(3) = 0
Digitos(4) = 0
' começaremos do numero 0000
Do
Waitms 100
Incr Digitos(4)
If Digitos(4) > 9 Then
  Digitos(4) = 0
  Incr Digitos(3)
End If
If Digitos(3) > 9 Then
  Digitos(3) = 0
  Incr Digitos(2)
End If
If Digitos(2) > 9 Then
  Digitos(2) = 0
  Incr Digitos(1)
End If
If Digitos(1) > 9 Then
  Digitos(1) = 0
End If
Dp_position = 4
Loop
End

'------------- ROTINAS DE INTERRUPÇÃO ------------------------------------
Timer0_sub:
' Rotina chamada pelo Timer0 a cada interrupcao
Timer0 = 191
'recarrega o timer novamente
Portc.0 = 0
Portc.1 = 0
Portc.2 = 0
Portc.3 = 0
' apaga todos os dígitos   
If Disp_index > 3 Then
  Disp_index = 0
End if
' vamos ver se já fizemos o ultimo digito, pois então teremos de   
' começar pelo primeiro novamente
Incr Disp_index
' aqui já apontamos para o próximo digito   
Disp_aux = Digitos(disp_index)   
' pegamos o numero que queremos mostrar
Portb = Lookup(disp_aux , Table_0f)
' verifica se temos de acender o ponto decimal também
If Disp_index = Dp_position Then
  Disp_aux = Lookup(12 , Table_0f)
' procura na tabela a posição do segmento
  Portb = Portb Or Disp_aux
' acende apenas o ponto decimal   
End If
' agora vamos acender os segmentos correspondentes ao numero
Disp_aux = Lookup(disp_index , Table_mux)
Waitus 15
Portc = Portc Or Disp_aux
' faz acender o dígito correto
Return

' TABELA DE SEGMENTOS A ACENDER
Table_0f:
Data &B00111111 , &B00000110 , &B01011011 , &B01001111   '0,1,2,3  
Data &B01100110 , &B01101101 , &B01111101 , &B00000111   '4,5,6,7
Data &B01111111 , &B01100111 , &B00000000 , &B11111111   '8,9,NADA,TUDO
Data &B10000000                                          'PONTO' TABELA INDICADORA DO DISPLAY A ACENDER

Table_mux:
Data &B00000000 , &B00000001 , &B00000010 , &B00000100 , &B00001000

CASO 2 - Display de 7 segmentos com 4 dígitos usando o MAX7219

 

Segue o esquema de ligação :

 

25q3d4w.jpg

 

Segue o programa, que é um voltímetro que mostra a tensão aplicada ao pino 28 do Atmega328P ( entre 0 e 5 Volts ) :

'----------------------------------------------------------------------
' PROGRAMA MULTIPLEX4 - Implementa um voltímetro que pode medir
' tensão entre 0 e 5 volts, e mostra com até 3 casas depois da vírgula
' Usaremos agora o MAX7219
' os displays estao numerados assim  D4-D3-D2-D1
' Este programa utiliza aritmética de ponto flutuante.
'----------------------------------------------------------------------
$crystal = 8000000
'vamos usar o clock interno que é de 8 Mhz.
$regfile = "m328Pdef.dat"
' vamos compilar para o ATMEGA328P
$hwstack = 40
$swstack = 32
$framesize = 52
Dim Digitos(4) As Byte
Dim Digit_temp(6) As Byte
' nosso display terá 4 dígitos
Dim Dp_position As Byte
Dim Numero As Word
Dim Str_valor As String * 5
Dim I As Byte
Const Reg_decode_mode = &B1111100111111111
Const Reg_scan_limit = &B1111101111111011
Const Reg_intensity = &B1111101011111111
Const Reg_shutdown = &B1111110011111111
Dim Resultado As Single
' RESULTADO tem de apresentar numeros não inteiros
Config Portc.0 = Output                                     'data
Config Portc.1 = Output                                     'load
Config Portc.2 = Output                                     'clock
Max_data Alias Portc.0
Max_load Alias Portc.1
Max_clock Alias Portc.2
Digitos(1) = 0
Digitos(2) = 0
Digitos(3) = 0
Digitos(4) = 0
Max_load = 1
Config Adc = Single , Prescaler = Auto , Reference = Avcc
Start Adc
' aqui configuramos o conversor a/d para fazer uma leitura
' apenas quando pedirmos, vai usar como referencia 5V
Enable Interrupts
' aqui habilitamos as interrupções definidas no programa
Dp_position = 4
' ponto decimal sempre no primeiro dígito
'vamos agora inicializar o MAX7219
Numero = Reg_shutdown
Gosub Sai_max
Numero = Reg_decode_mode
Gosub Sai_max
Numero = Reg_intensity
Gosub Sai_max
Numero = Reg_scan_limit
Gosub Sai_max
'já configurado !
Do
Waitms 100
Numero = 0
For I = 1 To 32
Numero = Numero + Getadc(5)
Next I
Shift Numero , Right , 5
'fizemos a soma de 32 leituras consecutivas, e calculamos   
'a média para ter uma melhor estabilidade   
Numero = Numero * 5  
Resultado = Numero / 1023   
' aqui fizemos o chamado fator de escala, pois o fundo de escala   
' é 5 volts e nesse caso obteremos leitura de 1023, então   
' basta multiplicar por 5 e dividir por 1023, e já teremos o   
' valor em volts.   
Str_valor = Fusing(resultado , "#.###")   
' convertemos o resultado em uma string já formatada como queremos   
' e com arredondamento na última casa decimal ! Mais uma   
' poderosa instrução do Bascom   
Str_valor = Trim(str_valor)   
' eliminamos qualquer espaço em branco   
Str2digits Str_valor , Digit_temp(1)   
' fazemos o mesmo truque em tirar todos os digitos da string e   
' armazenar em uma matriz como número, assim fica muito simples   
' pegar cada dígito e apresentar.   
If Digit_temp(1) = 3 Then
' o valor a mostrar é zero
  Digitos(1) = 0
  Digitos(2) = 0
  Digitos(3) = 0
  Digitos(4) = 0
Else
' temos de ordenar os digitos, agora com uma novidade, pois     
' digit_temp(5) tem o ponto decimal, então pularemos      
  Digitos(4) = Digit_temp(6)
  Digitos(3) = Digit_temp(4)
  Digitos(2) = Digit_temp(3)
  Digitos(1) = Digit_temp(2)
End If
For I = 4 To 1 Step -1
  Numero = Digitos(i)
  If Dp_position = I Then
    Numero = Numero Or &B1111000010000000
  End If
  Select Case I
    Case 1
      Numero = Numero Or &B1111010000000000
    Case 2
      Numero = Numero Or &B1111001100000000
    Case 3 
      Numero = Numero Or &B1111001000000000
    Case 4 
      Numero = Numero Or &B1111000100000000
  End Select
  Gosub Sai_max
Next I
Loop

Sai_max:
Max_data = 0
Max_clock = 0
Max_load = 0
Shiftout Max_data , Max_clock , Numero , 1
Max_load = 1
Return
End

CASO 3 - Usando duas Matrizes 8X8 com dois MAX7219

 

Veja o esquema de ligação abaixo :

 

vnh6v5.jpg

 

Segue um programa que mostra nas 16 colunas os numeros em binário indo de 1 até 16 . É um excelente ponto de partida para um display de textos, pois pode ser alterado fácilmente para trabalhar com até 31 matrizes !

'----------------------------------------------------------------------
' PROGRAMA Matrix4 - Usando matrizes com os MAX7219
'
' Permite o uso de 2 até 31 matrizes de 8x8 , criando uma unica no formato
' de 248 x 8.
' Os valores a serem mostrados estão armazenados em uma matrix de tamanho
' 8 vezes o numero de matrizes, no nosso caso de tamanho 16.
' É um programa que serve de ponto de partida para um display mostrador
' de mensagens de texto.
'----------------------------------------------------------------------
$crystal = 8000000
'vamos usar o clock interno que é de 8 Mhz.
$regfile = "m328Pdef.dat"
' vamos compilar para o ATMEGA328P
$hwstack = 40$
swstack = 32
$framesize = 350
' a seguir, é onde especificamos a quantidade de matrizes, basta mudar
' para quantas voce quiser !
Const N = 2
' N= numero de matrizes  ( limitado entre 2 e 31 )
Const N1 =(n) * 8
Const N2 =(n) - 1
Dim X As Byte
Dim Y As Byte
Dim Z As Byte
Dim Base As Byte
Dim Numero As Word
Dim I As Byte
Dim Digitos(n1) As Byte
' Esta matriz Digitos() vai conter todos os valores a serem mostrados
' desde a primeira coluna ( digitos(1) ) até a ultima coluna
' ( digitos(8Xnumero de matrizes) )
Const Reg_decode_mode = &B1111100100000000
Const Reg_scan_limit = &B1111101111111111
Const Reg_intensity = &B1111101011111111
Const Reg_shutdown_off = &B1111110011111111
Const Reg_shutdown_on = &B1111110011111110
Config Portc.0 = Output                                     'data
Config Portc.1 = Output                                     'load
Config Portc.2 = Output                                     'clock
Max_data Alias Portc.0
Max_load Alias Portc.1
Max_clock Alias Portc.2
' vamos colocar alguns valores na matriz
For I = 1 To N1
  Digitos(i) = I
Next I
Enable Interrupts
'vamos agora inicializar os MAX7219
Numero = Reg_shutdown_off
Gosub Init_max
Numero = Reg_decode_mode
Gosub Init_max
Numero = Reg_intensity
Gosub Init_max
Numero = Reg_scan_limit
Gosub Init_max
'já tudo configurado !
'a seguir, loop do programa principal
' dentro do trecho do DO...LOOP pode ser colocado todo o programa
' que poderia tratar as mensagens e apresentar no display
' para fazer um display de mensagens rolantes.
' o programa deveria pegar as letras, e procurar os bytes correspondentes
' em uma tabela, e guardar na matriz toda a mensagem. A seguir, bastaria
' apenas ficar "rodando a matriz", isto é, pegar o primeiro elemento e  guardar
' ele em uma variável, e em seguida pegar o segundo elemento e armazenar no
' lugar do primeiro, e assim em diante, sendo que finalmente o elemento
' que guardamos logo no início será armazenado no ultimo elemento, e podemos
' atualizar o display.
Do
Waitms 1000  
Gosub Sai_max
'atualiza matrizes
Loop

'---- sub-rotina para atualizar matrizes -----------------
Sai_max:
For Y = 1 To 8
  For X = 0 To N2
    Base = X
    Shift Base , Left , 3
    Numero = Y
    Shift Numero , Left , 8
    Z = Base + Y
    Numero = Numero + Digitos(z)
    Shiftout Max_data , Max_clock , Numero , 1
  Next X
  Max_load = 1
  Max_load = 0
Next Y
Return

'---- sub-rotina para enviar comandos aos Max7291
Init_max:
For X = 1 To N
  Shiftout Max_data , Max_clock , Numero , 1
Next X
Max_load = 1
Max_load = 0
Return
End

Em breve publicarei um artigo que explica em detalhes todos os processos utilizados nos programas, bem como a teoria e os calculos de valores.

 

Paulo

Link para o comentário
Compartilhar em outros sites

  • 3 semanas depois...

LED QUE ACENDE NA FALTA DE LUZ, SEM SENSOR , USANDO UM ARDUÍNO !

 

Faz algum tempo, ví um circuito interessante em uma revista Elektor, que era muito curiosa : Um LED que acende na falta de luz, onde o sensor é o próprio LED !!!!

 

Desafiando o senso comum, um Led também é um fotosensor, e o truque é utilizar a sua capacitãncia interna da junção.

 

Quando um Led está recebendo luz, aumenta a corrente de descarga da junção. E é justamente este efeito que vamos explorar.

 

Primeiro, o Led é polarizado inversamente, durante um tempo muito pequeno, da ordem de microsegundo, porém, suficiente para que seja armazenada uma carga em sua junção, a qual pode se manter por algumas centenas de milisegundos. Durante este processo, os pinos do AVR envolvidos com o Led estarão em alta impedância, fazendo com que essa carga na junção seja "dissipada" apenas pelos efeitos da corrente de fuga da junção.

 

O que o nosso programa faz é medir esse tempo de descarga.

 

Esperamos cerca de 10 milisegundos, e após isto verificamos se o nivel da tensão no Led mudou para abaixo de 2,5V. Isto significa que existe luz incidindo sobre o Led.

 

Porém, se o nível ainda estiver acima de 2,5 Volts, significa que o Led está recebendo pouca luz, e então iremos repolarizar o Led e acender ele por cerca de 1 segundo.

 

Após este tempo, vamos esperar que o Led se descarregue, e voltamos a fazer todo o processo.

 

O que voce vai perceber é que existe uma pequena piscada , pois o Led demora algumas dezenas de milisegundos para cortar totalmente e perder as cargas armazenadas, para que então possamos repolarizar para iniciar o processo.

 

Segue o esquema da montagem, lembrando que o resistor está ligado no ANODO do Led :

 

2yvpfkx.jpg

 

Reparem que basta apenas um Arduíno, um resistor de 150 ohms, e um LED vermelho de 5 mm. Mas pode ser usado em qualquer chip da família AVR, bastando mudar o chip, o clock e os pinos utilizados, e recompilar.

 

 

Segue o programa em Bascom :

'LED-Sensorleuchte
'K an Pc1
'A über 1 k an Pc0
'LED leuchtet bei Dunkelheit
'Extraído de um artigo da Elektor e modificado para rodar no UNO
$regfile = "m328pdef.dat"
$crystal = 16000000
$hwstack = 60
$swstack = 66
$framesize = 60
Dim N As Byte
Do
N = 0
Ddrc.0 = 1
Portc.0 = 0
Ddrc.1 = 0 
Portc.1 = 1
Portc.1 = 0
Do
N = N + 1
If N > 10 Then
  N = 11
  Ddrc.1 = 1 
End If
Waitus 1000
Loop Until Pinc.1 = 0
If N > 10 Then
  Ddrc.0 = 1
  Portc.0 = 1
  Ddrc.1 = 1
  Portc.1 = 0 
  Waitms 2000
End If
If N < 11 Then
  Ddrc.0 = 1       '1
  Portc.0 = 0
  Ddrc.1 = 0
  Portc.1 = 0
End If
Waitms 10
Loop
End
 

Esse programa tem o tamanho bem reduzido, cerca de 346 bytes !

 

Boa diversão !

 

Paulo

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Paulo!

Hoje li mais um pouco da sua apostila.

Porque você não inclui esses novos programas em sua apostila? Quanto mais exemplos melhor.

Você poderia discriminar, no título do endereço para download (em sua primeira postagem), o número da versão. Aí bastaria identificar a versão, para baixá-la ou não.

Seria assim

http://www.4shared.com/rar/x8u4oNuF/Tutorial_AVR_Vx.html

onde V é versão (claro, né) e x seria o número dela.

MOR_AL

Link para o comentário
Compartilhar em outros sites

@MOR,

Acho mais interessante para o Fórum que os textos sejam expostos aqui, em vez de se fazer o download para abrir.

Por exemplo, o seu exemplo indica um arquivo no 4shared, zipado.

Repare que tem um recurso novo no Fórum, que é voce enviar como .PDF , e o Fórum permite abrir on-line o arquivo. Atualmente estou fazendo dessa maneira.

E aqui no Fórum, existe a possibilidade de vice ler posts de outras pessoas, e muitas vezes uma eventual dúvida sua pode ter sido a msma de outro, e a resposta estará no Fórum.

É uma boa ideia sim acrescentar os outros programas, assim bastaria fazer o download e tudo estaria junto.

Vou atualizar este fim de semana.

E está se divertindo com os Avrs ?????

Eu estou sofrendo fazendo a integração do Bascom com o Assembler, quero fazer um analizador lógico portátil que realmente seja útil, mas fazer a captura dos dados, bem como armazenar a temporização do Timer1, tudo em 40 ciclos de máquina tá meio complicado kkkkk .

O legal é que desenferrujou as engrenagens, e estou brincando com um poudo de Assembler de novo.... Po aprender um novo Assembler, depois de já ter usado 4 famílias diferentes em Assembler, parece loucura.... Tem horas que dá nó e misturo tudo.

Mas vou conseguir. Assim fico com o melhor dos dois mundos, facilidade absurda do Bascom e onde precisar de performance extrema , Assembler puro ! Prá mim, isso enterra o C mais fundo ainda, pelo menos para mim.

Paulo

Link para o comentário
Compartilhar em outros sites

Nossa! Que dificuldade!!!

Tentei adquirir o software do BASCOM.

Entrei na home page e na Shopping zone selecionei Compilers (10).

Na nova página, antes de selecionar BASCOM-AVR (Download version), selecionei Login or register first, pois me pareceu natural.

Tive que me cadastrar, aceitar os termos, enviar email, introduzir nicname e senha. Depois fora informado que precisaria acessar meu email para ativação.

Tudo bem!

Acessei meu email e ativei o cadastro, mas era autorização para participar do fórum, não tinha nada a ver com a compra do produto.

Retornei à página antes de selecionar o Login or register first.

Selecionei o BASCOM-AVR (Download version). Fui direcionado para nova página, que continha mais detalhes do que o aplicativo continha.

Depois de procurar por algum local para comprar e errar feio, selecionei Shop Download Area. Me foi informado que não tinha autorização para ver o conteúdo. Teria que fazer o login.

Cliquei na caixa da lateral esquerda que continha meus dados para logar. Fui direcionado para uma nova página que informava que minha conta nova era inativa ou estava com o nome do usuário incorreto. O nome que eles haviam colocado era meu email. Acreditei que estivesse correto, caso contrário, para que iriam deixar preenchido?

Coloquei o mei nicname e enter.

Pensando que iria ser direcionado para a aquisição do produto. Ledo engano.

Na nova página. O que mais se aproximava de uma aquisição era, novamente, Shop download area. Fui nessa.

Apareceu mais uma página, aparentemente para fazer o download, mas solicitando uma "identidade de download" que eu recebera via email. Como posso ter recebido, se ainda nem consegui fazer a seleção do produto de modo que eles entendam de minhas intenções?

Depois de novas tentativas, finalmente apareceu na tela o bendito Add to chart.

Depois de adicionar nome sobrenome, endereço completíssimo (para uma transferência via web) e telefone, terminei a primeira etapa da aquisição.

Concordei com os termos de aquisição e depois de mais umas 4 ou 5 novas páginas, apareceu o custo final. Haviam incluído o custo do Paypal.

Nem seria pelos poucos euros a mais. O que me fez desistir foi toda esta burrocracia e a malícia de informar, após ter dadas todas as informações, que o valor a ser pago mudara.

Vou ver outra opção via Mouser e ver no que dá.

MOR_AL

 

 

 

Link para o comentário
Compartilhar em outros sites

@MOR,

 

kkkkk enrolado isso de comprar, é o que eu falo toda hora, é site feito por engenheiro ... não estão nem aí para a estética, ou a praticidade ....

 

Eu comprei com o meu cartão de crédito mesmo, não foi via paypal, nem tinha isso na época. 

 

Via mouser e o outrooficial, aqui no Brasil,,vai custar bem mais caro, voce vai constatar isso rapidinho

 

Use o cartão direto, que é bem mais rápido, eu recebí o link em menos de duas horas e já tava tudo instalado rapidinho.

 

Paulo

Link para o comentário
Compartilhar em outros sites

@MOR,

 

kkkkk enrolado isso de comprar, é o que eu falo toda hora, é site feito por engenheiro ... não estão nem aí para a estética, ou a praticidade ....

 

Eu comprei com o meu cartão de crédito mesmo, não foi via paypal, nem tinha isso na época. 

 

Via mouser e o outrooficial, aqui no Brasil,,vai custar bem mais caro, voce vai constatar isso rapidinho

 

Use o cartão direto, que é bem mais rápido, eu recebí o link em menos de duas horas e já tava tudo instalado rapidinho.

 

Paulo

 

Kkkkk!!!

Acabei te pescando mesmo, hehe!

Queria as dicas, grato.

Mas assim que eu me acalmar totalmente, efetivarei a compra via Paypal mesmo, Só faltou aceitar a conta. Já fiz muitas compras por meio do Paypal e não tive reclamação. Além do mais, procuro minimizar a divulgação do número do cartão de crédito internacional.

Na mouser está o valor aproximado em dólares, mas eles não tem disponível. Outro detalhe é que na foto do produto aparece um CD (o arquivo deve vir por email). Sei que a "foto" do produto pode não corresponder à realidade, mas quando ví que não estava disponível, desisti.

MOR_AL

Link para o comentário
Compartilhar em outros sites

@MOR,

 

kkkkkk po eu sou um peixe bem grande viu !!!!!

 

Tranquilo, se acalme porque esses problemas tão acontecendo direto em todos os lugares.

 

O Ebay acabou de mudar algo no site deles também que me deixa p da vida.... os preços dos produtos estão aparecendo em Reais agora !!!! E não tem como mudar, pois eu já uso sempre lingua English. 

 

Perdi a minha referência de preços !

 

Hoje , eu compraria pelo PAYPAL mesmo, é uma maneira de proteger os dados do cartão. Mas existem algumas taxas para isso. Eu uso um MAC, e quando compro software para ele é a mesma porcaria, sempre tem de pagar algum extra por causa do uso do Paypal. Mas prefiro pagar por ele mesmo assim...... 

 

Paulo

Link para o comentário
Compartilhar em outros sites

Acabei de efetivar a compra do Bascom.... e acabei de sujar tudo :(

Efetuei o setup e instalei o Bascom. Aí o programa me pediu para reinicializar o PC.

Me lembrei que tinha o Bascom limitado e pensei "vou desinstalar a versão demo para não interferir na versão full"

Aí é que nasceu o meu problema.

O Bascom reconhece a versão demo e a considera quando for instalar a versão full. Na ansiedade, eu não tinha atentado para este detalhe.

Ao reinicializar o PC apareceu uma informação que o Bascom.exe não poderia ser aberto, pois estava faltando o arquivo BSCA.DLL, que eu tentasse reinstalar outra vez que poderia resolver o problema.

Tentei mais duas vezes e nada.

Escrevi (com o meu parco inglês) para que eles me auxiliassem.

Vamos esperar para ver o retorno.

MOR_AL

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

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