Escolar Documentos
Profissional Documentos
Cultura Documentos
A placa Lab_Uino foi desenvolvida como uma plataforma aberta para o desenvolvimento e aprendizagem de sistemas microprocessados. Utilizando o processador ATmega32U4 da Atmel, a placa permite sua utilizao e gravao apenas utilizando uma interface USB, possibilitando o desenvolvimento de pequenos sistemas at dispositivos que utilizam esta interface. Interfaces disponveis na placa: Interface USB para uso geral e gravao grava (CN9) 7 chaves para simulao de entrada e reset (CH1/CH7) 12 leds para indicao de sada (LD1/LD12) 1 conector padro ISP (CN3) 2 conectores de expanso para placa padro passo 100 mils (0,1 pol) (CN1/CN2) 1 conector para mdulos de LCD (LCD1) 4 conectores ctores de interface analgica (CN5/CN8) 1 conector DB25-Fmea Fmea similar interface paralela-PC paralela PC (Borda da placa) 1 conector RJ-45 45 com interface RS-232 RS (CN4)
Os sinais deste conector esto ligados diretamente diretamente ao processador ATmega32U4 como tambm em outros dispositivos da placa.
Chaves de simulao de entrada e reset Para facilitar a depurao de sistemas, a placa possui 6 chaves para simulao de entrada e 1 chave ve para reset do processador. 5 destas chaves esto ligadas aos sinais de entrada da porta paralela (ack, busy, paper_out, select_out e error), outra chave (prog) est ligada ao sinal HWB do processador , sendo usado para iniciar a gravao do processador aps reset (booloader) ou como uso geral, finalmente temos uma chave ligada ao reset do processador.
LEDs s indicadores das sadas Os 12 LEDs s (LD1 a LD12) esto conectados aos sinais de sada da porta paralela, sendo que nvel lgico 1 no sinal acende o led correspondente.
Conectores de expanso Para facilitar a conexo com outras ou placas de prottipos, a placa possui 2 conectores (CN1/CN2) com os sinais de entrada, sada, 5V e terra . Estes Estes conectores esto com a distncia ncia de passos de 100 mils, mils compatveis com placas padres para prottipos. Estes conectores tambm podem ser conectados atravs de conectores para flat-cable flat tipo 2x5 pinos.
Fig 5. Conectores de expanso Conector para mdulos de LCD A placa permite a conexo de mdulos LCD compatveis com o padro Hitachi Hitachi HD44780, HD44780 muito comum no mercado. Os pinos de dados no mdulo esto conectados nos pinos de dados da interface PC. Este conector possui 2 sinais exclusivos para controle do LCD e esto conectados ectados diretamente ao ATmega32U4, sendo o LCD_RS e LCD_E. Estes sinais podem ser utilizados como entrada ou sada genrica caso no se conecte o LCD. A comunicao com o LCD pode ser feita em 4 ou 8 bits, conforme o software de controle.
Conector padro ISP Este conector permite a gravao dos fusebits do processador ou a conexo de dispositivos com interface SPI. A sua pinagem compatvel com os gravadores ISP da Atmel.
Fig 6. Conector ISP Interfaces com sinais analgicos Para efetuar leitura de sinais analgicos, a placa possui 4 conectores (CN5 a CN8) com o pino central ligado diretamente as entradas do conversor analgico digital do processador. Os pinos externos esto ligados a 5V e terra, desta forma possvel a conexo conex direta de um potencimetro para simulao ou sensores de temperatura tipo LM35 como exemplo. Estes sinais esto ligados as entradas AD0,AD1,AD4 e AD5 do processador. Caso no desejado, estes sinais podem ser programados como entrada ou sada digital. Estes Es conectores tambm obedecem o passo de 100 mils.
Fig 7. Entradas Analgicas Interface RS-232 Esta interface possibilita a comunicao serial com outros sistemas no padro RS-232. RS O nvel do sinal j est no padro da interface (+/(+/ 9V) . Os sinais de transmisso sso e recepo esto disponveis no conector RJ-45 45 (CN4). Em algumas verses de placa este conector e o driver no esto equipados para possibilitar a conexo com mdulos Bluetooth com interface 5V.
Tabela de interligao de sinais A tabela mostra todas as conexes entre os conectores e o processador, bem como a ligao com o sinal equivalente da placa Arduino Leonardo. Interligao entre dispositivos
Sinal DB25_D0 DB25_D1 DB25_D2 DB25_D3 DB25_D4 DB25_D5 DB25_D6 DB25_D7 STROBE FEED ERROR INIT SELECT_IN ACK BUSY PAPER_OUT SELEC_OUT 5V GND PROG(HWB) LCD_E LCD_RS UART_RX UART_TX ADC5 ADC4 ADC1 ADC0 RESET
CN2 1 2 3 4 5 6 7 8
CN1 CN3
2 3 4 5 6 7 8 9 10 9 10 1
1 4 3
DB25 2 3 4 5 6 7 8 9 1 14 15 16 17 10 11 12 13 18 a 25
LD5 LD6 LD7 LD8 LD9 LD10 LD11 LD12 LD1 LD2 CH1 LD4 LD3 CH3 CH4 CH6 CH7
LCD1 7 8 9 10 11 12 13 14
32u4 PD.4 PD.6 PD.7 PB.4 PB.5 PB.6 PC.6 PC.7 PB.7 PB.3 PD.0 PB.2 PB.1 PD.1 PD.5 PF.7 PF.6
Arduino DP4 DP12 DP6 DP8 DP9 DP10 DP5 DP13 DP11 MOSI DP3 MISO SCK DP2 TXLED AIn0 AIn1
2,15 1,5,16 CH5 6 4 PE.2 PE.6 PB.0 PD.2 PD.3 PF.5 PF.4 PF.1 PF.0 HWB DP7 RXLED DP0 DP1 AIn2 AIn3 AIn4 AIn5 RESET
Gravando programas na placa Aps a compilao do programa um arquivo .hex com o cdigo a ser gravado gerado. Para a gravao deste arquivo necessrio o programa FLIP da Atmel e colocar a placa no modo de programao. Para a gravao execute os seguintes passos: Coloque a placa no modo de gravao apertando simultaneamente os botes PROG e RESET. Mantenha o boto PROG pressionado e solte o RESET. A placa entrar no modo de boot loader. Abra o programa FLIP No menu device e select selecione o dispisitivo ATMEGA32U4
Abra a interface USB selecionando USB no cone de cabo USB Abra o arquivo .hex com o programa a ser gravado no menu file load hex Selecione o boto run run para gravar o programa no processador. Desconecte a placa e reconecte reconecte novamente para iniciar o software gravado.
Na primeira vez que a placa for conectada ao PC para programao necessrio a instalao do driver de gravao do processador. Para isto aguarde o Windows finalizar a instalao automtica, v at o gerenciador nciador de dispositivos e instale manualmente em atualizar drivers. Os drivers corretos esto na pasta de instalao do Flip, selecione a opo de procurar em pastas e sub pastas. . Aps a instalao, desconecte a placa e conecte novamente. Este procedimento nto s ser necessrio na primeira vez que a placa for conectada no computador.
Aplicativos compilados
Outra aplicao da placa como mdulos funcionais j desenvolvidos com diversas aplicaes. Para a ativao destes mdulos necessrio a gravao do arquivo .hex corespondente.
Funo Open_Lab: Inicia a comunicao com a placa, a funo abre o arquivo AtUsbHid.dll AtUsbHid.dll e executa a sequncia necessria para achar a placa e abrir o dispositivo USB possibilitando futuros acessos. Esta funo deve ser chamada uma vez no inicio do aplicativo. Funo Close_Lab: Finaliza a comunicao com a placa. Esta Esta funo deve ser chamada uma vez no final do aplicativo. Funes Read_Keys e Read_Key: Read_Key A funo Read_keys executa xecuta a leitura de todas as chaves do Lab_Unio. A funo retorna um valor formado pelos los estados das chaves em cada bit, sendo bit=1 chave apertada ou sinal no pino = 0 (gnd). D7 0 D6 0 D5 SEL_OUT D4 PAPER_OUT D3 PROG D2 BUSY D1 ACK D0 ERROR
Formato do byte J a funo Read_key executa xecuta a leitura de uma determinada chave do Lab_Unio. A funo retorna 0 ou 1 conforme se a chave est solta ou apertada. A funo tem como parmetro o numero da serigrafia da chave que se deseja verificar. (1-error, 3-ack, 4-busy, busy, 5-prog, 5 6paper_out, 7-sel_out) Read_ADC: A funo Read_ADC retorna o valor das entradas dos conversores analgicos/digitais disponveis no Lab_Uino. A funo tem como parmetro a entrada que se deseja ler o valor (conforme serigrafia da placa) como exemplo Read_ADC(0) para a entrada ADC0. As entradas ADC0 e ADC1 retornam valor de de 0 a 255, conversor de 8 bits, sendo 255=5V. As entradas ADC4 e ADC5 retornam valor de 0 a 1023, conversor de 10 bits, sendo 1023=5V. Se utilizar o comando Read_ADC(7), ser retornado o valor de temperatura do processador do Lab_Uino. Funes Write_Data_Led e Write_Ctr_Led: Similar a porta paralela do PC (outport 0x378,valor), pode-se pode se utilizar as funes Write_Data_Led e Write_Ctr_led. Estas funes permite a escrita de 1 byte, sendo cada bit mapeado em 1 led ou sinal. Sendo 0=gnd Led apagado, 1= 5V Led aceso. A funo Write_Data_Led controla os Leds LD5 a LD12 (sinais D0 a D7), j a funo Write_Ctr_Led controla os Leds LD1 a LD4 (sinais strobe, feed, selec_in e init) D7 LD12 D6 LD11 D5 LD10 D4 LD9 D3 LD8 D2 LD7 D1 LD6 D0 LD5
Data
Ctr
LD3
LD2
LD1
Funes Led_On, Led_Off, Led_Toggle, Led_Wr: Led_Wr No caso de se desejar alterar o estado de cada Led individualmente pode-se pode utilizar os comandos Led_On para acender, Led_Off para apagar e Led-Toggle Led Toggle para alternar o estado do led. As funes tem como parmetro o nmero do Led (serigrafia). A funo Led_Wr, escreve o estado de um Led em especifico. O nmero do Led e o estado so passados como parmetros da funo. Funes pwm_A, pwm_B, pwm_C: pwm_C Ativa as sadas de PWM, o parmetro pode variar de 0 a 511. As sadas s esto no Led9, Led Led10 e Led1 respectivamente.