E-papier schild op pcDuino (2 / 6 stap)

Stap 2: Code

 #include ”core.h”//pcDuino contains Core header file 
 #include ”ls.h”//Containing images to be displayed #define STATUS_PIN 9//Define electronic paper 's state pin #define CS_PIN 10//Define electronic paper 's chip select pin #define MISO_PIN 11//Master input and slave output pin #define MOSI_PIN 12//Master output and slave input pin #define SCK_PIN 13//Defined clock pin #define FRAME_END_LEN 11//Define the refresh frequency (I used 11, it's free to modify) unsigned char SoftSpiTransfer(unsigned char data)//Simulating SPI timing { unsigned char cnt; unsigned char rst; rst = 0; for(cnt = 0;cnt < 8 ;cnt ++) { rst <<= 1; if(data & 0×80) digitalWrite(MOSI_PIN,HIGH); else digitalWrite(MOSI_PIN,LOW); digitalWrite(SCK_PIN,HIGH); digitalWrite(SCK_PIN,LOW); rst |= digitalRead(MISO_PIN); data <<= 1; } return rst; } void ClearScring(void)//Clear function { bool DeviceStatus;//Defined a quantity of state DeviceStatus = digitalRead(STATUS_PIN); digitalWrite(CS_PIN,LOW); SoftSpiTransfer(3); while(digitalRead(STATUS_PIN) == DeviceStatus) { asm(“nop”);//Embedded a delay assembler instruction, the same below } digitalWrite(CS_PIN,HIGH); } void SetImageWide(unsigned int wide)//Image width setting function { bool DeviceStatus; DeviceStatus = digitalRead(STATUS_PIN); digitalWrite(CS_PIN,LOW); SoftSpiTransfer(1); while(digitalRead(STATUS_PIN) == DeviceStatus) { asm(“nop”); } DeviceStatus = !DeviceStatus; SoftSpiTransfer(wide >> 8); while(digitalRead(STATUS_PIN) == DeviceStatus) { asm(“nop”); } DeviceStatus = !DeviceStatus; SoftSpiTransfer(wide & 0xff); while(digitalRead(STATUS_PIN) == DeviceStatus) { asm(“nop”); } digitalWrite(CS_PIN,HIGH); } void SetImageHigh(unsigned int high)//Image Height setting function { bool DeviceStatus; DeviceStatus = digitalRead(STATUS_PIN); digitalWrite(CS_PIN,LOW); SoftSpiTransfer(2); while(digitalRead(STATUS_PIN) == DeviceStatus) { asm(“nop”); } DeviceStatus = !DeviceStatus; SoftSpiTransfer(high >> 8); while(digitalRead(STATUS_PIN) == DeviceStatus) { asm(“nop”); } DeviceStatus = !DeviceStatus; SoftSpiTransfer(high & 0xff); while(digitalRead(STATUS_PIN) == DeviceStatus) { asm(“nop”); } digitalWrite(CS_PIN,HIGH); } void SendImage(const unsigned char * pic)//Function of displays pictures { bool DeviceStatus; unsigned char data; unsigned char cnt0; unsigned int cnt1; unsigned long time; DeviceStatus = digitalRead(STATUS_PIN); digitalWrite(CS_PIN,LOW); SoftSpiTransfer(4); while(digitalRead(STATUS_PIN) == DeviceStatus) { asm(“nop”); } DeviceStatus = !DeviceStatus; for(cnt0 = 0;cnt0 < FRAME_END_LEN; cnt0 ++) { Serial.println(“New Line”); for(cnt1 = 0; cnt1 < 120000; cnt1 ++) { data = gImage[cnt1]; SoftSpiTransfer(data); time = 0; while(digitalRead(STATUS_PIN) == DeviceStatus) { asm(“nop”); time ++; if(time > 1000000) { Serial.println(“Error”);//When timeout serial prompt an error digitalWrite(CS_PIN,HIGH); return; } } DeviceStatus = !DeviceStatus; } } digitalWrite(CS_PIN,HIGH); } void setup() { Serial.begin(9600); pinMode(STATUS_PIN, INPUT); pinMode(CS_PIN, OUTPUT); pinMode(MOSI_PIN, OUTPUT); pinMode(MISO_PIN, INPUT); pinMode(SCK_PIN, OUTPUT); digitalWrite(CS_PIN,HIGH); digitalWrite(STATUS_PIN,HIGH); digitalWrite(SCK_PIN,LOW); } void loop() { char cmd; if(Serial.available())//If serial port received a data { cmd = Serial.parseInt(); switch(cmd) { case 1: SetImageWide(600); Serial.println(“Set Image Wide Complete !”); break; case 2: SetImageHigh(800); Serial.println(“Set Image High Complete !”); break; case 3: Serial.println(“Start Clear Scring !”); ClearScring(); Serial.println(“Clear Scring Complete !”); break; case 4: Serial.println(“Start Send Image Data!”); SendImage(gImage); Serial.println(“Send Image Data Complete !”); break; default: Serial.println(“Unknow instruction !”); break; } } } 

Gerelateerde Artikelen

Infrarood schild voor pcDuino

Infrarood schild voor pcDuino

