Bouclier d’E-livre sur pcDuino (2 / 6 étapes)

Étape 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; } } } 

Articles Liés

Utiliser le bouclier GPRS/GSM SIM900 sur pcDuino

Utiliser le bouclier GPRS/GSM SIM900 sur pcDuino

SIM900 GSM/GPRS bouclier ajoute la capacité GPRS/GSM au pcDuino. Il utilise commandes AT pour communiquer avec pcDuino via le port UART de demande. Avec l'aide du bouclier SIM900 GPRS/GSM, il peut atteindre quelques fonctions de base d'un téléphone m
MQ2 bouclier sur pcDuino

MQ2 bouclier sur pcDuino

LinkSprite a un shiled MQ2 soignée. Dans ce tutoriel, nous avons juste besoin d'ajouter un bouclier MQ 2 après T board sur pcDuino.Étape 1: Schéma de câblageÉtape 2: Téléchargez Arduino-ish API de programmation Nous avons besoin d'utiliser github pou
Comment utiliser le WiFi Module dans l’IDE Arduino sur pcDuino

Comment utiliser le WiFi Module dans l’IDE Arduino sur pcDuino

pcDuino v2 a un module WiFi intégré qui fournit la connexion Internet. Les utilisateurs sont demandent comment utiliser le module WiFi dans le style de l'Arduino IDE sur pcDuino ? Est-ce même que WiFi shield pour Arduino ?pcDuino v2 est un linux l'or
Mamba de LinkSprite réaliser communication powerline bande étroite sur pcDuino

Mamba de LinkSprite réaliser communication powerline bande étroite sur pcDuino

Mamba-Narrow Band Powerline Communication bouclier de LinkSprite est PLM1 puce puce modem comme le noyau du module de communication de modulation numérique, qui utilise la communication semi-duplex, point de vue de la routine de l'open source va prés
Installer le détecteur de gaz inflammable sur pcDuino

Installer le détecteur de gaz inflammable sur pcDuino

LinkSprite a un bouclier de détecteur de gaz inflammable. Dans ce tutoriel, nous allons examiner comment l'utiliser sur pcDuino.Étape 1: C-code /* Sample code for MQ2 Smoke Sensor Shield for pcDuino  05/09/2013 ***************************************
Carte d’utilisation SD carte de dérivation sur pcDuino

Carte d’utilisation SD carte de dérivation sur pcDuino

Bien que pcDuino prend directement en charge la mémoire qui s'étend de TF carte et it a une grande capacité,il does ' t nous empêchent de comprendre et d'apprendre comment la carte SD réaliser la lecture et l'écriture sur pcDuinoÉtape 1: Liste des pi
Utilisation 8 x 8 x 8 RGB LED Cube sur pcDuino

Utilisation 8 x 8 x 8 RGB LED Cube sur pcDuino

8 x 8 x 8 cube LED RGB est l'un des superbes RGB LED Cube conçu par LinkSprite. Il a l'interface compatible Arduino et utilise l'interface SPI pour communiquer avec Arduino/pcDuino.Étape 1: Schéma de câblage 8 x 8 x 8 LED Cube peut être installé dire
SDR sur pcDuino

SDR sur pcDuino

Software-defined radio (SDR) est un système de communication radio lorsque les composants qui ont été généralement implémentées dans le matériel (p. ex., mélangeurs, filtres, amplificateurs, modulateurs/démodulateurs, détecteurs, etc.) sont plutôt ré
Configuration de contrôleur Z-Wave sur pcDuino

Configuration de contrôleur Z-Wave sur pcDuino

Z-Wave est un protocole de communication sans fil conçu pour la domotique, spécifiquement pour les applications de contrôle à distance dans des environnements commerciaux résidentiels et légers. La technologie utilise une radio de faible puissance RF
Utilisez picoBoard pour Scratch sur pcDuino

Utilisez picoBoard pour Scratch sur pcDuino

le PicoBoard permet de créer des interactions avec les différents capteurs. En utilisant le langage de programmation Scratch, vous pouvez facilement créer des programmes interactifs simples basés sur les opinions des capteurs. Le PicoBoard intègre un
Utiliser le Timer Interrupt sur pcDuino

Utiliser le Timer Interrupt sur pcDuino

Interruptions de minuterie vous permettent d'exécuter une tâche à très précisément chronométréintervalles indépendamment de ce qui se passe dans votre code.Étape 1: Étape 1: comment utiliser le timer interrupt sur pcDuinoQuand le pcDuino s'exécute Ub
Capteur de température LM35 sur pcDuino

Capteur de température LM35 sur pcDuino

sonde de température LM35 linéaire peut être utilisé pour détecter la température de l'air ambiant. Ce capteur est produit par National Semiconductor Corporation et propose une gamme fonctionnelle entre 0 degré Celsius à 100 degrés Celsius. La sensib
Recycler les vieux livres sur autocollants

Recycler les vieux livres sur autocollants

Dans ce Instructable je vais vous montrer comment utiliser les livres anciens pour fabriquer des autocollants. Ces autocollants sont comme des timbres démodé - il faut lécher (ou mouillez-les avec une éponge) pour les rendre ungraviert.Je suis venu a
Laser Show sur pcDuino

Laser Show sur pcDuino

Un show laser implique l'utilisation de la lumière laser pour divertir un public, ici j'ai sera démo comment jouer show laser sur pcduinoEtape 1: Connaître les modules a. contrôle des stupéfiantsb. émetteur laserc. galvanomètre et piloted. alimentati