Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #define MaxCountForTurns 300 //count for 2 rotations of the motor
- int main(void)
- {
- CyGlobalIntEnable; /* Enable global interrupts. */
- uint16 onCount = 0x00;
- uint16 offCount = 0x00;
- uint8 gateClose = 0x00;
- uint8 motorON = 0x00;
- uint8 pirValue = 0x00;
- UART_Start();
- for(;;)
- {
- if (gateClose == 0x00) {
- pirValue |= pirInput_Read();
- }
- if ((pirValue & 0x01) && (motorON == 0)) {
- motorON = 0x01;
- UART_PutString("Pet movement detected : Motor will be turned ONn");
- CyDelay(10);
- }
- if(motorON) {
- onCount++;
- Control_Reg_Write(0x0c);
- CyDelay(10);
- Control_Reg_Write(0x06);
- CyDelay(10);
- Control_Reg_Write(0x03);
- CyDelay(10);
- Control_Reg_Write(0x09);
- CyDelay(10);
- }
- if (gateClose) {
- offCount++;
- Control_Reg_Write(0x09);
- CyDelay(10);
- Control_Reg_Write(0x03);
- CyDelay(10);
- Control_Reg_Write(0x06);
- CyDelay(10);
- Control_Reg_Write(0x0c);
- CyDelay(10);
- }
- // turns in fwd direction
- if(onCount > MaxCountForTurns) {
- motorON = 0x00;
- onCount = 0x00;
- pirValue = 0x00;
- CyDelay(50);
- gateClose = 0x01;
- }
- // turns in reverse direction
- if(offCount > MaxCountForTurns) {
- gateClose &= 0x00;
- }
- }
- }
- import time
- import serial
- import smtplib
- TO = 'pet_feeder@gmail.com'
- GMAIL_USER = 'pir_sensor@gmail.com'
- GMAIL_PASS = 'psoc_pir_pet_feeder'
- SUBJECT = 'Pet Feeder System Alert!!'
- TEXT = 'PIR sensor detected pet movement, Motor will be turned ON'
- ser = serial.Serial('COM2', 9600)
- def send_email():
- print("Sending Email")
- smtpserver = smtplib.SMTP("smtp.gmail.com",587)
- smtpserver.ehlo()
- smtpserver.starttls()
- smtpserver.ehlo
- smtpserver.login(GMAIL_USER, GMAIL_PASS)
- header = 'To:' + TO + 'n' + 'From: ' + GMAIL_USER
- header = header + 'n' + 'Subject:' + SUBJECT + 'n'
- print header
- msg = header + 'n' + TEXT + ' nn'
- smtpserver.sendmail(GMAIL_USER, TO, msg)
- smtpserver.close()
- while True:
- message = ser.readline()
- print(message)
- if message[0] == 'M' :
- send_email()
- time.sleep(0.5)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement