Lab 12: (nasm) Periféricos

Ao final desse lab você deve ser capaz de:

  1. Escrever nos LEDs do nosso Z01
  2. Ler das chaves (SW) do nosso Z01
  3. Escrever no LCD do nosso Z01

Info

Vamos continuar com o mesmo repositório criado no lab passado.

Trabalhando com o LCD.

LCD1

  • File: lcd1.nasm
  • Test: execute pytest lcd1 e visualize o arquivo gerado

Task: Execute o arquivo no simulador o observe os 16 primeiros pxs acenderem

Dica: movw $-1, (%A): Gera o vetor 1111111111111 e grava no endereço que %A aponta (primeiros pxs do LCD)

LCD2

  • File: lcd2.nasm
  • Test: Visual no simulador

Task: Acione todos os pxs da primeira posição de memória do LCD, do meio do LCD e da última posição de memória do LCD.

Dica: O endereço central do LCD vocês podem calcular por:

LCD = 320x240

1. enderecos_porLinha    = 320/16 
                            = 20

2. offset_linhaCentral   = 20*240/2
                            = 2400

3. endereco_linhaCentral = 16384 + 2400
                            = 18784

4. px_central            = 18784 + 10 
                            = 18794