mirror of
				https://github.com/eclipse/upm.git
				synced 2025-11-04 09:05:34 +03:00 
			
		
		
		
	bh1749: Add examples for all languages
* Examples for C/C++/Python/Java/JavaScript * Add Java example to CMakeLists Signed-off-by: Assam Boudjelthia <assam.boudjelthia@fi.rohmeurope.com>
This commit is contained in:
		
							
								
								
									
										60
									
								
								examples/python/bh1749.py
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										60
									
								
								examples/python/bh1749.py
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,60 @@
 | 
			
		||||
# The MIT License (MIT)
 | 
			
		||||
#
 | 
			
		||||
# Author: Assam Boudjelthia
 | 
			
		||||
# Copyright (c) 2018 Rohm Semiconductor.
 | 
			
		||||
#
 | 
			
		||||
# 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.
 | 
			
		||||
 | 
			
		||||
import time, sys, signal, atexit
 | 
			
		||||
from upm import pyupm_bh1749
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
def main():
 | 
			
		||||
    bh1749_sensor = pyupm_bh1749.BH1749()
 | 
			
		||||
 | 
			
		||||
    bh1749_sensor.SensorInit(pyupm_bh1749.INT_JUDGE_1,
 | 
			
		||||
						pyupm_bh1749.MEAS_240MS,
 | 
			
		||||
						pyupm_bh1749.RGB_GAIN_1X,
 | 
			
		||||
						pyupm_bh1749.IR_GAIN_1X,
 | 
			
		||||
						pyupm_bh1749.RED)
 | 
			
		||||
    bh1749_sensor.SetThresholdHigh(511)
 | 
			
		||||
 | 
			
		||||
    # Prevent stack printing on CTRL^C
 | 
			
		||||
    def SIGINTHandler(signum, frame):
 | 
			
		||||
        raise SystemExit
 | 
			
		||||
 | 
			
		||||
    def exitHandler():
 | 
			
		||||
        print("Exiting")
 | 
			
		||||
        sys.exit(0)
 | 
			
		||||
 | 
			
		||||
    atexit.register(exitHandler)
 | 
			
		||||
    signal.signal(signal.SIGINT, SIGINTHandler)
 | 
			
		||||
 | 
			
		||||
    sampleCounter = 10
 | 
			
		||||
    waitTime = bh1749_sensor.GetMeasurementTime()
 | 
			
		||||
    print("Color readings: ")
 | 
			
		||||
    while sampleCounter > 0:
 | 
			
		||||
        [r, g, b, ir, g2] = bh1749_sensor.GetMeasurements()
 | 
			
		||||
        print ("R: %d, y: %d, G: %d, IR: %d, G2: %d" % (r, g, b, ir, g2))
 | 
			
		||||
        
 | 
			
		||||
        time.sleep(waitTime / 1000.0)
 | 
			
		||||
        sampleCounter -= 1
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
if __name__ == '__main__':
 | 
			
		||||
    main()
 | 
			
		||||
		Reference in New Issue
	
	Block a user