#define BA {B ,B ,B ,B ,B ,B } #define BB {B ,B ,B ,B ,B ,B }

Similar documents
Working with Data sent to a Computer or Flash Stick

22ND CENTURY_J1.xls Government Site Hourly Rate

Appendix 5-1: Attachment J.1 Pricing Table -1: IMS Ceiling Loaded Rates at Contractor Site

spi 1 Fri Oct 13 13:04:

SPAREPARTSCATALOG: CONNECTORS SPARE CONNECTORS KTM ART.-NR.: 3CM EN

SPARE CONNECTORS KTM 2014

Parts List, Charging Chart, Wiring Diagrams

Serial Peripheral Interface (SPI)

EE 308: Microcontrollers

60mA maximum (all channels on)

JUBILEE HOW-TO HANDBOOK

3 Wire LED Module (SKU:DFR0090)

C-CODE EXAMPLE FOR SCP1000-D01 PRESSURE SENSOR

SPI: Serial Peripheral Interface

Loop Qualification Bulk Loader

Avoiding KeyStrokes in Windows Applications using C#

Thursday, May 11, Funds and what they may do i o r you. Phone or write today.. DONALD A. BURLESON, Representative

SCREEN LAYOUT AND HANDLING

a Serial Peripheral Interace (SPI). Embedded RISC Microcontroller Core Peripheral

Seperated modulars Head. Empower the World E-13. Metal-headed. Plastic-headed. Head-metal. φ40mm mushroom NP2-BC. φ60mm mushroom NP2-BR

< W3150A+ / W5100 Application Note for SPI >

Linear lambda calculus and PTIME-completeness

ShiftOut Tutorial. Maria Taylor

Module 3.C. Serial Peripheral Interface (SPI) Tim Rogers 2017

TECHNICAL BULLETIN. Thank you for your continued support of Mitsubishi integrated FA software MELSOFT series.

User Guide for OSM users to Record Youth Data on the TSA Template to be Used for Uploading Youth Data to Compass

Project 18 Dual 8-Bit Binary Counters

This tutorial will show you how to take temperature readings using the Freetronics temperature sensor and an Arduino Uno.

Marten van Dijk, Syed Kamran Haider

OPAL-RT FIU User Guide.

BOOK-IT 8.0. SIP2 implementation in the Z39.70 server

o w n b a p t i s m by a B a p t i s t m i n i s t e r, t h e P e d o baptist minister,who.se labors previously h e had

AT89S4D12. 8-Bit Microcontroller with 132K Bytes Flash Data Memory AT89S4D12. Features. Description. Pin Configurations

Marten van Dijk Department of Electrical & Computer Engineering University of Connecticut

Project 17 Shift Register 8-Bit Binary Counter

A. All equipment and materials used shall be standard components that are regularly manufactured and used in the manufacturer s system.

Design with Microprocessors

Embedded Systems and Software. Serial Interconnect Buses I 2 C (SMB) and SPI

Automated Railcar Release

Menu. What is SPI? EEL 3744 EEL 3744 SPI

The 9S12 Serial Peripheral Inteface (SPI) Huang Section 10.2 through 10.6 SPI Block User Guide

BACnet Protocol Implementation Conformance (PIC) Statement

Asynchronous & Synchronous Serial Communications Interface. Student's name & ID (1): Partner's name & ID (2): Your Section number & TA's name

Preconnectorized Stubbed Hardware An Evolant Solutions Product

Freescale Semiconductor, I

Earthshine Design Arduino Starters Kit Manual - A Complete Beginners Guide to the Arduino. Project 15. Shift Register 8-Bit Binary Counter

Orangutan X2 Command Documentation v1.01

What is Meant By Cotton Goods

Asynchronous & Synchronous Serial Communications Interface. Student's name & ID (1): Partner's name & ID (2): Your Section number & TA's name

EE 456 Fall, Table 1 SPI bus signals. Figure 1 SPI Bus exchange of information between a master and a slave.

DETAIL SPECIFICATION SHEET

Reconfigurable Computing Systems ( L) Fall 2012 Tiny Register Machine (TRM)

8-bit RISC Microcontroller. Application Note. AVR151: Setup And Use of The SPI

