Преглед изворни кода

1、【增加】说明文档。

armink пре 8 година
родитељ
комит
97cb13768e
2 измењених фајлова са 140 додато и 0 уклоњено
  1. 21 0
      LICENSE
  2. 119 0
      README.md

+ 21 - 0
LICENSE

@@ -0,0 +1,21 @@
+The MIT License (MIT)
+
+Copyright (c) 2013, 2014 Damien P. George
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.

+ 119 - 0
README.md

@@ -0,0 +1,119 @@
+# MicroPython port for RT-Thread
+
+MicroPython - a lean and efficient Python implementation for microcontrollers and constrained systems https://micropython.org
+
+Let's get started by RT-Thread……
+
+## Run MicroPython by Finsh/MSH
+
+- input `pyhton` command will goto the MicroPython REPL(Read-Evaluate-Print-Loop)
+
+```
+msh />python
+
+MicroPython v1.9.3-6-g1742ab26-dirty on 2017-11-04; RT-Thread Board with stm32f4
+>>> 
+>>> print('Hello World')
+Hello World
+```
+
+- Now you can iuput and run the python code on the terminal
+- If you want exit the python REPL. Please press `CTRL + D` .
+
+## Supported modules
+
+### RT-Thread
+
+```
+>>> import rtthread
+>>> 
+>>> rtthread.is_preempt_thread()       # determine if code is running in a preemptible thread
+True
+>>> rtthread.current_tid()             # current thread id
+268464956
+>>> rtthread.stacks_analyze()          # show thread information
+thread     pri  status      sp     stack size max used left tick  error
+---------- ---  ------- ---------- ----------  ------  ---------- ---
+elog_async  31  suspend 0x000000a8 0x00000400    26%   0x00000003 000
+tshell      20  ready   0x00000260 0x00001000    39%   0x00000003 000
+tidle       31  ready   0x00000070 0x00000100    51%   0x0000000f 000
+SysMonitor  30  suspend 0x000000a4 0x00000200    32%   0x00000005 000
+timer        4  suspend 0x00000080 0x00000200    25%   0x00000009 000
+>>> 
+```
+
+### Delay and timing
+
+Use the [`time`](http://docs.micropython.org/en/latest/pyboard/library/utime.html#module-utime) module:
+
+```
+>>> import time
+>>> 
+>>> time.sleep(1)           # sleep for 1 second
+>>> time.sleep_ms(500)      # sleep for 500 milliseconds
+>>> time.sleep_us(10)       # sleep for 10 microseconds
+>>> start = time.ticks_ms() # get value of millisecond counter
+>>> delta = time.ticks_diff(time.ticks_ms(), start) # compute time difference
+```
+
+### pyb - functions related to the board
+
+See [pyb](http://docs.micropython.org/en/latest/pyboard/library/pyb.html).
+
+```
+>>> import pyb
+>>>
+>>> pyb.info()              # show information about the board
+---------------------------------------------
+RT-Thread
+---------------------------------------------
+total memory: 131048
+used memory : 4920
+maximum allocated memory: 5836
+thread     pri  status      sp     stack size max used left tick  error
+---------- ---  ------- ---------- ----------  ------  ---------- ---
+elog_async  31  suspend 0x000000a8 0x00000400    26%   0x00000003 000
+tshell      20  ready   0x0000019c 0x00001000    39%   0x00000006 000
+tidle       31  ready   0x0000006c 0x00000100    50%   0x0000000b 000
+SysMonitor  30  suspend 0x000000a8 0x00000200    32%   0x00000005 000
+timer        4  suspend 0x0000007c 0x00000200    24%   0x00000009 000
+---------------------------------------------
+qstr:
+  n_pool=0
+  n_qstr=0
+  n_str_data_bytes=0
+  n_total_bytes=0
+---------------------------------------------
+GC:
+  16064 total
+  464 : 15600
+  1=14 2=6 m=3
+>>> pyb.enable_irq()        # enable interrupt
+>>> pyb.disable_irq()       # disable interrupt, WARNING: this operation is dangerous
+>>> time_start = pyb.millis()          # return the number of milliseconds
+>>> pyb.elapsed_millis(time_start)     # calculate the elapsed time of milliseconds
+2449
+>>> time_start = pyb.micros()          # return the number of microseconds
+>>> pyb.elapsed_micros(time_start)     # calculate the elapsed time of microseconds
+1769000
+>>> pyb.delay(1000)         # delay milliseconds
+>>> pyb.udelay(1000*1000)   # delay microseconds
+>>> pyb.hard_reset()        # hard reset, like push RESET button
+```
+
+#### Pins and GPIO
+
+See [pyb.Pin](http://docs.micropython.org/en/latest/pyboard/library/pyb.Pin.html#pyb-pin).
+
+```
+>>> from pyb import Pin
+>>> 
+>>> p_out = Pin(("X1", 33), Pin.OUT_PP)
+>>> p_out.value(1)              # set io high
+>>> p_out.value(0)              # set io low
+>>> 
+>>> p_in = Pin(("X2", 32), Pin.IN, Pin.PULL_UP)
+>>> p_in.value()                # get value, 0 or 1
+```
+
+### Coming soon