7
Linguagens de Programação
UNINTER
38
Linguagens de Programação
UNINTER
20
Linguagens de Programação
UNINTER
9
Linguagens de Programação
UNINTER
1
Linguagens de Programação
UNINTER
16
Linguagens de Programação
UNINTER
7
Linguagens de Programação
UNINTER
38
Linguagens de Programação
UNINTER
7
Linguagens de Programação
UNINTER
12
Linguagens de Programação
UNINTER
Texto de pré-visualização
CADERNO DE RESPOSTAS DA ATIVIDADE PRÁTICA DE Linguagem de Programação ALUNO INSERIR NOME E RU Prof Winston Sen Lun Fung Esp ANO 2024 Caderno de Resolução da Atividade Prática de Linguagem de Programação PRÁTICA 01 Utilizar estruturas condicionais e loops para criar um semáforo que muda de cor baseandose no tempo e em um sensor de presença simulando um semáforo inteligente que se adapta ao fluxo de trânsito Devese programar o Arduino para controlar LEDs vermelho amarelo e verde onde o LED verde deve permanecer aceso por mais tempo se o sensor de presença detectar um carro esperando Monte o circuito adequado para ligar os LEDs e o sensor PIR no Arduino Para demonstrar o funcionamento faça as capturas de tela utilizando o último digito do seu RU para o tempo em segundos para o sinal verde caso o seu RU termine em 0 zero utilize o valor 9 nove I Apresentação do códigofonte colorido INSERIR O CÓDIGO FONTE AQUI II Apresentação a do circuito COLOCAR IMAGEM AQUI III Apresentar a captura de tela evidenciado o funcionamento COLOCAR IMAGEM AQUI 1 Caderno de Resolução da Atividade Prática de Linguagem de Programação PRÁTICA 02 Desenvolver uma função que lê a temperatura de um sensor e armazena os valores em um vetor permitindo o monitoramento da temperatura ao longo do tempo Devese criar uma função para ler a temperatura e outra para imprimir no terminal serial os valores armazenados em um vetor O programa deve coletar a temperatura a cada x minutos e armazenar até y leituras Para x penúltimo digito do seu RU caso o valor seja 0 zero utilize o valor 9 nove y os dois primeiros dígitos do seu RU Monte o circuito adequado com o sensor de temperatura Para demonstrar o funcionamento faça as capturas de tela IV Apresentação do códigofonte colorido INSERIR O CÓDIGO FONTE AQUI V Apresentação a do circuito COLOCAR IMAGEM AQUI VI Apresentar a captura de tela evidenciado o funcionamento COLOCAR IMAGEM AQUI 2 Caderno de Resolução da Atividade Prática de Linguagem de Programação PRÁTICA 03 Utilizar matrizes para armazenar mensagens personalizadas que são exibidas em um display LCD controlado por botões Devese definir uma estrutura que contém uma mensagem e seu tipo por exemplo alerta informação erro e usar matrizes para armazenar diferentes mensagens Botões diferentes devem exibir mensagens diferentes no display Monte o circuito adequado com o display LCD e os botões Para demonstrar o funcionamento faça as capturas de tela VII Apresentação do códigofonte colorido INSERIR O CÓDIGO FONTE AQUI VIII Apresentação a do circuito COLOCAR IMAGEM AQUI IX Apresentar a captura de tela evidenciado o funcionamento COLOCAR IMAGEM AQUI 3 Caderno de Resolução da Atividade Prática de Linguagem de Programação PRÁTICA 04 Implementar um sistema de iluminação que ajusta a intensidade de um LED baseado na luz ambiente utilizando alocação dinâmica de memória para armazenar leituras de luz Devese usar um sensor de luz LDR para determinar a intensidade da luz ambiente e ajustar a luminosidade de um LED adequadamente O programa deve alocar dinamicamente um espaço na memória para armazenar as últimas x leituras do sensor e calcular a média para ajustar a intensidade do LED Para x os dois primeiros dígitos do seu RU Monte o circuito adequado com o sensor de temperatura e o LED Para demonstrar o funcionamento faça as capturas de tela X Apresentação do códigofonte colorido INSERIR O CÓDIGO FONTE AQUI XI Apresentação a do circuito COLOCAR IMAGEM AQUI XII Apresentar a captura de tela evidenciado o funcionamento COLOCAR IMAGEM AQUI 4 Caderno de Resolução da Atividade Prática de Linguagem de Programação PRÁTICA 05 Utilizar a recursividade para criar uma sequência animada de acendimento de LEDs onde cada LED é acionado de forma sequencial com um intervalo de tempo e após o último LED a sequência recomeça de maneira recursiva Devese aplicar a recursividade para criar uma animação visual interessante com LEDs Monte o circuito adequado com os LEDs Para demonstrar o funcionamento faça as capturas de tela XIII Apresentação do códigofonte colorido INSERIR O CÓDIGO FONTE AQUI XIV Apresentação a do circuito COLOCAR IMAGEM AQUI XV Apresentar a captura de tela evidenciado o funcionamento COLOCAR IMAGEM AQUI 5 ATIVIDADE PRÁTICA LINGUAGEM DE PROGRAMAÇÃO Prof Winston Sen Lun Fung Esp ANO 2024 Roteiro de Atividade Prática de Linguagem de Programação 1 INTRODUÇÃO Olá a todos Sejam todos muito bemvindos Esta avaliação foi planejada e preparada para as disciplinas de Linguagem de Programação Centro Universitário Internacional UNINTER O objetivo desta atividade é fazer com que você aluno desenvolva os conhecimentos teóricos aprendidos na rota de maneira Ao longo desse roteiro serão passadas as orientações gerais para realização da avaliação bem como os seus critérios de correção No mais desejolhe boa atividade prática em nome dos professores da disciplina de Linguagem de Programação Roteiro de Atividade Prática de Linguagem de Programação 2 SUMÁRIO INTRODUÇÃO 1 ORIENTAÇÕES GERAIS 3 FORMATO DE ENTREGA 3 CRITÉRIOS DE AVALIAÇÃO 4 ATIVIDADE PRÁTICA 5 PRÁTICA 01 5 PRÁTICA 02 5 PRÁTICA 03 6 PRÁTICA 04 6 PRÁTICA 05 6 Roteiro de Atividade Prática de Linguagem de Programação 3 ORIENTAÇÕES GERAIS FORMATO DE ENTREGA O formato de entrega das práticas desse roteiro deve estar de acordo com o documento Modelo de Relatório disponível na Rota de Estudos As atividades devem ser desenvolvidas no Tinkercad em linguagem CC do Arduino Não será aceita programação através de blocos O aluno deverá entregar um ARQUIVO ÚNICO NO FORMATO PDF no AVA no ícone Trabalhos Esta atividade é para ser realizada com consulta e pesquisa Portanto leia também livros bases materiais complementares ou procure seu tutor para tirar dúvidas diretamente via Canal de Tutoria Para cada exercício coloque no seu relatório o ENUNCIADO do mesmo e coloque como resposta o seu código COMPLETO Deste a primeira até a última linha que você digitou Coloque no seu código COMENTÁRIOS explicando COM SUAS PALAVRAS o que ele faz veja o exemplo do documento modelo Para inserir os códigos nas respostas faça um CTRLCCTRLV do código criado por você no Tinkercad e coleo no documento do Word Poderá ser necessário organizar e indentar o código de maneira adequada No AVA existe um modelo em WORD para você utilizar Porém ao submeter o seu arquivo submetao em PDF salvar como PDF no Word Além do seu algoritmo você deverá colocar uma captura de tela do seu exercício funcionando Capture a tela mostrando o seu código funcionando e indicando o funcionamento na tela veja o exemplo do modelo CUIDADO Em programação não existem dois códigos exatamente iguais Cada programador organiza seu código de uma forma diferente declara variáveis com nomes diferentes faz comentários diferentes gera mensagens aos usuários distintas etc Por este motivo não serão aceitos dois algoritmos idênticos entre alunos ou iguais à Internet Caso o corretor observe respostas iguais elas serão consideradas como PLÁGIO e será atribuída a NOTA ZERO na questão Roteiro de Atividade Prática de Linguagem de Programação 4 CRITÉRIOS DE AVALIAÇÃO Como temos 5 questões cada questão valerá 20 da nota desta atividade Para que você ganhe nota máxima em cada exercício você precisará cumprir os três requisitos básicos explicados nas ORIENTAÇÕES GERAIS Apresentar seu código fonte completo indentado e organizado Explicar seu código através de comentários Colocar as IMAGEMS mostrando o que cada exercício pede No modelo de relatório da disciplina você encontrará um exemplo de exercício para um melhor entendimento Caso você desenvolva seu código corretamente e funcional porém não faça os comentários nem coloque uma imagem dele funcionando terá sua nota severamente prejudicada Trabalhos entregues em formatos diferentes do PDF não serão corrigidos e será atribuído a nota ZERO para ele Atenção Imagine o RU 1 2 3 4 5 6 7 1 2 3 4 5 6 7 Primeiro dígito Último dígito Roteiro de Atividade Prática de Linguagem de Programação 5 ATIVIDADE PRÁTICA PRÁTICA 01 Utilizar estruturas condicionais e loops para criar um semáforo que muda de cor baseandose no tempo e em um sensor de presença simulando um semáforo inteligente que se adapta ao fluxo de trânsito Devese programar o Arduino para controlar LEDs vermelho amarelo e verde onde o LED verde deve permanecer aceso por mais tempo se o sensor de presença detectar um carro esperando Monte o circuito adequado para ligar os LEDs e o sensor PIR no Arduino Para demonstrar o funcionamento faça as capturas de tela utilizando o último digito do seu RU para o tempo em segundos para o sinal verde caso o seu RU termine em 0 zero utilize o valor 9 nove PRÁTICA 02 Desenvolver uma função que lê a temperatura de um sensor e armazena os valores em um vetor permitindo o monitoramento da temperatura ao longo do tempo Devese criar uma função para ler a temperatura e outra para imprimir no terminal serial os valores armazenados em um vetor O programa deve coletar a temperatura a cada x minutos e armazenar até y leituras Para x penúltimo digito do seu RU caso o valor seja 0 zero utilize o valor 9 nove y os dois primeiros dígitos do seu RU Monte o circuito adequado com o sensor de temperatura Para demonstrar o funcionamento faça as capturas de tela Roteiro de Atividade Prática de Linguagem de Programação 6 PRÁTICA 03 Utilizar matrizes para armazenar mensagens personalizadas que são exibidas em um display LCD controlado por botões Devese definir uma estrutura que contém uma mensagem e seu tipo por exemplo alerta informação erro e usar matrizes para armazenar diferentes mensagens Botões diferentes devem exibir mensagens diferentes no display Monte o circuito adequado com o display LCD e os botões Para demonstrar o funcionamento faça as capturas de tela PRÁTICA 04 Implementar um sistema de iluminação que ajusta a intensidade de um LED baseado na luz ambiente utilizando alocação dinâmica de memória para armazenar leituras de luz Devese usar um sensor de luz LDR para determinar a intensidade da luz ambiente e ajustar a luminosidade de um LED adequadamente O programa deve alocar dinamicamente um espaço na memória para armazenar as últimas x leituras do sensor e calcular a média para ajustar a intensidade do LED Para x os dois primeiros dígitos do seu RU Monte o circuito adequado com o sensor de temperatura e o LED Para demonstrar o funcionamento faça as capturas de tela PRÁTICA 05 Utilizar a recursividade para criar uma sequência animada de acendimento de LEDs onde cada LED é acionado de forma sequencial com um intervalo de tempo e após o último LED a sequência recomeça de maneira recursiva Devese aplicar a recursividade para criar uma animação visual interessante com LEDs Monte o circuito adequado com os LEDs Para demonstrar o funcionamento faça as capturas de tela ANO 2024 CADERNO DE RESPOSTAS DA ATIVIDADE PRÁTICA DE Linguagem de Programação ALUNO Renato Antonio Marcos resende 3385865 Caderno de Resolução da Atividade Prática de Linguagem de Programação PRÁTICA 01 Utilizar estruturas condicionais e loops para criar um semáforo que muda de cor baseandose no tempo e em um sensor de presença simulando um semáforo inteligente que se adapta ao fluxo de trânsito Devese programar o Arduino para controlar LEDs vermelho amarelo e verde onde o LED verde deve permanecer aceso por mais tempo se o sensor de presença detectar um carro esperando Monte o circuito adequado para ligar os LEDs e o sensor PIR no Arduino Para demonstrar o funcionamento faça as capturas de tela utilizando o último digito do seu RU para o tempo em segundos para o sinal verde caso o seu RU termine em 0 zero utilize o valor 9 nove I Apresentação do códigofonte colorido C code RU 3385865 int PIR 3 void setup PINOS DE SAIDA VERDE pinMode11 OUTPUT AMARELO pinMode12 OUTPUT VERMELHO pinMode13 OUTPUT PINO DE ENTRADA SENSOR PIR pinModePIR INPUT void loop 1 Prof Winston Sen Lun Fung Esp Caderno de Resolução da Atividade Prática de Linguagem de Programação digitalWrite11 HIGH Acende led verde if digitalRead3 HIGH delay5000 else delay1000 digitalWrite11 LOW Apaga led verde digitalWrite12 HIGH Acende led amarelo delay1000 digitalWrite12 LOW Apaga led amarelo digitalWrite13 HIGH Acende led vermelho delay1000 digitalWrite13 LOW Apaga led vermelho II Apresentação a do circuito 2 Caderno de Resolução da Atividade Prática de Linguagem de Programação III Apresentar a captura de tela evidenciado o funcionamento 3 Caderno de Resolução da Atividade Prática de Linguagem de Programação 4 Caderno de Resolução da Atividade Prática de Linguagem de Programação PRÁTICA 02 Desenvolver uma função que lê a temperatura de um sensor e armazena os valores em um vetor permitindo o monitoramento da temperatura ao longo do tempo Devese criar uma função para ler a temperatura e outra para imprimir no terminal serial os valores armazenados em um vetor O programa deve coletar a temperatura a cada x minutos e armazenar até y leituras Para x penúltimo digito do seu RU caso o valor seja 0 zero utilize o valor 9 nove y os dois primeiros dígitos do seu RU Monte o circuito adequado com o sensor de temperatura Para demonstrar o funcionamento faça as capturas de tela IV Apresentação do códigofonte colorido C code RU 3385865 int celsius 0 int qtd 33 int arrayTemperaturasqtd int curPos 0 int tempo 6 void setup pinModeA0 INPUT Serialbegin9600 void loop SerialprintTemperatura mede temperatura em Celsius celsius mapanalogReadA0 20 304 0 1023 40 125 Serialprintcelsius 5 Caderno de Resolução da Atividade Prática de Linguagem de Programação Serialprintln oC espera 6 minutos delaytempo100060 temperaturascurPos celsius 0 curPos qtd curPos curPos 1 curPos curPos qtd V Apresentação a do circuito 6 Caderno de Resolução da Atividade Prática de Linguagem de Programação VI Apresentar a captura de tela evidenciado o funcionamento 7 Caderno de Resolução da Atividade Prática de Linguagem de Programação 8 Caderno de Resolução da Atividade Prática de Linguagem de Programação PRÁTICA 03 Utilizar matrizes para armazenar mensagens personalizadas que são exibidas em um display LCD controlado por botões Devese definir uma estrutura que contém uma mensagem e seu tipo por exemplo alerta informação erro e usar matrizes para armazenar diferentes mensagens Botões diferentes devem exibir mensagens diferentes no display Monte o circuito adequado com o display LCD e os botões Para demonstrar o funcionamento faça as capturas de tela VII Apresentação do códigofonte colorido include LiquidCrystalh LiquidCrystal lcd12 11 10 5 4 3 2 int BOTAOALERTA 8 Botão pino 8 int BOTAOINFO 7 Botão pino 7 int BOTAOERRO 6 Botão pino 6 int backLight 13 void setup pinModeBOTAOALERTA INPUT entrada pinModeBOTAOINFO INPUTentrada pinModeBOTAOERRO INPUTentrada digitalWritebackLight HIGH lcdbegin16 2 lcdclear Inicializa o display com uma tela vazia void alerta lcdsetCursor0 0 lcdprintALERTA 9 Caderno de Resolução da Atividade Prática de Linguagem de Programação void erro lcdsetCursor0 0 lcdprintERRO void info lcdsetCursor0 0 lcdprintBEMVINDO void loop if digitalReadBOTAOALERTA alerta else if digitalReadBOTAOINFO info else if digitalReadBOTAOERRO erro else lcdclear VIII Apresentação a do circuito 10 Caderno de Resolução da Atividade Prática de Linguagem de Programação IX Apresentar a captura de tela evidenciado o funcionamento 11 Caderno de Resolução da Atividade Prática de Linguagem de Programação 12 Caderno de Resolução da Atividade Prática de Linguagem de Programação 13 Caderno de Resolução da Atividade Prática de Linguagem de Programação 14 Caderno de Resolução da Atividade Prática de Linguagem de Programação PRÁTICA 04 Implementar um sistema de iluminação que ajusta a intensidade de um LED baseado na luz ambiente utilizando alocação dinâmica de memória para armazenar leituras de luz Devese usar um sensor de luz LDR para determinar a intensidade da luz ambiente e ajustar a luminosidade de um LED adequadamente O programa deve alocar dinamicamente um espaço na memória para armazenar as últimas x leituras do sensor e calcular a média para ajustar a intensidade do LED Para x os dois primeiros dígitos do seu RU Monte o circuito adequado com o sensor de temperatura e o LED Para demonstrar o funcionamento faça as capturas de tela X Apresentação do códigofonte colorido RU 3385865 int led A0 LED int sensorLDR A5 LDR int x 33 ultimas x leituras do LDR unsigned int valores33 array de valores int qtdleituras 0 quantidade de leituras int minimo 0 numero minimo de leituras unsigned int soma 0 soma total das 33 leituras void setup pinModeled OUTPUT LED é saída pinModesensorLDR INPUT LDR é entrada void loop int valorLDR analogReadsensorLDR captando leitura if minimo 33 valoresqtdleituras valorLDR atualizo nova posição 15 Caderno de Resolução da Atividade Prática de Linguagem de Programação qtdleituras qtdleituras 1 qtdleituras qtdleituras 33 incrementar qtd de leituras minimo minimo 1 soma soma valorLDR acumula soma analogWriteled somaqtdleituras media das leituras no LED else valoresqtdleituras valorLDR soma 0 int i for i 0 i 33 i acumulando ultimas 33 leituras int pos qtdleituras i 33 33 33 soma soma valorespos unsigned int media soma33 media qtdleituras qtdleituras 1 33 analogWriteled media XI Apresentação a do circuito 16 Caderno de Resolução da Atividade Prática de Linguagem de Programação XII Apresentar a captura de tela evidenciado o funcionamento 17 Caderno de Resolução da Atividade Prática de Linguagem de Programação 18 Caderno de Resolução da Atividade Prática de Linguagem de Programação 19 Caderno de Resolução da Atividade Prática de Linguagem de Programação 20 Caderno de Resolução da Atividade Prática de Linguagem de Programação PRÁTICA 05 Utilizar a recursividade para criar uma sequência animada de acendimento de LEDs onde cada LED é acionado de forma sequencial com um intervalo de tempo e após o último LED a sequência recomeça de maneira recursiva Devese aplicar a recursividade para criar uma animação visual interessante com LEDs Monte o circuito adequado com os LEDs Para demonstrar o funcionamento faça as capturas de tela XIII Apresentação do códigofonte colorido void setup pinMode13 OUTPUT led verde pinMode12 OUTPUT led amarelo pinMode11 OUTPUT led vermelho void pisca3int i if i 10 return digitalWritei HIGH valor alto no led delay300 digitalWritei LOW apaga led atual delay300 digitalWritei HIGH valor alto no led delay300 digitalWritei LOW apaga led atual delay300 digitalWritei HIGH valor alto no led delay300 digitalWritei LOW apaga led atual delay300 pisca3i1 led da porta inferior 21 Caderno de Resolução da Atividade Prática de Linguagem de Programação void pisca int i if i 10 pisca313 return digitalWritei HIGH valor alto no led delay1000 digitalWritei LOW apaga led atual delay1000 piscai1 led da porta inferior void loop pisca13 a partir do led verde XIV Apresentação a do circuito 22 Caderno de Resolução da Atividade Prática de Linguagem de Programação XV Apresentar a captura de tela evidenciado o funcionamento 23 Caderno de Resolução da Atividade Prática de Linguagem de Programação 24
7
Linguagens de Programação
UNINTER
38
Linguagens de Programação
UNINTER
20
Linguagens de Programação
UNINTER
9
Linguagens de Programação
UNINTER
1
Linguagens de Programação
UNINTER
16
Linguagens de Programação
UNINTER
7
Linguagens de Programação
UNINTER
38
Linguagens de Programação
UNINTER
7
Linguagens de Programação
UNINTER
12
Linguagens de Programação
UNINTER
Texto de pré-visualização
CADERNO DE RESPOSTAS DA ATIVIDADE PRÁTICA DE Linguagem de Programação ALUNO INSERIR NOME E RU Prof Winston Sen Lun Fung Esp ANO 2024 Caderno de Resolução da Atividade Prática de Linguagem de Programação PRÁTICA 01 Utilizar estruturas condicionais e loops para criar um semáforo que muda de cor baseandose no tempo e em um sensor de presença simulando um semáforo inteligente que se adapta ao fluxo de trânsito Devese programar o Arduino para controlar LEDs vermelho amarelo e verde onde o LED verde deve permanecer aceso por mais tempo se o sensor de presença detectar um carro esperando Monte o circuito adequado para ligar os LEDs e o sensor PIR no Arduino Para demonstrar o funcionamento faça as capturas de tela utilizando o último digito do seu RU para o tempo em segundos para o sinal verde caso o seu RU termine em 0 zero utilize o valor 9 nove I Apresentação do códigofonte colorido INSERIR O CÓDIGO FONTE AQUI II Apresentação a do circuito COLOCAR IMAGEM AQUI III Apresentar a captura de tela evidenciado o funcionamento COLOCAR IMAGEM AQUI 1 Caderno de Resolução da Atividade Prática de Linguagem de Programação PRÁTICA 02 Desenvolver uma função que lê a temperatura de um sensor e armazena os valores em um vetor permitindo o monitoramento da temperatura ao longo do tempo Devese criar uma função para ler a temperatura e outra para imprimir no terminal serial os valores armazenados em um vetor O programa deve coletar a temperatura a cada x minutos e armazenar até y leituras Para x penúltimo digito do seu RU caso o valor seja 0 zero utilize o valor 9 nove y os dois primeiros dígitos do seu RU Monte o circuito adequado com o sensor de temperatura Para demonstrar o funcionamento faça as capturas de tela IV Apresentação do códigofonte colorido INSERIR O CÓDIGO FONTE AQUI V Apresentação a do circuito COLOCAR IMAGEM AQUI VI Apresentar a captura de tela evidenciado o funcionamento COLOCAR IMAGEM AQUI 2 Caderno de Resolução da Atividade Prática de Linguagem de Programação PRÁTICA 03 Utilizar matrizes para armazenar mensagens personalizadas que são exibidas em um display LCD controlado por botões Devese definir uma estrutura que contém uma mensagem e seu tipo por exemplo alerta informação erro e usar matrizes para armazenar diferentes mensagens Botões diferentes devem exibir mensagens diferentes no display Monte o circuito adequado com o display LCD e os botões Para demonstrar o funcionamento faça as capturas de tela VII Apresentação do códigofonte colorido INSERIR O CÓDIGO FONTE AQUI VIII Apresentação a do circuito COLOCAR IMAGEM AQUI IX Apresentar a captura de tela evidenciado o funcionamento COLOCAR IMAGEM AQUI 3 Caderno de Resolução da Atividade Prática de Linguagem de Programação PRÁTICA 04 Implementar um sistema de iluminação que ajusta a intensidade de um LED baseado na luz ambiente utilizando alocação dinâmica de memória para armazenar leituras de luz Devese usar um sensor de luz LDR para determinar a intensidade da luz ambiente e ajustar a luminosidade de um LED adequadamente O programa deve alocar dinamicamente um espaço na memória para armazenar as últimas x leituras do sensor e calcular a média para ajustar a intensidade do LED Para x os dois primeiros dígitos do seu RU Monte o circuito adequado com o sensor de temperatura e o LED Para demonstrar o funcionamento faça as capturas de tela X Apresentação do códigofonte colorido INSERIR O CÓDIGO FONTE AQUI XI Apresentação a do circuito COLOCAR IMAGEM AQUI XII Apresentar a captura de tela evidenciado o funcionamento COLOCAR IMAGEM AQUI 4 Caderno de Resolução da Atividade Prática de Linguagem de Programação PRÁTICA 05 Utilizar a recursividade para criar uma sequência animada de acendimento de LEDs onde cada LED é acionado de forma sequencial com um intervalo de tempo e após o último LED a sequência recomeça de maneira recursiva Devese aplicar a recursividade para criar uma animação visual interessante com LEDs Monte o circuito adequado com os LEDs Para demonstrar o funcionamento faça as capturas de tela XIII Apresentação do códigofonte colorido INSERIR O CÓDIGO FONTE AQUI XIV Apresentação a do circuito COLOCAR IMAGEM AQUI XV Apresentar a captura de tela evidenciado o funcionamento COLOCAR IMAGEM AQUI 5 ATIVIDADE PRÁTICA LINGUAGEM DE PROGRAMAÇÃO Prof Winston Sen Lun Fung Esp ANO 2024 Roteiro de Atividade Prática de Linguagem de Programação 1 INTRODUÇÃO Olá a todos Sejam todos muito bemvindos Esta avaliação foi planejada e preparada para as disciplinas de Linguagem de Programação Centro Universitário Internacional UNINTER O objetivo desta atividade é fazer com que você aluno desenvolva os conhecimentos teóricos aprendidos na rota de maneira Ao longo desse roteiro serão passadas as orientações gerais para realização da avaliação bem como os seus critérios de correção No mais desejolhe boa atividade prática em nome dos professores da disciplina de Linguagem de Programação Roteiro de Atividade Prática de Linguagem de Programação 2 SUMÁRIO INTRODUÇÃO 1 ORIENTAÇÕES GERAIS 3 FORMATO DE ENTREGA 3 CRITÉRIOS DE AVALIAÇÃO 4 ATIVIDADE PRÁTICA 5 PRÁTICA 01 5 PRÁTICA 02 5 PRÁTICA 03 6 PRÁTICA 04 6 PRÁTICA 05 6 Roteiro de Atividade Prática de Linguagem de Programação 3 ORIENTAÇÕES GERAIS FORMATO DE ENTREGA O formato de entrega das práticas desse roteiro deve estar de acordo com o documento Modelo de Relatório disponível na Rota de Estudos As atividades devem ser desenvolvidas no Tinkercad em linguagem CC do Arduino Não será aceita programação através de blocos O aluno deverá entregar um ARQUIVO ÚNICO NO FORMATO PDF no AVA no ícone Trabalhos Esta atividade é para ser realizada com consulta e pesquisa Portanto leia também livros bases materiais complementares ou procure seu tutor para tirar dúvidas diretamente via Canal de Tutoria Para cada exercício coloque no seu relatório o ENUNCIADO do mesmo e coloque como resposta o seu código COMPLETO Deste a primeira até a última linha que você digitou Coloque no seu código COMENTÁRIOS explicando COM SUAS PALAVRAS o que ele faz veja o exemplo do documento modelo Para inserir os códigos nas respostas faça um CTRLCCTRLV do código criado por você no Tinkercad e coleo no documento do Word Poderá ser necessário organizar e indentar o código de maneira adequada No AVA existe um modelo em WORD para você utilizar Porém ao submeter o seu arquivo submetao em PDF salvar como PDF no Word Além do seu algoritmo você deverá colocar uma captura de tela do seu exercício funcionando Capture a tela mostrando o seu código funcionando e indicando o funcionamento na tela veja o exemplo do modelo CUIDADO Em programação não existem dois códigos exatamente iguais Cada programador organiza seu código de uma forma diferente declara variáveis com nomes diferentes faz comentários diferentes gera mensagens aos usuários distintas etc Por este motivo não serão aceitos dois algoritmos idênticos entre alunos ou iguais à Internet Caso o corretor observe respostas iguais elas serão consideradas como PLÁGIO e será atribuída a NOTA ZERO na questão Roteiro de Atividade Prática de Linguagem de Programação 4 CRITÉRIOS DE AVALIAÇÃO Como temos 5 questões cada questão valerá 20 da nota desta atividade Para que você ganhe nota máxima em cada exercício você precisará cumprir os três requisitos básicos explicados nas ORIENTAÇÕES GERAIS Apresentar seu código fonte completo indentado e organizado Explicar seu código através de comentários Colocar as IMAGEMS mostrando o que cada exercício pede No modelo de relatório da disciplina você encontrará um exemplo de exercício para um melhor entendimento Caso você desenvolva seu código corretamente e funcional porém não faça os comentários nem coloque uma imagem dele funcionando terá sua nota severamente prejudicada Trabalhos entregues em formatos diferentes do PDF não serão corrigidos e será atribuído a nota ZERO para ele Atenção Imagine o RU 1 2 3 4 5 6 7 1 2 3 4 5 6 7 Primeiro dígito Último dígito Roteiro de Atividade Prática de Linguagem de Programação 5 ATIVIDADE PRÁTICA PRÁTICA 01 Utilizar estruturas condicionais e loops para criar um semáforo que muda de cor baseandose no tempo e em um sensor de presença simulando um semáforo inteligente que se adapta ao fluxo de trânsito Devese programar o Arduino para controlar LEDs vermelho amarelo e verde onde o LED verde deve permanecer aceso por mais tempo se o sensor de presença detectar um carro esperando Monte o circuito adequado para ligar os LEDs e o sensor PIR no Arduino Para demonstrar o funcionamento faça as capturas de tela utilizando o último digito do seu RU para o tempo em segundos para o sinal verde caso o seu RU termine em 0 zero utilize o valor 9 nove PRÁTICA 02 Desenvolver uma função que lê a temperatura de um sensor e armazena os valores em um vetor permitindo o monitoramento da temperatura ao longo do tempo Devese criar uma função para ler a temperatura e outra para imprimir no terminal serial os valores armazenados em um vetor O programa deve coletar a temperatura a cada x minutos e armazenar até y leituras Para x penúltimo digito do seu RU caso o valor seja 0 zero utilize o valor 9 nove y os dois primeiros dígitos do seu RU Monte o circuito adequado com o sensor de temperatura Para demonstrar o funcionamento faça as capturas de tela Roteiro de Atividade Prática de Linguagem de Programação 6 PRÁTICA 03 Utilizar matrizes para armazenar mensagens personalizadas que são exibidas em um display LCD controlado por botões Devese definir uma estrutura que contém uma mensagem e seu tipo por exemplo alerta informação erro e usar matrizes para armazenar diferentes mensagens Botões diferentes devem exibir mensagens diferentes no display Monte o circuito adequado com o display LCD e os botões Para demonstrar o funcionamento faça as capturas de tela PRÁTICA 04 Implementar um sistema de iluminação que ajusta a intensidade de um LED baseado na luz ambiente utilizando alocação dinâmica de memória para armazenar leituras de luz Devese usar um sensor de luz LDR para determinar a intensidade da luz ambiente e ajustar a luminosidade de um LED adequadamente O programa deve alocar dinamicamente um espaço na memória para armazenar as últimas x leituras do sensor e calcular a média para ajustar a intensidade do LED Para x os dois primeiros dígitos do seu RU Monte o circuito adequado com o sensor de temperatura e o LED Para demonstrar o funcionamento faça as capturas de tela PRÁTICA 05 Utilizar a recursividade para criar uma sequência animada de acendimento de LEDs onde cada LED é acionado de forma sequencial com um intervalo de tempo e após o último LED a sequência recomeça de maneira recursiva Devese aplicar a recursividade para criar uma animação visual interessante com LEDs Monte o circuito adequado com os LEDs Para demonstrar o funcionamento faça as capturas de tela ANO 2024 CADERNO DE RESPOSTAS DA ATIVIDADE PRÁTICA DE Linguagem de Programação ALUNO Renato Antonio Marcos resende 3385865 Caderno de Resolução da Atividade Prática de Linguagem de Programação PRÁTICA 01 Utilizar estruturas condicionais e loops para criar um semáforo que muda de cor baseandose no tempo e em um sensor de presença simulando um semáforo inteligente que se adapta ao fluxo de trânsito Devese programar o Arduino para controlar LEDs vermelho amarelo e verde onde o LED verde deve permanecer aceso por mais tempo se o sensor de presença detectar um carro esperando Monte o circuito adequado para ligar os LEDs e o sensor PIR no Arduino Para demonstrar o funcionamento faça as capturas de tela utilizando o último digito do seu RU para o tempo em segundos para o sinal verde caso o seu RU termine em 0 zero utilize o valor 9 nove I Apresentação do códigofonte colorido C code RU 3385865 int PIR 3 void setup PINOS DE SAIDA VERDE pinMode11 OUTPUT AMARELO pinMode12 OUTPUT VERMELHO pinMode13 OUTPUT PINO DE ENTRADA SENSOR PIR pinModePIR INPUT void loop 1 Prof Winston Sen Lun Fung Esp Caderno de Resolução da Atividade Prática de Linguagem de Programação digitalWrite11 HIGH Acende led verde if digitalRead3 HIGH delay5000 else delay1000 digitalWrite11 LOW Apaga led verde digitalWrite12 HIGH Acende led amarelo delay1000 digitalWrite12 LOW Apaga led amarelo digitalWrite13 HIGH Acende led vermelho delay1000 digitalWrite13 LOW Apaga led vermelho II Apresentação a do circuito 2 Caderno de Resolução da Atividade Prática de Linguagem de Programação III Apresentar a captura de tela evidenciado o funcionamento 3 Caderno de Resolução da Atividade Prática de Linguagem de Programação 4 Caderno de Resolução da Atividade Prática de Linguagem de Programação PRÁTICA 02 Desenvolver uma função que lê a temperatura de um sensor e armazena os valores em um vetor permitindo o monitoramento da temperatura ao longo do tempo Devese criar uma função para ler a temperatura e outra para imprimir no terminal serial os valores armazenados em um vetor O programa deve coletar a temperatura a cada x minutos e armazenar até y leituras Para x penúltimo digito do seu RU caso o valor seja 0 zero utilize o valor 9 nove y os dois primeiros dígitos do seu RU Monte o circuito adequado com o sensor de temperatura Para demonstrar o funcionamento faça as capturas de tela IV Apresentação do códigofonte colorido C code RU 3385865 int celsius 0 int qtd 33 int arrayTemperaturasqtd int curPos 0 int tempo 6 void setup pinModeA0 INPUT Serialbegin9600 void loop SerialprintTemperatura mede temperatura em Celsius celsius mapanalogReadA0 20 304 0 1023 40 125 Serialprintcelsius 5 Caderno de Resolução da Atividade Prática de Linguagem de Programação Serialprintln oC espera 6 minutos delaytempo100060 temperaturascurPos celsius 0 curPos qtd curPos curPos 1 curPos curPos qtd V Apresentação a do circuito 6 Caderno de Resolução da Atividade Prática de Linguagem de Programação VI Apresentar a captura de tela evidenciado o funcionamento 7 Caderno de Resolução da Atividade Prática de Linguagem de Programação 8 Caderno de Resolução da Atividade Prática de Linguagem de Programação PRÁTICA 03 Utilizar matrizes para armazenar mensagens personalizadas que são exibidas em um display LCD controlado por botões Devese definir uma estrutura que contém uma mensagem e seu tipo por exemplo alerta informação erro e usar matrizes para armazenar diferentes mensagens Botões diferentes devem exibir mensagens diferentes no display Monte o circuito adequado com o display LCD e os botões Para demonstrar o funcionamento faça as capturas de tela VII Apresentação do códigofonte colorido include LiquidCrystalh LiquidCrystal lcd12 11 10 5 4 3 2 int BOTAOALERTA 8 Botão pino 8 int BOTAOINFO 7 Botão pino 7 int BOTAOERRO 6 Botão pino 6 int backLight 13 void setup pinModeBOTAOALERTA INPUT entrada pinModeBOTAOINFO INPUTentrada pinModeBOTAOERRO INPUTentrada digitalWritebackLight HIGH lcdbegin16 2 lcdclear Inicializa o display com uma tela vazia void alerta lcdsetCursor0 0 lcdprintALERTA 9 Caderno de Resolução da Atividade Prática de Linguagem de Programação void erro lcdsetCursor0 0 lcdprintERRO void info lcdsetCursor0 0 lcdprintBEMVINDO void loop if digitalReadBOTAOALERTA alerta else if digitalReadBOTAOINFO info else if digitalReadBOTAOERRO erro else lcdclear VIII Apresentação a do circuito 10 Caderno de Resolução da Atividade Prática de Linguagem de Programação IX Apresentar a captura de tela evidenciado o funcionamento 11 Caderno de Resolução da Atividade Prática de Linguagem de Programação 12 Caderno de Resolução da Atividade Prática de Linguagem de Programação 13 Caderno de Resolução da Atividade Prática de Linguagem de Programação 14 Caderno de Resolução da Atividade Prática de Linguagem de Programação PRÁTICA 04 Implementar um sistema de iluminação que ajusta a intensidade de um LED baseado na luz ambiente utilizando alocação dinâmica de memória para armazenar leituras de luz Devese usar um sensor de luz LDR para determinar a intensidade da luz ambiente e ajustar a luminosidade de um LED adequadamente O programa deve alocar dinamicamente um espaço na memória para armazenar as últimas x leituras do sensor e calcular a média para ajustar a intensidade do LED Para x os dois primeiros dígitos do seu RU Monte o circuito adequado com o sensor de temperatura e o LED Para demonstrar o funcionamento faça as capturas de tela X Apresentação do códigofonte colorido RU 3385865 int led A0 LED int sensorLDR A5 LDR int x 33 ultimas x leituras do LDR unsigned int valores33 array de valores int qtdleituras 0 quantidade de leituras int minimo 0 numero minimo de leituras unsigned int soma 0 soma total das 33 leituras void setup pinModeled OUTPUT LED é saída pinModesensorLDR INPUT LDR é entrada void loop int valorLDR analogReadsensorLDR captando leitura if minimo 33 valoresqtdleituras valorLDR atualizo nova posição 15 Caderno de Resolução da Atividade Prática de Linguagem de Programação qtdleituras qtdleituras 1 qtdleituras qtdleituras 33 incrementar qtd de leituras minimo minimo 1 soma soma valorLDR acumula soma analogWriteled somaqtdleituras media das leituras no LED else valoresqtdleituras valorLDR soma 0 int i for i 0 i 33 i acumulando ultimas 33 leituras int pos qtdleituras i 33 33 33 soma soma valorespos unsigned int media soma33 media qtdleituras qtdleituras 1 33 analogWriteled media XI Apresentação a do circuito 16 Caderno de Resolução da Atividade Prática de Linguagem de Programação XII Apresentar a captura de tela evidenciado o funcionamento 17 Caderno de Resolução da Atividade Prática de Linguagem de Programação 18 Caderno de Resolução da Atividade Prática de Linguagem de Programação 19 Caderno de Resolução da Atividade Prática de Linguagem de Programação 20 Caderno de Resolução da Atividade Prática de Linguagem de Programação PRÁTICA 05 Utilizar a recursividade para criar uma sequência animada de acendimento de LEDs onde cada LED é acionado de forma sequencial com um intervalo de tempo e após o último LED a sequência recomeça de maneira recursiva Devese aplicar a recursividade para criar uma animação visual interessante com LEDs Monte o circuito adequado com os LEDs Para demonstrar o funcionamento faça as capturas de tela XIII Apresentação do códigofonte colorido void setup pinMode13 OUTPUT led verde pinMode12 OUTPUT led amarelo pinMode11 OUTPUT led vermelho void pisca3int i if i 10 return digitalWritei HIGH valor alto no led delay300 digitalWritei LOW apaga led atual delay300 digitalWritei HIGH valor alto no led delay300 digitalWritei LOW apaga led atual delay300 digitalWritei HIGH valor alto no led delay300 digitalWritei LOW apaga led atual delay300 pisca3i1 led da porta inferior 21 Caderno de Resolução da Atividade Prática de Linguagem de Programação void pisca int i if i 10 pisca313 return digitalWritei HIGH valor alto no led delay1000 digitalWritei LOW apaga led atual delay1000 piscai1 led da porta inferior void loop pisca13 a partir do led verde XIV Apresentação a do circuito 22 Caderno de Resolução da Atividade Prática de Linguagem de Programação XV Apresentar a captura de tela evidenciado o funcionamento 23 Caderno de Resolução da Atividade Prática de Linguagem de Programação 24