Parts List, Charging Chart, Wiring Diagrams

B - i TNA 134:1997. Technical Document TNA 134. Telecom ISDN User-Network Interface: Layer 3: PART B Basic Call Control Procedures

SMAJ SERIES 400 Watts Suface Mount Transient Voltage Suppressor SMA/DO-214AC. RoHS. Features

COMSGATE. Specifications. Document Version: 2.6 rev. 3 Prepared for: CHARGE Anywhere

ECE 4510/5530 Microcontroller Applications Week 6

LOWELL WEEKLY JOURNAL

AVR PCD8544 DRIVER DOCUMENTATION

EE4390 Microprocessors

EE Embedded Systems Design. Lessons Exceptions - Resets and Interrupts

LCD H C 1 2 GP2D PP4 MISO MOSI DIN DOUT SCK PP5 SCK D0 D1 D2 D3 D4 D5 D6 D7 DIN. Maximum SCK = 500 khz SCK D0 D1 D2 D3 D4 D5 D6 D7 DOUT

8-bit Microcontroller with 12K Bytes Flash and 2K Bytes EEPROM AT89S8253

CIS-331 Exam 2 Spring 2016 Total of 110 Points Version 1

Industrial Wireway & Trough

SPI Block User Guide V02.07

Scorciatoie da tastiera - Circad 4.09

Staff Report City of Manhattan Beach

Laboratory 5 Communication Interfaces

EDI Import Interface Guide

8-bit Microcontroller with 12K Bytes Flash and 2K Bytes EEPROM AT89S8253. Preliminary

and A L T O SOLO LOWELL. MICHIGAN, THURSDAY, MAY 15, 1930 Council In Lowell Regular meeting of the Common Council of the Village of

Construction. Quality Products. Service Excellence.

DS Manager IP Setup For use with Hall Research Products. Table of Contents

Parts List, Wiring Diagrams

Introduction to Arduino

Parts List, Charging Chart, Wiring Diagrams

Use of a Segmented Electrode To Control Current Distribution In Electrochemical Systems

USER MANUAL. TC9485UM Rev. AE 04/14. All specifications are subject to change without notice

CIS-331 Final Exam Spring 2015 Total of 115 Points. Version 1

Turbidostat Hardware and Software Design

Order this document by EB285/D Motorola Semiconductor Engineering Bulletin EB285 C Macro Definitions for the MC68HC(7)11E20 By John Bodnar

Notes on using Serial IO driven by EI²OS. Fujitsu Mikroelektronik GmbH Vers. 1.0 by Holger Lösche

Compact PLC for STEP7 from Siemens PLC-CPU for STEP7 from Siemens Order no. Type VIPA 214-1BA02 CPU 214 VIPA 214-1BC02 CPU 214C VIPA 215-1BA02

10-1 C D Pearson Education, Inc. M. Morris Mano & Charles R. Kime LOGIC AND COMPUTER DESIGN FUNDAMENTALS, 4e

Chapter 2 The Basic Functions

8-Bit Microcontroller with 8K Bytes Flash AT89S8252. Features. Description

Contents. List of Figures. SPIDriver Datasheet 1. 1 Overview 2. 2 Features 2. 3 Installation with Arduino 3

L A M P I R A N UNIVERSITAS KRISTEN MARANTHA

ArduinoISP. Troubleshooting of "programmer is not in sync" Main Sketch (Retired Code)

L* Split Crucible Crucible section is split on molds designed with horizontal opening for easier cleaning

AQS (Air Quality System) General Overview

Application Note. Interfacing the CS5525/6/9 to the 68HC05. By Keith Coffey MOSI (PD3) SDO MISO (PD2) SCLK. Figure 1. 3-Wire and 4-Wire Interfaces

Published SFF-8552 Rev 1.4

1.3inch OLED User Manual

CIS-331 Fall 2013 Exam 1 Name: Total of 120 Points Version 1

F28335 I2C MODULE v1.1

EDI Import Interface Guide (v2)

CS 1110: WORKED EXAMPLES REGARDING LOOPS AND INVARIANTS

Transcription:

