Pàgines

diumenge, 5 de gener del 2014

djhcgh

[quote] [color=#7E7E7E]/*[/color] [color=#7E7E7E]Prova: Canviar de text predefinit a un altre a una pantalla lcd amb un botó.[/color] [color=#7E7E7E]Autor: Ivan Carol.[/color] [color=#7E7E7E]Consisteix en mostrar en una pantalla lcd el canvi d'un text predefinit a un altre a partir d'un botó.[/color] [color=#7E7E7E]*/[/color] [color=#7E7E7E]// S'inclueix la llibreria de la pantalla lcd (LiquidCrystal).[/color] #include <[color=#CC6600]LiquidCrystal[/color].h> [color=#7E7E7E]// Es defineixen les entrades digitals de la lcd amb els pins corresponents.[/color] [color=#CC6600]LiquidCrystal[/color] lcd(8, 13, 9, 4, 5, 6, 7); [color=#7E7E7E]//Es defineixen les variables del codi.[/color] [color=#CC6600]int[/color] estat = 0; [color=#CC6600]int[/color] estatAnterior = 0; [color=#CC6600]int[/color] sortida = 0; [color=#CC6600]int[/color] boto = 12; [color=#7E7E7E]//El cicle setup es reiniciarà cada vegada que s'apreti el botó reset.[/color] [color=#CC6600]void[/color] [color=#CC6600][b]setup[/b][/color]() {      lcd.[color=#CC6600]begin[/color](16, 2); [color=#7E7E7E]//S'indica el tamany de la pantalla amb les files i columnes.[/color]      [color=#CC6600]pinMode[/color](boto, [color=#006699]INPUT[/color]); [color=#7E7E7E]// S'estableix el botó com una entrada.[/color]   } [color=#7E7E7E]// El cicle loop es repetirà constantment cada vegada que s'acabi el cicle. [/color] [color=#CC6600]void[/color] [color=#CC6600][b]loop[/b][/color]() {      estat = [color=#CC6600]digitalRead[/color](boto); [color=#7E7E7E]//La lectura del boto (HIGH o LOW) s'estableix com "estat".[/color]    [color=#CC6600]if[/color]((estat == [color=#006699]HIGH[/color]) && (estatAnterior == [color=#006699]LOW[/color])) { [color=#7E7E7E]//S'indiquen dos codicions per que al apretar el botó es compleixin o no les ordres posteriors.[/color]    sortida = 1 - sortida;    [color=#CC6600]delay[/color](20); [color=#7E7E7E]//El programa s'espera 20 ms.[/color]  }   lcd.[color=#CC6600]clear[/color](); [color=#7E7E7E]//Es borra el text de la pantalla que hi havia escrit anteriorment.[/color]      estatAnterior = estat;        lcd.[color=#CC6600]setCursor[/color](0, 0); [color=#7E7E7E]//S'indica a quina fila i columna s'ha descriure el text.[/color]       [color=#CC6600]if[/color](sortida == 0) { [color=#7E7E7E]//Si la condició es compleix el programa realitza l'ordre següent.[/color]      lcd.[color=#CC6600]print[/color]([color=#006699]"primer"[/color]); [color=#7E7E7E]// S'escriu la paraula "primer".[/color]          }          [color=#CC6600]else[/color] { [color=#7E7E7E]// Si no es compleix la condició anterior el programa fa l'ordre que hi ha a continuació.[/color]            lcd.[color=#CC6600]print[/color]([color=#006699]"segon"[/color]) ; [color=#7E7E7E]//S'escriu la paraula "segon".[/color]              }    }     [/quote]

Cap comentari:

Publica un comentari a l'entrada