• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Basic step1
 

Basic step1

on

  • 627 views

Material para alunos do curso de Introdução à Engenharia Elétrica, Universidade de Passo Fundo, linha de Mecatrônica.

Material para alunos do curso de Introdução à Engenharia Elétrica, Universidade de Passo Fundo, linha de Mecatrônica.

Statistics

Views

Total Views
627
Views on SlideShare
627
Embed Views
0

Actions

Likes
0
Downloads
10
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

CC Attribution-NonCommercial LicenseCC Attribution-NonCommercial License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Basic step1 Basic step1 Presentation Transcript

    • Universidade de Passo FundoCurso de Engenharia ElétricaIntroduçãoao Basic Stamp Prof. Fernando Passold (2013) Prof. Adriano Luís Toazza (2012)
    • O Microcontrolador Basic Step §  É uma versão brasileira do Basic Stamp I, kit do fabricante americano Parallax à www.tato.ind.br §  Fácil de programar (linguagem BASIC) pois os comando estão em português e inglês. §  Alimentação de 7,5V a 15V §  Possui 8 entradas e saídas com capacidade de corrente de até 25mA (um led comum consome tipicamente uns 12 mA) 1 mA = 0,001 A
    • Basic Step Portas de Entra/Saída (conexões) PIC16C56 microchip
    • Basic Stamp § uC: Microchip PIC 16C56a § 4 MHz; § 2.000 instruções/seg; § RAM: 16 bytes (2 I/O, 14 variáveis); § EEPROM: 256 bytes, 80 instruções; § 1 mA Run/ 25 uA Slep; § 32 comandos BASIC
    • Basic Step - Software§ O Basic Step é programado pela linguagem Tbasic ou Pbasic ambas muito fácil de programar (uma em inglês e a outra em português)
    • Basic Step
    • Compilador – barra de ferramentas
    • Programação do Basic Step§ Para programar o Basic Stamp são necessários:F Placa do Basic StepF  Fonte de alimentação CCF  Compilador Basic StepF  ComputadorF  Cabo de gravação (serial)
    • Intro. Eletrônica Digital§ Alguns conceitos: -  Estado: situação em que se encontra parte do circuito. No caso de sistemas digitais, só existem 2 estados distintos: 2 possibilidades, conhecido como sistema binário (2), cujos algarismos (ou estados) são: “0” ou “1”. -  O “0” poder ser interpretado como desligado, apagado, desativado, desconectado; Em eletrônica digital à “0”: nível lógico BAIXO -  O “1” pode ser interpretado como ligado, acesso, ativado, conectado; Em eletrônica digital à “1”: nível lógico ALTO.
    • Experimento 1 Chanfro A+ K- Amarelo,violeta, marrom, dourado = 470 Ohms, 5% ou Laranja, laranja, marrom, dourado = 330 Ohms, 5%
    • Experimento 1 Programa: output 0 novamente: pin0=0 Chanfro pause 1000 A+ K- pin0=1 pause 1000 goto novamente
    • Experimento 1
    • Experimento 1
    • Lista de Instruções(Palavras reservadas do Basic Stamp)
    • Experimento 2 – Trabalhando com saídasa) Sinalizador para saída de veículos Faça um programa capaz de alternar o estado dos leds. Chanfro A+ K-
    • Experimento 2 – Trabalhando com saídas a) Sinalizador para saída de veículos Faça um programa capaz de alternar o estado dos leds. Exemplo: repita: low 0 ‘nível baixo na porta 0 high 0 ‘nível alto na porta 0 pause 500 ‘espera 0,5 seg low 1 ‘nível alto na porta 1 high 0 ‘nível baixo na porta 0 pause 500 goto repita
    • Experimento 2 – Trabalhando com saídas b) Seqüencial de 6 canais Chanfro A+ K-
    • Experimento 2 – Trabalhando com saídasObservações
    • Variáveis no Basic Stamp§  Para declarar variáveis usar comando ‘symbol’: Ex.: symbol  contador  =  b0  §  3 tipos de variáveis disponívels: bit, byte (8 bits) e word (16 bits).§  Declarar variáveis do menor tipo possível (economizar memória);§  O Basic Stamp possui número limitado de variáveis (máximo): -  7 variáveis do tipo word (w0 até w6); -  14 variáveis do tipo byte (b0 até b13) e -  16 variáveis do tipo bit (bit0 até bit15).§  1 variável tipo byte: números de 0 até 255 (2^8 -1);§  1 variável tipo word: números de 0 até 65.535 (2^16-1).§  Na prática o uC do Basic Stamp I disponibiliza apenas 14 registradores de 8 bits cada um!
    • Variáveis no Basic Stamp§  Para declarar variáveis usar comando ‘symbol’: Ex.: symbol  contador  =  b0  §  3 tipos de variáveis disponívels: bit, byte (8 bits) e word (16 bits).§  Declarar variáveis do menor tipo possível (economizar memória);§  O Basic Stamp possui número limitado de variáveis (máximo): -  7 variáveis do tipo word (w0 até w6); -  14 variáveis do tipo byte (b0 até b13) e -  16 variáveis do tipo bit (bit0 até bit15). Notar: Se w0  =  1201 à Implica em:§  1 variável tipo byte: números de 0 até 255 (2^8 b1 = 4 e b0 = 177 -1); Ou seja:§  1 variável tipo word: números de 0 até 65.535 1201 / 256 = 4 (2^16-1). 1201 - 256*4 = 1201 – 1024 = 177§  Na prática o uC do Basic Stamp I disponibiliza apenas 14 registradores de 8 bits cada um!
    • Exemplo usando variáveisExperimento 2) b) 2^6 = 64
    • Experimento 2 – Trabalhando com saídas c) Contador de década §  Monte o circuito da figura ao lado. §  Não esquecer de incluir resistores de 470 Ohms na conexão (série) de cada terminal do display com cada porta do Basic Step (sob pena de danificar o Display)!
    • Experimento 2 – Trabalhando com saídas d) Display “especial” §  Melhore o programa anterior (simples contador), para outro que consiga mostrar outros caracteres no display:
    • Experimento 2 – Trabalhando com saídas e) Gerando tons musicais O Basic Step possui um comando próprio para gerar tons musicais e ruídos. Todos os comandos utilizados pelo Basic Step podem ser consultados detalhadamente no “help” do compilador. Pin 7
    • Experimento 2 – Trabalhando com saídas e) Gerando tons musicais aleatoriamente O Basic Step possui um comando próprio para gerar notas musicais e ruídos “ SOUND “
    • Experimento 2 – Trabalhando com saídas e) Gerando tons musicais aleatoriamente O Basic Step possui um comando próprio para gerar notas musicais e ruídos “ SOUND “ SOUND  pino,  (nota,  duração)   Onde: nota varia de 0 127 duração varia de 1 a 255 “passos” de 12 ms Monte o circuito abaixo e conecte o “+” do capacitor no pino 7 do Basic Step
    • Experimento 2 – Trabalhando com saídas e) Gerando tons musicais aleatoriamente PROGRAMA: Gera tons aleatórios repete:   SOUND  7,(20,100,56,100,100,100,120,100)  gera  tons  musicais   SOUND  7,  (250,140)  gera  certo  tom  por  determinado  tempo   GOTO  repete   Monte o circuito abaixo e conecte o “+” do capacitor no pino 7 do Basic Step
    • Experimento 2 – Trabalhando com saídas e) Gerando tons musicais aleatoriamente PROGRAMA: Gera tons aleatórios 2 for  b2  =  0  to  127    SOUND  7,(25,10,b2,10)  sound  pino,  (nota,  duração)   Next                                                                     nota  [0..127]    duração  [1..  255  passos  de  12ms]   Monte o circuito abaixo e conecte o “+” do capacitor no pino 7 do Basic Step
    • Experimento 3 – Trabalhando com entradasPara declarar um pino como entrada utiliza-se o comando input e comosaída o comando output. Porém, se não for declarado, todos os pinos estãoconfigurado para serem entrada. a) Teclando tons musicais
    • Usando chaves push-botton Note a separação Vista superior: elétrica Eletricamente: Pistas (contatos) Forma de usar no proto-board: do proto-board:
    • Desafio Proposto§  Jogo de Memória;§  Efeito luminoso aleatório;§  Efeito luminoso + sonoro (jogo infantil)
    • Comandos Avançados§  GOSUB rotina ‘ ou EXECUTE ... end ‘ término do programa, não avança para próximas linhas rotina: ... return ‘ fim da sub-rotina, retorno da sub-rotina.
    • Experimento 3 – Trabalhando com entradasb) Escolhendo um Led: dentre 4 led’s será possível escolherum deles por intermédio de um único interruptorEste circuito utiliza o mesmo princípio de alguns relógios digitais e outrosequipamentos eletrônicos. Uma tecla permite selecionar várias funções (led).
    • Experimento 3 – Trabalhando com entradas b) Escolhendo um Led:dirs=%01111111    ‘pino  7  declarado  como  entrada,  demais  como  saída  let  b2=0:b3=0:b4=0    ‘zera  algumas  variáveis  ‘pins=$7f    loop:  if  pin7=0  then  proximo        quando  o  botão  é  acionado  vai  para        rotina  proximo  goto  loop                                      ‘senão  salta  para  loop    proximo:                                  ‘rotina  que  irá  incrementar  os  led’s  pause  300  if  b3<4  then  tabela            se  b3  for  menor  que  4  salta  para  tabela        b3=0                                    se  b3  for  maior  que  4  b3  e  b4  serão  zeradas        b4=0  tabela:                                          rotina  que  contém  a  tabela  de  saída  lookup  b3,(14,13,11,7),pins  b3=b3+1                                          incrementa  em  uma  unidade  b4=b4+30  SOUND  6,(b4,20)  goto  loop                          salta  para  o  início  do  programa