BA {B01110000,B10001000,B10001000,B11111000,B10001000,B10001000 BB {B11110000,B10001000,B10001000,B11110000,B10001000,B11111000 BC {B11111000,B10000000,B10000000,B10000000,B10000000,B11111000 BD {B11110000,B10001000,B10001000,B10001000,B10001000,B11110000 BE {B11111000,B10000000,B10000000,B11110000,B10000000,B11111000 BF {B11111000,B10000000,B10000000,B11110000,B10000000,B10000000 BG {B01110000,B10001000,B10000000,B10011000,B10001000,B01110000 BH {B10001000,B10001000,B11111000,B10001000,B10001000,B10001000 BI {B11111000,B00100000,B00100000,B00100000,B00100000,B11111000 BJ {B00111000,B00010000,B00010000,B00010000,B10010000,B01100000 BM {B10001000,B11011000,B10101000,B10101000,B10001000,B10001000 BN {B10001000,B11001000,B10101000,B10101000,B10011000,B10001000 BL {B10000000,B10000000,B10000000,B10000000,B10000000,B11111000 BO {B01110000,B10001000,B10001000,B10001000,B10001000,B01110000 BP {B11110000,B10001000,B10001000,B11110000,B10000000,B10000000 BQ {B01110000,B10001000,B10101000,B10011000,B01111000,B00001000 BR {B11110000,B10001000,B10001000,B11110000,B10001000,B10001000 BS {B01110000,B10001000,B01100000,B00010000,B10001000,B01110000 BK {B10001000,B10010000,B11100000,B11100000,B10010000,B10001000 BT {B11111000,B00100000,B00100000,B00100000,B00100000,B00100000 BU {B10001000,B10001000,B10001000,B10001000,B10001000,B01110000 BV {B10001000,B10001000,B10001000,B10001000,B01010000,B00100000 BW {B10001000,B10001000,B10101000,B10101000,B10101000,B01010000 BX {B10001000,B01010000,B00100000,B00100000,B01010000,B10001000 BY {B10001000,B01010000,B00100000,B00100000,B00100000,B00100000 BZ {B11111000,B00001000,B00110000,B01100000,B10000000,B11111000 LA{B00000000,B01110000,B00001000,B01111000,B10001000,B01111000 LB{B10000000,B10000000,B10110000,B11001000,B10001000,B11110000 LC{B00000000,B01110000,B10000000,B10000000,B10001000,B01110000 LD{B00001000,B00001000,B01111000,B10001000,B10001000,B01111000 LE{B00000000,B01110000,B10001000,B11111000,B10000000,B01110000 LF{B00110000,B01001000,B01000000,B11100000,B01000000,B01000000 LG{B00000000,B01111000,B10001000,B01111000,B00001000,B01110000 LH{B10000000,B10000000,B10110000,B11001000,B10001000,B10001000 LI{B00100000,B00000000,B01100000,B00100000,B00100000,B01111000 LJ{B00010000,B00000000,B00111000,B00010000,B10010000,B01100000 LK{B10000000,B10010000,B10100000,B11000000,B10100000,B10010000 LL{B01100000,B00100000,B00100000,B00100000,B00100000,B01111000 LM{B00000000,B00000000,B11010000,B10101000,B10101000,B10001000 LN{B00000000,B00000000,B10110000,B11001000,B10001000,B10001000 LO{B00000000,B01110000,B10001000,B10001000,B10001000,B01110000 LP{B00000000,B11110000,B10001000,B11110000,B10000000,B10000000 LQ{B00000000,B01101000,B10011000,B01111000,B00001000,B00001000 LR{B00000000,B00000000,B10110000,B11001000,B10000000,B10000000 LS{B00000000,B01110000,B10000000,B01110000,B00001000,B11110000 LT{B01000000,B01000000,B11100000,B01000000,B01001000,B00110000 LU{B00000000,B00000000,B10001000,B10001000,B10011000,B01101000 LV{B00000000,B00000000,B10001000,B10001000,B01010000,B00100000 LW{B00000000,B00000000,B10001000,B10101000,B10101000,B01010000 LX{B00000000,B10001000,B01010000,B00100000,B01010000,B10001000 LY{B00000000,B10001000,B10001000,B01111000,B00001000,B01110000 LZ{B00000000,B11111000,B00010000,B00100000,B01000000,B11111000 SPACE{B00000000,B00000000,B00000000,B00000000,B00000000,B00000000 NUM0{B01110000,B10011000,B10101000,B10101000,B11001000,B01110000 NUM1{B00100000,B01100000,B10100000,B00100000,B00100000,B01110000 NUM2{B01110000,B10001000,B00001000,B01110000,B10000000,B11111000 NUM3{B11110000,B00001000,B00001000,B01111000,B00001000,B11110000 NUM4{B10001000,B10001000,B10001000,B11111000,B00001000,B00001000 NUM5{B11111000,B10000000,B11110000,B00001000,B10001000,B01110000

NUM6{B11111000,B10000000,B11111000,B10001000,B10001000,B11111000 NUM7{B11111000,B00001000,B00001000,B01111000,B00001000,B00001000 NUM8{B11111000,B10001000,B11111000,B10001000,B10001000,B11111000 NUM9{B11111000,B10001000,B11111000,B00001000,B00001000,B11111000 DEVIDE{B00001000,B00010000,B00100000,B00100000,B01000000,B10000000 TWODOTS{B01100000,B01100000,B00000000,B00000000,B01100000,B01100000 DOT{B00000000,B00000000,B00000000,B00000000,B01100000,B01100000 COMA{B00000000,B00000000,B00000000,B00110000,B00110000,B01100000 LINE{B00000000,B00000000,B11111000,B11111000,B00000000,B00000000 QUASTION{B01110000,B10001000,B00010000,B00100000,B00000000,B00100000 MARK{B00100000,B01110000,B01110000,B00100000,B00000000,B00100000 int latchpin = 10; int clockpin = 13; int datapin = 11; int clock = 9; int Reset = 8; int latchpinportb = latchpin - 8; int clockpinportb = clockpin - 8; int datapinportb = datapin - 8; int i = 0; int incomingbyte[44]; long scrolling_word[6]; int array_turn=0; byte patterns[100][6]; byte dummy_array[70][6] ={BA,BB,BC,BD,BE,BF,BG,BH,BI,BJ,BK,BL,BM,BN,BO,BP,BQ,BR,BS,BT,BU,BV,BW,BX,BY,BZ,SPACE,NUM0,NUM1,NUM2,NUM3,NUM4,NUM5,NUM6,NUM7,NUM8,NUM9,DEVIDE,TWO DOTS,DOT,COMA,LINE,QUASTION,MARK,LA,LB,LC,LD,LE,LF,LG,LH,LI,LJ,LK,LL,LM,L N,LO,LP,LQ,LR,LS,LT,LU,LV,LW,LX,LY,LZ; void setup(){ Serial.begin(9600); pinmode(datapin,output); pinmode(clockpin,output); pinmode(latchpin,output); pinmode(clock,output); pinmode(reset,output); digitalwrite(reset,high); digitalwrite(reset,low); setupspi(); void display_word(int loops,byte word_print[][6],int num_patterns,int delay_langth){// this function displays your symbols i = 0;// resets the counter fot the 4017 for(int g=0;g<6;g++)//resets the the long int where your word goes scrolling_word[g] = 0; for(int x=0;x<num_patterns;x++){//main loop, goes over your symbols // you will need to find a better way to make the symbols scroll my way is limited for 24 columns for(int r=0;r<6;r++)//puts the buildes the first symbol scrolling_word[r] = word_print[x][r]; for (int z=0;z<6;z++){//the sctolling action for(int p=0;p<6;p++) scrolling_word[p] = scrolling_word[p] << 1; // end of the scrolling funcion

for(int t=0;t<delay_langth;t++){// delay function, it just loops over the same display for(int y=0;y<6;y++){// scaning the display if(i == 6){// counting up to 6 with the 4017 digitalwrite(reset,high); digitalwrite(reset,low); i = 0; spi_transfer(make_word(0x01000000,y));// sending the data spi_transfer(make_word(0x00010000,y)); spi_transfer(make_word(0x00000100,y)); delaymicroseconds(800);//waiting a bit // clearing the data digitalwrite(clock,high);//counting up with the 4017 digitalwrite(clock,low); i++; finish_scroll(delay_langth); void finish_scroll(int delay_scroll){// this function is the same as the funcion above, it just finishing scrolling for (int n=0;n<24;n++){ for(int h=0;h<6;h++) scrolling_word[h] = scrolling_word[h] << 1; for(int w=0;w<delay_scroll;w++){ for(int k=0;k<6;k++){ if(i == 6){ digitalwrite(reset,high); digitalwrite(reset,low); i = 0; spi_transfer(make_word(0x01000000,k)); spi_transfer(make_word(0x00010000,k)); spi_transfer(make_word(0x00000100,k)); delaymicroseconds(800); digitalwrite(clock,high); digitalwrite(clock,low); i++;

byte make_word (long posistion,byte turn){ byte dummy_word = 0; for(int q=0;q<8;q++){ if(scrolling_word[turn] & (posistion<<q)) dummy_word = 0x01<<q; return dummy_word; void loop() { // send data only when you receive data: if(serial.available() > 0){ delay(100); incomingbyte[array_turn] = Serial.read(); array_turn++; else{ if(array_turn!= 0){ for(int az=0;az<array_turn;az++){ if((incomingbyte[az] > 64 && incomingbyte[az] < 91) (incomingbyte[az] > 96 && incomingbyte[az] < 123)){ if(incomingbyte[az] > 64 && incomingbyte[az] < 91){ for(int lal=0;lal<6;lal++) patterns[az][lal] = dummy_array[incomingbyte[az] - 65][lal]; else{ for(int lal=0;lal<6;lal++) patterns[az][lal] = dummy_array[incomingbyte[az] - 53][lal]; else{ switch(incomingbyte[az]){ case 32://space patterns[az][lol] = dummy_array[26][lol]; case 33://mark patterns[az][lol] = dummy_array[43][lol]; case 45://line patterns[az][lol] = dummy_array[41][lol]; case 44://coma patterns[az][lol] = dummy_array[40][lol]; case 46://dot patterns[az][lol] = dummy_array[39][lol]; case 47://dvide patterns[az][lol] = dummy_array[37][lol]; case 48://0

patterns[az][lol] = dummy_array[27][lol]; case 49://1 patterns[az][lol] = dummy_array[28][lol]; case 50://2 patterns[az][lol] = dummy_array[29][lol]; case 51://3 patterns[az][lol] = dummy_array[30][lol]; case 52://4 patterns[az][lol] = dummy_array[31][lol]; case 53://5 patterns[az][lol] = dummy_array[32][lol]; case 54://6 patterns[az][lol] = dummy_array[33][lol]; case 55://7 patterns[az][lol] = dummy_array[34][lol]; case 56://8 patterns[az][lol] = dummy_array[35][lol]; case 57://9 patterns[az][lol] = dummy_array[36][lol]; case 58://tow dots patterns[az][lol] = dummy_array[38][lol]; case 63://quastion patterns[az][lol] = dummy_array[42][lol]; default: patterns[az][lol] = dummy_array[26][lol]; display_word(1,patterns,array_turn,15); array_turn =0;

//display_word(1,patterns,43,15);// calls for the display_pattern function and says that int loop = 15(if you do more loop the pattern whould scrrol slower). void latchon(){ bitset(portb,latchpinportb); void latchoff(){ bitclear(portb,latchpinportb); void setupspi(){ byte clr; SPCR = ( (1<<SPE) (1<<MSTR) ); // enable SPI as master //SPCR = ( (1<<SPR1) (1<<SPR0) ); // set prescaler bits SPCR &= ~( (1<<SPR1) (1<<SPR0) ); // clear prescaler bits clr=spsr; // clear SPI status reg clr=spdr; // clear SPI data reg SPSR = (1<<SPI2X); // set prescaler bits //SPSR &= ~(1<<SPI2X); // clear prescaler bits delay(10); byte spi_transfer(byte data) { SPDR = data; while (!(SPSR & (1<<SPIF))) { ; return SPDR; that // Start the transmission // Wait the end of the transmission // return the received byte, we don't need