跳到主要內容

Moving custom-made pixel patterns in LCD

Do you want to know how to move custom-made pixel patterns in LCD ? Here it is :



#include <LiquidCrystal.h>

LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

int movL,movR; int i=0;

byte pixels[8] = {
 B11111,
  B10001,
  B11011,
  B10001,
  B11111,
  B01010,
  B01010,
  B01010
};

void setup() {
  pinMode(14,INPUT_PULLUP);
  pinMode(15,INPUT_PULLUP);
  lcd.createChar(0, pixels);
  lcd.begin(16, 2);
  lcd.write(byte(0));
}

void loop() {

    movL=digitalRead(14);
    movR=digitalRead(15);
    if(movL==0)
    {
     i++;
    lcd.clear();
    lcd.setCursor(i,0);
    lcd.write(byte(0));
    delay(200);
    }

    if(movR==0)
    {
     i--;
    lcd.clear();
    lcd.setCursor(i,0);
    lcd.write(byte(0));
    delay(200);
    }


  }

留言

這個網誌中的熱門文章

DIY Electronic Alarm

This is my DIY Electronic Alarm, now the prototype has been finished with breadboard, but the PCB layout has not been finished yet. I use a MCU(Arduino Uno) and four 74LS47 7-segment-display drivers to control the four 7-segment-displays to show the digits of Minutes and Seconds. When the alarm is triggered, the buzzer will generate sound.

Heart-shaped LED Chaser PCB Board

Using Printed Circuit Board (PCB) can give you a neat and stable electronic circuit assembly. A month ago I used PCB technology to make a heart-shaped LED Chaser board.

LED Tetris

Here is the implementations of code for LED Tetris game. #include "config.h" #include <stdio.h> void write_data(unsigned char,unsigned char); //Writing data to the MAX7219 chip to display different 8x8 LED patterns unsigned int led_element[8][8];  //Global variables 2D array for static tetris blocks unsigned int decimal_value=0; unsigned int row_cancel=0; //stores the current number of rows cancelled unsigned int button_pressed=0;  unsigned int step_fallen=0 ; //unsigned int random_total; unsigned int block_type; unsigned char x_button=3 ; //Global variables x for the coordinates of the temp falling block                     //Declaring x corrdinate of temp falling block allows you to modify its coordinate everywhere, in any scope unsigned int rotation_index = 0; unsigned int rotation_button_pressed = 2; unsigned int score=0; unsigned int n; unsigned int first_digit; unsigned int second_digit; void bingo(); //If 8 LEDs i