Namespaces | Functions | Variables
uart.py File Reference

UART Sample More...

Go to the source code of this file.

Namespaces

 uart
 

Functions

def main ()
 

Variables

int BUF_LEN = 4096
 
int UART_MODE_RS232 = 0
 
int UART_PORT_1 = 0
 

Detailed Description

UART Sample

Date
2019-02-11
Author
William Chang
Version
V1.0

Library:
UART APIs

1 '''
2  Copyright (C) 2019 Moxa Inc. All rights reserved.
3  SPDX-License-Identifier: Apache-2.0
4 
5  UART Python Sample Application
6 
7  Date Author Comment
8  2019-02-11 William Chang Created it.
9 '''
10 
11 
21 
22 from ioThinx_4530 import ioThinx_4530_API
23 import argparse
24 import os
25 
26 BUF_LEN = 4096
27 UART_MODE_RS232 = 0
28 UART_PORT_1 = 0
29 
30 
31 def main():
32  parser = argparse.ArgumentParser(description="Miscellaneous sample program.")
33  parser.add_argument("-b", "--baudrate", dest="uart_baudrate", type=int, default=115200)
34  parser.add_argument("-p", "--port", dest="uart_port", type=int, default=UART_PORT_1)
35  parser.add_argument("-m", "--mode", dest="uart_mode", type=int, default=UART_MODE_RS232)
36  args = parser.parse_args()
37 
38  uart_slot = 0
39  uart_port = args.uart_port
40  uart_mode = args.uart_mode
41  uart_baudrate = args.uart_baudrate
42  print("UART slot = {}".format(uart_slot))
43  print("UART port = {}".format(uart_port))
44  print("UART mode = {}".format(uart_mode))
45  print("UART baudrate = {}".format(uart_baudrate))
46 
47  device = ioThinx_4530_API.ioThinx_4530_API()
48  fd = device.ioThinx_Uart_Open(uart_slot, uart_port, uart_mode, uart_baudrate)
49  print("fd = {}".format(fd))
50  print("Start UART echo.")
51 
52  while True:
53  buf = os.read(fd, BUF_LEN)
54  print(len(buf))
55  print(buf)
56  if len(buf) > 0:
57  os.write(fd, buf)
58  if 'quit' in buf.decode():
59  break
60 
61  print("Stop UART echo.")
62  os.close(fd)
63 
64 
65 if __name__ == '__main__':
66  main()

Definition in file uart.py.