Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed wave_player mbed-rtos MFRC522 SDFileSystem TextLCD keypad DHT11
Revision 0:d20cd68db570, committed 2019-05-21
- Comitter:
- marvas
- Date:
- Tue May 21 11:50:19 2019 +0000
- Child:
- 1:f01aa6d55b26
- Commit message:
- guvenlik sistemi
Changed in this revision
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/MFRC522.lib Tue May 21 11:50:19 2019 +0000 @@ -0,0 +1,1 @@ +https://os.mbed.com/users/AtomX/code/MFRC522/#63d729186747
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/SDFileSystem.lib Tue May 21 11:50:19 2019 +0000 @@ -0,0 +1,1 @@ +http://mbed.org/users/mbed_official/code/SDFileSystem/#8db0d3b02cec
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/TextLCD.lib Tue May 21 11:50:19 2019 +0000 @@ -0,0 +1,1 @@ +https://os.mbed.com/users/simon/code/TextLCD/#308d188a2d3a
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/keypad.lib Tue May 21 11:50:19 2019 +0000 @@ -0,0 +1,1 @@ +https://os.mbed.com/teams/Marvas/code/keypad/#7da3ab010a87
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp Tue May 21 11:50:19 2019 +0000
@@ -0,0 +1,169 @@
+#include "mbed.h"
+#include "MFRC522.h"
+#include "TextLCD.h"
+#include "Keypad.h"
+#include "rtos.h"
+#include <string.h>
+#include <iostream>
+#include "SDFileSystem.h"
+SDFileSystem sd(PC_12, PC_11, PC_10, PD_2, "sd"); // mosi, miso, sclk, cs(scl)
+DigitalOut lamba(PA_13);//sinyal pini pa_13
+DigitalOut klima(PA_14);
+AnalogIn ldr(A5);
+float ldroku;
+unsigned char c;
+
+Thread btt;
+Serial pc(USBTX,USBRX);
+Serial bt(A0,A1);
+char gelen[10]={0}; ;//10 adet kapasiteli değişken tanımlandı
+char metinbt[10];
+string veri;
+uint8_t sayacbt=0;
+uint8_t abt,pckontrol=0;
+TextLCD lcd(D7, D6, D5, D4, D3, D2); // rs, e, d4-d7
+DigitalOut led(LED1);
+void girismetot();
+
+
+char x,sifre[4];
+uint8_t sayac=0;
+char key_table[] = { '1', '2', '3', 'A',
+ '4', '5', '6', 'B',
+ '7', '8', '9', 'C',
+ '*', '0', '#', 'D'
+ };
+
+//KL25Z Pins for MFRC522 SPI interface
+#define SPI_MOSI D11
+#define SPI_MISO D12
+#define SPI_SCLK D13
+#define SPI_CS D10//sda
+// KL25Z Pin for MFRC522 reset
+#define MF_RESET A0//rsT
+// KL25Z Pins for Debug UART port
+
+DigitalOut bzr(PC_8);
+MFRC522 RfChip (SPI_MOSI, SPI_MISO, SPI_SCLK, SPI_CS, MF_RESET);
+
+void girismetot()
+{
+ time_t seconds = time(NULL);
+ lamba=0;
+ lcd.cls();
+ printf("\n Giris basarili");
+ lcd.printf("Giris basarili");
+ for (int i = 0; i < 1000; i++ ) { //frekans oluşturuldu
+ // 1 / 2000 = 500uS, 250us + 250us - olacak. 50% duty cycle
+ bzr=1;
+ wait_us(200);
+ bzr=0;
+ wait_us(200);
+ }
+ sayac=0;
+ for(uint8_t x=0; x<4; x++) {
+ sifre[x]=0;
+ }
+ wait(2);
+ lcd.cls();
+ ldroku=ldr.read();
+ if(ldroku<0.50)
+ lamba=1;
+ else
+ lamba=0;
+
+ //sd karta yazma
+ FILE *fp = fopen("/sd/ornek.txt", "w");
+ if(fp == NULL) {
+ error("Yazma icin dosya acilamadi \n");
+ }
+ else
+ {
+
+ fprintf(fp, "%s,%x",ctime(&seconds),RfChip.uid.uidByte[0]);
+
+
+ fclose(fp); //Dosya kapat
+
+ pc.printf("Yazma islemi bitti! \n");
+
+ pc.printf("Okuma islemi basladi! \n");
+ FILE *fpr = fopen("/sd/ornek.txt", "r");
+ //Okunacak dosya seçildi
+
+ //file end of. Okuma işlemi bitene kadar devam et.
+ //Dosya sonuna kadar okumaya devam et.
+ while (!feof(fpr)){
+ c=fgetc(fpr);
+ printf("%c",c);
+ }
+ fclose(fpr);
+ }
+}
+int main(void)
+{ //set_time(1558438679);
+
+ pc.baud(38400);
+
+ bt.baud(38400);
+ mkdir("/sd", 0777);
+ Keypad key(PC_4, PB_13, PB_14, PB_15, PB_1, PB_2, PB_12, PA_11);
+ uint32_t key_num;
+ // Init. RC522 Chip
+ RfChip.PCD_Init();
+
+ while (true) {
+
+ while ((key_num = key.read()) != 0) {
+ sifre[sayac]=*(key_table + key_num-1);
+ sayac++;
+ lcd.printf("*");
+ if(sifre[0]=='1' && sifre[1]=='2' && sifre[2]=='3' && sifre[3]=='A') {
+ girismetot();
+
+ } else if(sifre[0]!='1' && sifre[1]!='2' && sifre[2]!='3' && sifre[3]!='A')
+ lcd.printf("Giris basarisiz");
+
+ printf("%c\n", *(key_table + key_num-1));
+ // sayi[0]=*(key_table + key_num-1); printf("%f",sayi[0]);
+ }
+ // Look for new cards
+ if ( ! RfChip.PICC_IsNewCardPresent()) {
+ time_t seconds = time(NULL);
+ while(pc.readable()>0 ){//seri portta veri varmı?
+ veri=pc.getc();
+ pc.printf("%s",veri);
+ /*pc.scanf("%s",gelen);
+ pc.printf("%s \n",gelen);*/
+
+ }
+
+ continue;
+ }
+
+ // Select one of the cards
+ if ( ! RfChip.PICC_ReadCardSerial()) {
+ wait_ms(500);
+ continue;
+ }
+
+
+ // Print Card UID
+ printf("Card UID: ");
+ for (uint8_t i = 0; i < RfChip.uid.size; i++) {
+ printf(" %X", RfChip.uid.uidByte[i]);
+ }
+ if(RfChip.uid.uidByte[0]==0x93 && RfChip.uid.uidByte[1]==0x84 && RfChip.uid.uidByte[2]==0xB7 && RfChip.uid.uidByte[3]==0x2E)
+
+ {
+ girismetot();
+ } else
+ printf("\n Giris basarisiz!!!");
+ printf("\n\r");
+
+ // Print Card type
+ uint8_t piccType = RfChip.PICC_GetType(RfChip.uid.sak);
+ printf("PICC Type: %s \n\r", RfChip.PICC_GetTypeName(piccType));
+ wait_ms(500);
+ }
+}
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mbed-rtos.lib Tue May 21 11:50:19 2019 +0000 @@ -0,0 +1,1 @@ +https://os.mbed.com/users/mbed_official/code/mbed-rtos/#5713cbbdb706
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mbed.bld Tue May 21 11:50:19 2019 +0000 @@ -0,0 +1,1 @@ +https://os.mbed.com/users/mbed_official/code/mbed/builds/65be27845400 \ No newline at end of file