Guest User

JAVA ME Serial Instream reading

a guest
Nov 14th, 2019
189
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 5.39 KB | None | 0 0
  1. /*
  2.  *
  3.  * Copyright (C) Gemalto M2M GmbH 2013. All Rights reserved.
  4.  *
  5.  * Gemalto M2M GmbH ("Gemalto") grants Licensee a non-exclusive,
  6.  * non-transferable, limited license to transmit, reproduce, disseminate, utilize
  7.  * and/or edit the source code of this Software (IMlet, LIBlet, batch files,
  8.  * project files) for the sole purpose of designing, developing and testing
  9.  * Licensee's applications only in connection with a Gemalto Wireless Module.
  10.  *
  11.  * THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND,
  12.  * EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED
  13.  * WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE.
  14.  *
  15.  * GEMALTO, ITS LEGAL REPRESENTATIVES AND VICARIOUS AGENTS SHALL - IRRESPECTIVE
  16.  * OF THE LEGAL GROUND - ONLY BE LIABLE FOR DAMAGES IF THE DAMAGE WAS CAUSED
  17.  * THROUGH CULPABLE BREACH OF A MAJOR CONTRACTUAL OBLIGATION (CARDINAL DUTY),
  18.  * I.E. A DUTY THE FULFILMENT OF WHICH ALLOWS THE PROPER EXECUTION OF THE
  19.  * RESPECTIVE AGREEMENT IN THE FIRST PLACE OR THE BREACH OF WHICH PUTS THE
  20.  * ACHIEVEMENT OF THE PURPOSE OF THE AGREEMENT AT STAKE, RESPECTIVELY, AND ON THE
  21.  * FULFILMENT OF WHICH THE RECIPIENT THEREFORE MAY RELY ON OR WAS CAUSED BY GROSS
  22.  * NEGLIGENCE OR INTENTIONALLY. ANY FURTHER LIABILITY FOR DAMAGES SHALL -
  23.  * IRRESPECTIVE OF THE LEGAL GROUND - BE EXCLUDED. IN THE EVENT THAT GEMALTO IS
  24.  * LIABLE FOR THE VIOLATION OF A MAJOR CONTRACTUAL OBLIGATION IN THE ABSENCE OF
  25.  * GROSS NEGLIGENCE OR WILFUL CONDUCT, SUCH LIABILITY FOR DAMAGE SHALL BE LIMITED
  26.  * TO AN EXTENT WHICH, AT THE TIME WHEN THE RESPECTIVE AGREEMENT IS CONCLUDED,
  27.  * GEMALTO SHOULD NORMALLY EXPECT TO ARISE DUE TO CIRCUMSTANCES THAT THE PARTIES
  28.  * HAD KNOWLEDGE OF AT SUCH POINT IN TIME. GEMALTO SHALL IN NO EVENT BE LIABLE
  29.  * FOR INDIRECT AND CONSEQUENTIAL DAMAGES OR LOSS OF PROFIT. GEMALTO SHALL IN NO
  30.  * EVENT BE LIABLE FOR AN AMOUNT EXCEEDING � 20,000.00 PER EVENT OF DAMAGE. WITHIN
  31.  * THE BUSINESS RELATIONSHIP THE OVERALL LIABILITY SHALL BE LIMITED TO A TOTAL
  32.  * OF � 100,000.00. CLAIMS FOR DAMAGES SHALL BECOME TIME-BARRED AFTER ONE YEAR AS
  33.  * OF THE BEGINNING OF THE STATUTORY LIMITATION PERIOD. IRRESPECTIVE OF THE
  34.  * LICENSEE'S KNOWLEDGE OR GROSS NEGLIGENT LACK OF KNOWLEDGE OF THE CIRCUMSTANCES
  35.  * GIVING RISE FOR A LIABILITY ANY CLAIMS SHALL BECOME TIME-BARRED AFTER FIVE
  36.  * YEARS AS OF THE LIABILITY AROSE. THE AFOREMENTIONED LIMITATION OR EXCLUSION
  37.  * OF LIABILITY SHALL NOT APPLY IN THE CASE OF CULPABLE INJURY TO LIFE, BODY OR
  38.  * HEALTH, IN CASE OF INTENTIONAL ACTS, UNDER THE LIABILITY PROVISIONS OF THE
  39.  * GERMAN PRODUCT LIABILITY ACT (PRODUKTHAFTUNGSGESETZ) OR IN CASE OF A
  40.  * CONTRACTUALLY AGREED OBLIGATION TO ASSUME LIABILITY IRRESPECTIVE OF ANY
  41.  * FAULT (GUARANTEE).
  42.  *
  43.  * IN THE EVENT OF A CONFLICT BETWEEN THE PROVISIONS OF THIS AGREEMENT AND
  44.  * ANOTHER AGREEMENT REGARDING THE SOURCE CODE  OF THIS SOFTWARE (IMLET, LIBLET,
  45.  * BATCH FILES, PROJECT FILES) (EXCEPT THE GENERAL TERMS AND CONDITIONS OF
  46.  * GEMALTO) THE OTHER AGREEMENT SHALL PREVAIL.
  47.  *
  48.  */
  49.  
  50. /*
  51.  * @(#)Main.java 0.1 02/07/02
  52.  */
  53.  
  54. package ASC1Demo;
  55.  
  56.  
  57. import java.io.*;
  58. import javax.microedition.io.*;
  59. import javax.microedition.midlet.*;
  60.  
  61. public class Main extends MIDlet {
  62.  
  63.   CommConnection  commConn;
  64.   InputStream     inStream;
  65.   //OutputStream    outStream;
  66.  
  67.   /**
  68.    * Main - default constructor
  69.    */
  70.   public Main() {
  71.     System.out.println("ASC1Demo: Constructor");
  72.     System.out.println("Available COM-Ports: " + System.getProperty("microedition.commports"));
  73.     try {
  74.       String strCOM = "comm:COM1;blocking=off;baudrate=115200;bitsperchar=8;parity=none;stopbits=1;autocts=on;autorts=on";
  75.       commConn = (CommConnection)Connector.open(strCOM);
  76.       System.out.println("CommConnection(" + strCOM + ") opened");
  77.       System.out.println("Real baud rate: " + commConn.getBaudRate());
  78.       inStream  = commConn.openInputStream();
  79.       //outStream = commConn.openOutputStream();
  80.       System.out.println("InputStream and OutputStream opened");
  81.     } catch(IOException e) {
  82.       System.out.println(e);
  83.       notifyDestroyed();
  84.     }
  85.   }
  86.  
  87.   /**
  88.    * startApp()
  89.    */
  90.   public void startApp() throws MIDletStateChangeException {
  91.     System.out.println("ASC1Demo: startApp");
  92.     System.out.println("Looping back received data, leave with 'Q'...");
  93.     try {
  94.       int ch = -1; // intro character
  95.       while(ch != 'Q') {
  96.           System.out.println("Waiting..");
  97.         ch = inStream.read();
  98.         if (ch >= 0) {
  99.           //outStream.write(ch);
  100.           System.out.println("Poo" + (char)ch);
  101.         }
  102.       }
  103.     } catch(IOException e) {
  104.       System.out.println(e);
  105.     }
  106.     System.out.println();
  107.     destroyApp(true);
  108.   }
  109.  
  110.   /**
  111.    * pauseApp()
  112.    */
  113.   public void pauseApp() {
  114.     System.out.println("ASC1Demo: pauseApp()");
  115.   }
  116.  
  117.   /**
  118.    * destroyApp()
  119.    *
  120.    * This is important.  It closes the app's RecordStore
  121.    * @param cond true if this is an unconditional destroy
  122.    *             false if it is not
  123.    *             currently ignored and treated as true
  124.    */
  125.   public void destroyApp(boolean cond) {
  126.     System.out.println("ASC1Demo: destroyApp(" + cond + ")");
  127.     try {
  128.       inStream.close();
  129.       //outStream.close();
  130.       commConn.close();
  131.       System.out.println("Streams and connection closed");
  132.     } catch(IOException e) {
  133.       System.out.println(e);
  134.     }
  135.  
  136.     notifyDestroyed();
  137.   }
  138. }
Add Comment
Please, Sign In to add comment