====== Módulo de controlo ATMega128 ====== O módulo principal do HomeLab é uma placa controlo de desenvolvimento (placa controladora) equipada com o microcontrolador AVR ATmega128. Além do microcontrolador, a placa é composta por diversos periféricos, estabilizador de tensão, conectores, etc. O placa do controlador tem as seguintes características: * Atmega128-16AU microcontroller in the TQFP64 package (ROHS) * 8-channel 10-bit A/D converter * 128kB Flash memory (program memory) * 4kB EEPROM memory (data memory) * 6 channel programmable PWM * Standard 6-pin In system programming interface (ISP) connector * 14,7456 MHz clock (can be changed very easily, crystal is mounted on small 2-pin socket) * Real Time clock (RTC) * Reset protection circuitry for the ATmega128 * Status LED and Power LED * Standard DB-9 serial port connector with RS232 transmitter / receiver * All Atmega signals available on three connectors (1. D, B, E ports, 2. G, C, A ports, 3. F port with ADC I/O lines) * Reset button * JTAG 10-pin Interface connector * 2-pin on/of connector – can be used for connecting on/off button * DC 2.1mm power connector * Built-in voltage stabilizer [{{ :kit:cpu_module.jpg?580 |Módulo de controlo}}] O módulo é equipado com circuito retificador AC / DC e estabilizador de tensão LDO (com baixo dropout) - alimentador externo com estabilização de tensão não é necessário. O módulo pode ser alimentado apenas a partir do transformador com tensão de saída superior a 6 volts e inferior a 15 volts. O módulo tem um circuito de proteção contra polarização errada (ponte Greatz). O circuito pode ser equipado com o interruptor de alimentação externa ligando-o ao conector S2 2-pin on / off. Se o interruptor de alimentação externa não é usado, o conector S2 2-pin on / off deve ser encurtado. Todos os sinais ATMega128 estão disponíveis em três conectores na periferia da placa. A atribuição de pinos de ligação é descrita na próxima parte destas instruções. Estas incluiem descrições completas dos pinos ATMega128 e suas funções alternativas. O módulo é equipado com circuito de reset do microprocessador (quando ligado) e botão de reset para reiniciar o microprocessador. O microprocessador pode ser programado com um programador ISP ou JTAG. Para o sétimo pino da porta B (nomeado como PB7) o LED de status (descrito como PB7 na placa) está conectado. Este LED pode ser usado como um indicador de estado de software de aplicação. O estado Low no pino PB7 faz com que o LED de status acenda. O módulo fornece duas portas seriais descritas na placa como UART1 e UART2. A primeira delas é um conector fêmea de 9 pinos (DB-9 PC porta serial compatível) e a segunda é um conector de 3 pinos. O circuito MAX232 fornece a conversão do sinal para padrão de série. O multiplexer 74HC4053 fornece plena utilização dos portos, incluindo aqueles usados para a programação do microprocessador, porque no estado de reset (quando programado) o multiplexer processador muda PE0, PE1 e sinais PB1 ao conector ISP e JTAG. Quando o processador está no estado de funcionamento, estes sinais são ligados aos conectores na periferia da placa. O módulo é equipado com memória externa (Atmel AT45DB041B). Trata-se de memória de dados flash serial de 4Mbit ligado ao Master/ Slave SPI do interface serial do microprocessador. O tempo real do relógio interno está ligado ao ressonador externo de cristal de 32,768 kHz designado como X2 no tabuleiro. [{{:kit:atmega_plaat.png?580|}}] ===== Pins de Ligação e Funções ===== [{{ :kit:pe-pb-pd.png?580 |}}] ^Nr^Pin^Alternative function / Description^^ |1|PD7|T2|Timer/Counter2 Clock Input | |2|PD6|T1|Timer/Counter1 Clock Input | |3|PD5|XCK1|USART1 External Clock Input/Output | |4|PD4|IC1|Timer/Counter1 Input Capture Trigger | |5|PD3|INT3/TXD1|External Interrupt3 Input or UART1 Transmit Pin | |6|PD2|INT2/RXD1|External Interrupt2 Input or UART1 Receive Pin | |7|PD1|INT1/SDA|External Interrupt1 Input or TWI Serial Data | |8|PD0|INT0/SCL|External Interrupt0 Input or TWI Serial Clock | |9|VCC|-|+5V | |10|GND|-|GND | |11|PB7|OC2/OC1C |Output Compare and PWM Output for Timer/Counter2 or Output Compare and PWM Output C for Timer/Counter1| |12|PB6|OC1B|Output Compare and PWM Output B for Timer/Counter1 | |13|PB5|OC1A|Output Compare and PWM Output A for Timer/Counter1 | |14|PB4|OC0|Output Compare and PWM Output for Timer/Counter0 | |15|PB3|MISO|SPI Bus Master Input/Slave Output | |16|PB2|MOSI|SPI Bus Master Output/Slave Input | |17|PB1|SCK|SPI Bus Serial Clock | |18|PB0|SS|SPI Slave Select Input | |19|PE7|INT7/IC3|External Interrupt 7 Input or Timer/Counter3 Input Capture Trigger | |20|PE6|INT6/ T3|External Interrupt 6 Input or Timer/Counter3 Clock Input | |21|PE5|INT5/OC3C |External Interrupt 5 Input or Output Compare and PWM Output C for Timer/Counter3| |22|PE4|INT4/OC3B |External Interrupt4 Input or Output Compare and PWM Output B for Timer/Counter3 | |23|PE3|AIN1/OC3A |Analog Comparator Negative Input or Output Compare and PWM Output A for Timer/Counter3 | |24|PE2|AIN0/XCK0 |Analog Comparator Positive Input or USART0 external clock input/output | |25|PE1|PDO/TXD0|Programming Data Output or UART0 Transmit Pin | |26|PE0|PDI/RXD0|Programming Data Input or UART0 Receive Pin | [{{ :kit:pa-pc.png?580 |}}] ^Nr^Pin^Alternative function / Description^^ |1|GND|-|GND | |2|VCC|-|+5V | |3|PA0|AD0|External memory interface address and data bit 0 | |4|PA1|AD1|External memory interface address and data bit 1 | |5|PA2|AD2|External memory interface address and data bit 2 | |6|PA3|AD3|External memory interface address and data bit 3 | |7|PA4|AD4|External memory interface address and data bit 4 | |8|PA5|AD5|External memory interface address and data bit 5 | |9|PA6|AD6|External memory interface address and data bit 6 | |10|PA7|AD7|External memory interface address and data bit 7 | |11|-|NC|Not connected | |12|-|NC|Not connected | |13|PG2|ALE|Address Latch Enable to external memory | |14|-|NC|Not connected | |15|PC6|A14|External memory interface address and data bit 14 | |16|PC7|A15|External memory interface address and data bit 15 | |17|PC4|A12|External memory interface address and data bit 12 | |18|PC5|A13|External memory interface address and data bit 13 | |19|PC2|A10|External memory interface address and data bit 10 | |20|PC3|A11|External memory interface address and data bit 11 | |21|PC0|A8|External memory interface address and data bit 8 | |22|PC1|A9|External memory interface address and data bit 9 | |23|PG0|WR|Write strobe to external memory | |24|PG1|RD|Read strobe to external memory | |25|-|NC|Not connected | |26|-|NC|Not connected| [{{ :kit:pf.png?580 |}}] ^Nr^Pin^Alternative function / Description^^ |1|VCC|-|+5V | |2|GND|-|GND | |3|REF|AREF|Analog reference voltage for ADC | |4|GND|-|GND | |5|PF0|ADC0|ADC input channel 0 | |6|GND|-|GND | |7|PF1|ADC1|External memory interface address and data bit 4 | |8|GND|-|GND | |9|PF2|ADC2|External memory interface address and data bit 6 | |10|GND|-|GND | |11|PF3|ADC3|Not connected | |12|GND|-|GND | |13|PF4|ADC4/TCK|ADC input channel 4 or JTAG Test ClocK | |14|GND|-|GND | |15|PF5|ADC5/TMS|ADC input channel 5 or JTAG Test Mode Select | |16|GND|-|GND | |17|PF6|ADC6/TDO|ADC input channel 6 or JTAG Test Data Output | |18|GND|-|GND | |19|PF7|ADC7/TDI|ADC input channel 7 or JTAG Test Data Input | |20|GND|-|GND | ===== Módulo de ligações ===== Ao ligar o módulo do controlador com outros módulos e dispositivos periféricos, deve-se conectar a fonte de alimentação no fim do processo. Se estiver ligada, é perigoso ligar e desligar os dispositivos externos. Os módulos têm de ser ligados uns aos outros com grande cuidado, sem a aplicação de força forte pois esta pode dobrar os conectores. O programador JTAG-ICE tem que ser ligado à porta correta e o cabo fita aponta para fora do bordo (faixa vermelha é do lado do conector da fonte de alimentação). [{{:kit:kit_test.jpg?580|}}]