Advertisement
moriarty41

Task3

Jan 29th, 2021 (edited)
319
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 3.40 KB | None | 0 0
  1. using Microsoft.Data.Sqlite;
  2. using System;
  3.  
  4. namespace YoctoCoreDemo
  5. {
  6.     class Program
  7.     {
  8.         static SqliteConnection CreateConnection()
  9.         {
  10.             SqliteConnection sqlite_conn;
  11.             sqlite_conn = new SqliteConnection("filename=Task3.db");
  12.             try
  13.             {
  14.                 sqlite_conn.Open();
  15.             }
  16.             catch (Exception ex)
  17.             {
  18.  
  19.             }
  20.             return sqlite_conn;
  21.         }
  22.  
  23.         static void CreateTable(SqliteConnection conn)
  24.         {
  25.             SqliteCommand sqlite_cmd;
  26.             string Createsql = "CREATE TABLE YoctoI2C (Timestamp VARCHAR(20), Temperature VARCHAR(20), Humidity VARCHAR(20))";
  27.             sqlite_cmd = conn.CreateCommand();
  28.             sqlite_cmd.CommandText = Createsql;
  29.             sqlite_cmd.ExecuteNonQuery();
  30.         }
  31.  
  32.         static void InsertData(SqliteConnection conn, string time, string temp, string hum)
  33.         {
  34.             SqliteCommand sqlite_cmd;
  35.             sqlite_cmd = conn.CreateCommand();
  36.             string commandText = "INSERT INTO YoctoI2C (timestamp, temperature, humidity) VALUES('"+time+"', + '"+temp+ "', + '"+hum+"')";
  37.             sqlite_cmd.CommandText = commandText;
  38.             sqlite_cmd.ExecuteNonQuery();
  39.         }
  40.  
  41.         static void ReadData(SqliteConnection conn)
  42.         {
  43.             SqliteDataReader sqlite_datareader;
  44.             SqliteCommand sqlite_cmd;
  45.             sqlite_cmd = conn.CreateCommand();
  46.             sqlite_cmd.CommandText = "SELECT * FROM YoctoI2C";
  47.  
  48.             sqlite_datareader = sqlite_cmd.ExecuteReader();
  49.             while (sqlite_datareader.Read())
  50.             {
  51.                 string myreader = sqlite_datareader.GetString(0);
  52.                 Console.WriteLine(myreader);
  53.             }
  54.             conn.Close();
  55.         }
  56.         static void Main(string[] args)
  57.         {
  58.             YModule m;
  59.             string errmsg = "";
  60.  
  61.             if (YAPI.RegisterHub("usb", ref errmsg) != YAPI.SUCCESS)
  62.             {
  63.                 Console.WriteLine("RegisterHub error: " + errmsg);
  64.                 Environment.Exit(0);
  65.             }
  66.  
  67.             Console.WriteLine("Device list");
  68.             m = YModule.FirstModule();
  69.             while (m != null)
  70.             {
  71.                 Console.WriteLine(m.get_serialNumber() +
  72.                     " (" + m.get_productName() + ")");
  73.                 m = m.nextModule();
  74.             }
  75.  
  76.             Console.WriteLine("Using Yoctopuce lib " + YAPI.GetAPIVersion());
  77.             YSensor temperature = YTemperature.FirstTemperature();
  78.             YSensor humidity = YHumidity.FirstHumidity();
  79.  
  80.  
  81.             SqliteConnection sqlite_conn;
  82.             sqlite_conn = CreateConnection();
  83.             //CreateTable(sqlite_conn);
  84.  
  85.             for (int i = 0; i < 10; i++)
  86.             {
  87.                 string currentTemperature = temperature.get_currentValue() + temperature.get_unit();
  88.                 string currentHumidity = humidity.get_currentValue() + " " + humidity.get_unit();
  89.                 InsertData(sqlite_conn, DateTime.Now.ToShortDateString(), currentTemperature, currentHumidity);
  90.                 Console.WriteLine("Current temperature for " + DateTime.Now + " is " + currentTemperature + ". Humidity is "+currentHumidity);
  91.                 System.Threading.Thread.Sleep(30000);
  92.             }
  93.             ReadData(sqlite_conn);
  94.             YAPI.FreeAPI();
  95.         }
  96.     }
  97. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement