Symbianize Forum

Most of our features and services are available only to members, so we encourage you to login or register a new account. Registration is free, fast and simple. You only need to provide a valid email. Being a member you'll gain access to all member forums and features, post a message to ask question or provide answer, and share or find resources related to mobile phones, tablets, computers, game consoles, and multimedia.

All that and more, so what are you waiting for, click the register button and join us now! Ito ang website na ginawa ng pinoy para sa pinoy!

arduino WIFI vendo, SD card, i2c LCD , coin acceptor

exquiset1128

Recruit
Basic Member
Messages
1
Reaction score
0
Points
16
mga boss , patolong namn po, yung schematics ng arduino wifi vendo madali lang kopyahin, nahihirapan lang po ako sa code, kung paano ma babasa ang SD card text file na yun glast line lang ang ma flash sa screen ng i2c lcd. baka may ma share kayung link mga boss,
 
sir, pa share po ng schematic and code para po mapag aralan natin kung ano probz nyan...
 
Just for sharing

WIFI Vendo ( Code display in LCD from SD Card)

#include <SPI.h>
#include "SdFat.h"
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,20,4);
const uint8_t chipSelect = SS;
String b="";
int counter=0;
int usedcounter=0;
int wrtcounter=0;
int coincounter=0;
int coinwrtcounter=0;
int coinusedcounter=0;
String inString;
String b2="";
int counter2=0;
int usedcounter2=0;
int wrtcounter2=0;
String inString2;
int screensaver=0;
SdFat SD;
File myFile;
ArduinoOutStream cout(Serial);
int a =0;
int e = 6;
int r = 8;
int i = 7;
int o =0;
int o1=0;
int led1hr = 3;
int led1d = 4;
int buttoncounter=0;
#define error(s) SD.errorHalt(F(s))
void r1hr_get_code() {
char line[25];
int n;
SdFile rdfile("code1hr.txt", O_READ);
if (!rdfile.isOpen()) {
error("error reading code1hr.txt file");}
Serial.println(F("Selecting Specific Voucher For 1hr"));
while ((n = rdfile.fgets(line, sizeof(line))) > 0) {
if (line[n - 1] == '\n') {
counter++;
if (counter == usedcounter){
b=line;} }}
counter = 0;
Serial.println(b);
rdfile.close(); }
void r1hr_get_counter() {
char line[25];
int n;
Serial.println(F("Getting Counter For 1hr"));
SdFile rdfile("counter1hr.txt", O_READ);
if (!rdfile.isOpen()) {
error("error reading counter1hr.txt");}
while ((n = rdfile.fgets(line, sizeof(line))) > 0) {
if (line[n - 1] == '\n') {
usedcounter=0;
inString = line;
usedcounter = (inString.toInt());
} }
counter = 0;
rdfile.close(); }
void r1hr_write_counter(){
Serial.println(F("Writing Counter For 1hr"));
myFile = SD.open("counter1hr.txt", FILE_WRITE);
if (myFile) {
wrtcounter = usedcounter+1;
myFile.println(wrtcounter);
myFile.close(); } }
void r3hr_get_code() {
char line[25];
int n;
SdFile rdfile("code3hr.txt", O_READ);
if (!rdfile.isOpen()) {
error("error reading code3hr.txt file");}
Serial.println(F("Selecting Specific Voucher For 3hr"));
while ((n = rdfile.fgets(line, sizeof(line))) > 0) {
if (line[n - 1] == '\n') {
counter++;
if (counter == usedcounter){
b=line; } }}
counter = 0;
Serial.println(b);
rdfile.close(); }
void r3hr_get_counter() {
char line[25];
int n;
Serial.println(F("Getting Counter For 3hr"));
SdFile rdfile("counter3hr.txt", O_READ);
if (!rdfile.isOpen()) {
error("error reading counter3hr.txt"); }
while ((n = rdfile.fgets(line, sizeof(line))) > 0) {
if (line[n - 1] == '\n') {
usedcounter=0;
inString = line;
usedcounter = (inString.toInt()); } }
counter = 0;
Serial.println(usedcounter);
rdfile.close(); }
void r3hr_write_counter(){
Serial.println(F("Writing Counter For 3hr"));
myFile = SD.open("counter3hr.txt", FILE_WRITE);
if (myFile) {
wrtcounter = usedcounter+1;
myFile.println(wrtcounter);
myFile.close();}
Serial.println(wrtcounter);}
void r12hr_get_code() {
char line[25];
int n;
SdFile rdfile("code12hr.txt", O_READ);
if (!rdfile.isOpen()) {
error("error reading code1hr.txt file"); }
Serial.println(F("Selecting Specific Voucher For 12hr"));
while ((n = rdfile.fgets(line, sizeof(line))) > 0) {
if (line[n - 1] == '\n') {
counter++;
if (counter == usedcounter){
b=line; } } }
counter = 0;
Serial.println(b);
rdfile.close(); }
void r12hr_get_counter() {
char line[25];
int n;
Serial.println(F("Getting Counter For 12hr"));
SdFile rdfile("counter12hr.txt", O_READ);
if (!rdfile.isOpen()) {
error("error reading counter12hr.txt"); }
while ((n = rdfile.fgets(line, sizeof(line))) > 0) {
if (line[n - 1] == '\n') {
usedcounter=0;
inString = line;
usedcounter = (inString.toInt()); } }
counter = 0;
Serial.println(usedcounter);
rdfile.close(); }
void r12hr_write_counter(){
Serial.println(F("Writing Counter For 12hr"));
myFile = SD.open("counter12hr.txt", FILE_WRITE);
if (myFile) {
wrtcounter = usedcounter+1;
myFile.println(wrtcounter);
myFile.close();}
Serial.println(wrtcounter);}
void r1day_get_code() {
char line[25];
int n;
SdFile rdfile("code1day.txt", O_READ);
if (!rdfile.isOpen()) {
error("error reading code1day.txt file");}
Serial.println(F("Selecting Specific Voucher For 1day"));
while ((n = rdfile.fgets(line, sizeof(line))) > 0) {
if (line[n - 1] == '\n') {
counter++;
if (counter == usedcounter){
b=line;} }}
counter = 0;
Serial.println(b);
rdfile.close(); }
void r1day_get_counter() {
char line[25];
int n;
Serial.println(F("Getting Counter For 1day"));
SdFile rdfile("counter1day.txt", O_READ);
if (!rdfile.isOpen()) {
error("error reading counter1day.txt"); }
while ((n = rdfile.fgets(line, sizeof(line))) > 0) {
if (line[n - 1] == '\n') {
usedcounter=0;
inString = line;
usedcounter = (inString.toInt()); } }
counter = 0;
Serial.println(usedcounter);
rdfile.close(); }
void r1day_write_counter(){
Serial.println(F("Writing Counter For 1day"));
myFile = SD.open("counter1day.txt", FILE_WRITE);
if (myFile) {
wrtcounter = usedcounter+1;
myFile.println(wrtcounter);
myFile.close();}
Serial.println(wrtcounter);}
void coin_get_counter() {
char line[25];
int n;
Serial.println(F("Getting Counter for insertedcoin.txt"));
SdFile rdfile("insertedcoin.txt", O_READ);
if (!rdfile.isOpen()) {
error("error reading insertedcoin.txt");}
while ((n = rdfile.fgets(line, sizeof(line))) > 0) {
if (line[n - 1] == '\n') {
coinusedcounter=0;
inString = line;
coinusedcounter = (inString.toInt()); } }
coincounter = 0;
Serial.println(usedcounter);
rdfile.close(); }
void coin_write_counter(){
Serial.println(F("Writing Counter For insertedcoin.txt"));
myFile = SD.open("insertedcoin.txt", FILE_WRITE);
if (myFile) {
coinwrtcounter = coinusedcounter+5;
Serial.println(F("TOTAL COIN"));
Serial.println(coinwrtcounter);
myFile.println(coinwrtcounter);
myFile.close(); } }
void setup(void) {
Serial.begin(9600);
while (!Serial) {
SysCall::yield();}
if (!SD.begin(chipSelect, SD_SCK_MHZ(50))) {
SD.initErrorHalt();}
lcd.init();
lcd.backlight();
lcd.begin(16, 2);
lcd.setCursor(0,0);
lcd.print(F(" Welcome "));
lcd.setCursor(0, 1);
lcd.print(F(" Insert P5 Coin"));
}
void loop() {
int button = digitalRead(r);
int button3 = digitalRead(i);
if (button == LOW) {
coin_get_counter();
coin_write_counter();
Serial.println(F("5 peso detected"));
screensaver=0;
a = a +5;
lcd.clear();
lcd.setCursor(0, 0);
lcd.print(F("CODE FOR 1hr"));
lcd.setCursor(0, 1);
lcd.print(F("Coin ="));
lcd.setCursor(12, 1);
lcd.print(a);
if (a >= 15){
lcd.setCursor(0, 0);
lcd.print(F("CODE FOR 3hrs"));
lcd.setCursor(0, 1);
lcd.print(F("Coins ="));
lcd.setCursor(12, 1);
lcd.print(a); }
if (a >= 20){
lcd.setCursor(0, 0);
lcd.print(F("CODE FOR 12hrs"));
lcd.setCursor(0, 1);
lcd.print(F("Coins ="));
lcd.setCursor(12, 1);
lcd.print(a); }
if (a >= 40){
lcd.setCursor(0, 0);
lcd.print(F("CODE FOR 1day"));
lcd.setCursor(0, 1);
lcd.print(F("Coins ="));
lcd.setCursor(12, 1);
lcd.print(a);
} }
if (buttoncounter == 0){
if (button3 == LOW) {
Serial.println(F("show code button pressed"));
screensaver=0;
lcd.clear();
if (a==0){
lcd.setCursor(0, 0);
lcd.print(F(" Please Insert"));
lcd.setCursor(0, 1);
lcd.print(F(" 5 Peso Coin"));
}
if(a >=5 and a <=14){
r1hr_get_counter();
r1hr_write_counter();
r1hr_get_code();
a= a - 5;
lcd.setCursor(0, 0);
lcd.print(F("CODE :"));
lcd.setCursor(8, 0);
lcd.print(b);
lcd.setCursor(0, 1);
lcd.print(F("Copy and Sign-in"));
delay(5000);
buttoncounter=2;
lcd.setCursor(0, 1);
lcd.print(F("Press CLR Button"));
}
if(a >=15 and a <=19){
r3hr_get_counter();
r3hr_write_counter();
r3hr_get_code();
a= a - 15;
lcd.setCursor(0, 0);
lcd.print(F("CODE :"));
lcd.setCursor(8, 0);
lcd.print(b);
lcd.setCursor(0, 1);
lcd.print(F("Copy and Sign-in"));
delay(5000);
buttoncounter=2;
lcd.setCursor(0, 1);
lcd.print(F("Press CLR Button"));}
if(a >=20 and a <=39 ){
r12hr_get_counter();
r12hr_write_counter();
r12hr_get_code();
a= a - 20;
lcd.setCursor(0, 0);
lcd.print(F("CODE :"));
lcd.setCursor(8, 0);
lcd.print(b);
lcd.setCursor(0, 1);
lcd.print(F("Copy and Sign-in"));
delay(5000);
buttoncounter=2;
lcd.setCursor(0, 1);
lcd.print(F("Press CLR Button"));}
if(a >=40 and a <=50 ){
r1day_get_counter();
r1day_write_counter();
r1day_get_code();
a= a - 40;
lcd.setCursor(0, 0);
lcd.print(F("CODE :"));
lcd.setCursor(8, 0);
lcd.print(b);
lcd.setCursor(0, 1);
lcd.print(F("Copy and Sign-in"));
delay(5000);
buttoncounter=2;
lcd.setCursor(0, 1);
lcd.print(F("Press CLR Button")); }
if(a>51){
lcd.setCursor(0, 0);
lcd.print(F("!!!ERROR COIN!!!"));
lcd.setCursor(0, 1);
lcd.print(F(" ACCEPTOR"));}
a=0;
b=""; }}
else if(buttoncounter ==2){
if (button3 == LOW) {
buttoncounter= 0;
lcd.print(F("CODE CLEARED"));
Serial.println(F("clear button pressed"));
delay(1000);
lcd.clear();
lcd.setCursor(0,0);
lcd.print(F(" Insert P5 Coin"));
lcd.setCursor(0, 1);
lcd.print(F(" P5/1hr P35/day")); } }
else{
}
if (button == HIGH) {
screensaver++;
delay(5);
if (screensaver > 24000){
screensaver = 25005;
o++;
lcd.setCursor(16, 1);
lcd.print(o);
if (o>500){
o1++;
o=0;
if (o1 >= 5){
lcd.clear();
lcd.setCursor(0, 0);
lcd.print(F("Insert P5 Coin"));
lcd.setCursor(0, 1);
lcd.print(F(" Select 1hr/1day"));
o=0;}
if(o1 >= 10){
lcd.clear();
lcd.setCursor(0, 0);
lcd.print(F(" Copy Voucher "));
lcd.setCursor(0, 1);
lcd.print(F(" FOR 15 SECONDS "));
o=0;}
if(o1>=15){
lcd.clear();
lcd.setCursor(0, 0);
lcd.print(F(" SIGN IN"));
lcd.setCursor(0, 1);
lcd.print(F(" DONE "));
o=0;}
if(o1>=20){
lcd.clear();
lcd.setCursor(0, 0);
lcd.print(F(" WITH LIVE CHAT"));
lcd.setCursor(0, 1);
lcd.print(F(" SUPPORT"));
o=0;}
if(o1>=25){
lcd.clear();
lcd.setCursor(0, 0);
lcd.print(F(" Call/Text"));
lcd.setCursor(0, 1);
lcd.print(F(" 0929------- "));
o=0;}
if(o1>=30){
lcd.clear();
lcd.setCursor(0, 0);
lcd.print(F(" P5/1hr P35/day "));
lcd.setCursor(0, 1);
lcd.print(F("________________"));
o=0;}
if(o1>=35){
o1=0;
}}}}}
 
Last edited:
may auto generated kay ana arduino code dito..?
 
Pa share ng wiring diagram po salamat po. . sunog isang Pro mini ko, hehehe
 
Visit lang kayo sa site sir, lahat ng Tut from Automated WiFi Vendo Software base and Code on Demand Software Base nandon po ang guide, ang gagawin mo lang po purchase ka nalang ng License for your Vendo sir,

www.zhwifisoftware.com
 
Back
Top Bottom