Infrarood is een vorm van draadloze communicatie, die kan worden gebruikt voor het verzenden van gegevens draadloos.Sinds de uitvinding in 1974, het op grote schaal heeft gebruikt, bijvoorbeeld infrarood muis, infraroodprinter, IR toetsenborden, enzo
Schild van de MQ2 op pcDuino

Schild van de MQ2 op pcDuino

LinkSprite heeft een nette MQ2 shiled. In deze tutorial moeten we alleen toe te voegen een MQ 2 schild na T board op pcDuino.Stap 1: Draad diagramStap 2: Get Arduino-ish programmering van de API Moeten we gebruik van github te krijgen van de Arduino-
SIM900 GPRS/GSM Shield gebruiken op pcDuino

SIM900 GPRS/GSM Shield gebruiken op pcDuino

SIM900 GSM/GPRS schild voegt de mogelijkheid van GPRS/GSM aan pcDuino. Het gebruikt AT commando's om te communiceren met pcDuino via de toepassing UART-poort. Met de hulp van SIM900 GPRS/GSM schild, kan enkele basisfuncties van een mobiele telefoon,
Arduino papier Shield

Arduino papier Shield

Ik hou van de Arduino. De UNO in het bijzonder.Echter, samen met vele anderen heb ik moeite gemakkelijk zien de pin namen/nummers.Don't get me begon op het lezen van de waarden van transistors en ICs, zoals er niet veel dat ik kan doen is over dat, a
Microscope fotografie met webcam of point-and-shoot camera

Microscope fotografie met webcam of point-and-shoot camera

ik zal beschrijven twee eenvoudige manieren om foto's te nemen door middel van een Microscoop, een met een punt en shoot camera en één met een goedkope webcam.  Ik zal ook uitleggen hoe te kalibreren van de grootte van objecten in de foto's.De "afoca
Scherm afdrukken een Poster met meerdere kleuren

Scherm afdrukken een Poster met meerdere kleuren

ik ben helemaal verliefd van scherm afdrukken sinds ik nam de fundamentele klasse op TechShop San Jose geworden.Ik heb gekregen vrij goed op afdrukken single kleur projecten, maar ik dacht dat ik zou mezelf uitdaging en leren om niet alleen afdrukken
Laptop Paint Job

Laptop Paint Job

in feite, dit alles tot stand gekomen toen ik hem een laptop off van een mede-werker voor $13 kocht. Hoe meer ik keek op het meer zijn verschijning me ontevreden. Na het baggeren van de interweb, zou de enige optie dat zou echt past bij mijn behoefte
Polk-a-dot geschilderd glaswerk

Polk-a-dot geschilderd glaswerk

zet gewone glaswerk uit saaie DIY lekker met glittery, gouden polk-a-dot ontwerpen.We kregen deze drie glazen bekers gloednieuwe voor slechts $1,00, maar nu ze kijken graag een miljoen dollar. Dit is een leuke en goedkope project die u zult willen do
Aquarel Hip Hip Hooray 4 juli kaart

Aquarel Hip Hip Hooray 4 juli kaart

Een nieuwe week begint, en ik ben zo blij dat u samen met mij op Maker momenten! Ik gewoon niet lijken te krijgen genoeg van de 4e juli thema dus vandaag maakte ik een echt makkelijk kaart. Ik ben dol op aquarel, dus ik dacht dat ik zou vitrine het h
Zwaard en schild papier

Zwaard en schild papier

dit Instructable zal u tonen hoe te maken van een zwaard en schild uit papier.Stap 1: De Shield Zal u een stuk papier.Stap 2: Vouwen #1 Eerste, vouw het papier in de helft "hot dog stijl" (longways) en het vervolgens te ontvouwen.Stap 3: Vouwen
Eenvoudig voorbeeld voor E-papier

Eenvoudig voorbeeld voor E-papier

elektronisch papier, e-papier en elektronische inkt zijn weergave-technologieën die zijn ontworpen om na te bootsen de weergave van gewone inkt op papier. In tegenstelling tot conventionele backlit flatpanels die uitstoten van licht, elektronisch pap
Knex automatische ei schilder

Knex automatische ei schilder

Hallo iedereen,Ik wil een automatische ei schilder. Dus ik dacht dat zou de meest logische materiaal te gebruiken knex. Dus bedacht ik dit. Ik ben ook gaan om u te tonen het proces waarin ik heb geprobeerd om het ontwerp. Het schetst ze met verf of u
Gezicht schilder Hand spiegel

Gezicht schilder Hand spiegel

Als een gezicht schilder ik altijd op zoek naar manieren aan kruid omhoog mijn gezicht schilderen set-up. Zo, besliste ik te nemen van een handheld spiegel ik onlangs gevonden en zet hem int een leuke kunstzinnige meesterwerk! Dit werd geïnspireerd d
Hoe maak je een Romeinse schild

Hoe maak je een Romeinse schild

mijn kinderen zijn dol op reenacting van hun eigen versie van de beroemde gevechten na het spelen van strategie games op de PC. Dan vragen ze mij te laten outfits en / of wapens om te gaan met hen.Dus maakte ik deze Romeinse schild. Kostte me een paa