Page 140 - MDP2020-1
P. 140

|    인천전자마이스터고등학교  ·············································································································
            134



                    import  spidev,  time

                    import  RPi.GPIO  as  GPIO
                    led  =  18

                    GPIO.setmode(GPIO.BCM)
                    GPIO.setup(led,GPIO.OUT)

                    spi  =  spidev.Spidev()
                    spi.open(0,0)

                    spi.max_speed_hz=1350000



                    def  analog_read(channel):
                            r  =  spi.xfer2([1,  (8+channel)  <<  4,0])

                            adc_out  =  ((r[1]&3)<<8)  +r[2]
                            return  adc_out



            while  True:

                    reading  analog_read(1)
                    voltage  reading  *  3.3/1024

                    print("Reading=%d\tVoltage=%f"%(reading,  voltage))

                    time.sleep(1)
                    if  reading  <  100:
                            GPIO.output(led,  GPIO.HIGH)

                            print("LED  ON")

                    else  :
                            GPIO.output(led,  GPIO.  LOW)

                            print("LED  OFF")



            5.  소스  파일  실행
                    python  mcp3008.py
   135   136   137   138   139   140   141   142   143   144   145