• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Python pyb.micros函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Python中pyb.micros函数的典型用法代码示例。如果您正苦于以下问题:Python micros函数的具体用法?Python micros怎么用?Python micros使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



在下文中一共展示了micros函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。

示例1: dist

    def dist(self):
        start = 0
        end = 0

        # Send a 10us pulse.
        self.trigger.high()
        pyb.udelay(10)
        self.trigger.low()

        # Wait 'till whe pulse starts.
        start_tout = pyb.micros() + 1000

        while self.echo.value() == 0:
            start = pyb.micros() 
            if start > start_tout:
                print("start_tout")
                return -1

        # Wait 'till the pulse is gone.
        end_tout = pyb.micros() + 10000 

        while self.echo.value() == 1:
            end = pyb.micros() 
            if end > end_tout:
                print("end_tout")
                return -1

        # Calc the duration of the recieved pulse, divide the result by
        # 2 (round-trip) and divide it by 29 (the speed of sound is
        # 340 m/s and that is 29 us/cm).
        dist_in_cm = end - start

        return dist_in_cm
开发者ID:wendlers,项目名称:edubot-nodemcu-fw,代码行数:33,代码来源:ultrasonic.py


示例2: balance

def balance():
    gangle = 0.0
    start = pyb.micros()
    controlspeed = 0
    fspeed = 0
    while abs(gangle) < 45:  # give up if inclination angle >=45 degrees
        angle  = imu.pitch()
        rate   = imu.get_gy()
        gangle = compf(gangle, angle, rate, pyb.elapsed_micros(start),0.99)         
        start = pyb.micros()
        # speed control
        actualspeed = (motor1.get_speed()+motor2.get_speed())/2
        fspeed = 0.95 * fspeed + 0.05 * actualspeed
        cmd = radio.poll() # cmd[0] is turn speed, cmd[1] is fwd/rev speed
        tangle = speedcontrol(800*cmd[1],fspeed)
         # stability control
        controlspeed += stability(tangle, gangle, rate)           
        controlspeed = constrain(controlspeed,-MAX_VEL,MAX_VEL)
        # set motor speed
        motor1.set_speed(-controlspeed-int(300*cmd[0]))
        motor2.set_speed(-controlspeed+int(300*cmd[0]))
        pyb.udelay(5000-pyb.elapsed_micros(start))
    # stop and turn off motors
    motor1.set_speed(0)
    motor2.set_speed(0)
    motor1.set_off()
    motor2.set_off()
开发者ID:MuriloFerraz,项目名称:micropython-upybbot,代码行数:27,代码来源:main.py


示例3: ppt

def ppt():
    """ 
    Pyboard times:
    Time to wait for not t
    10
    Time to wait for f
    10
    """

    f =False
    t =True

    print('Time to wait for not t')
    u = pyb.micros()
    while not t: 
        None
    t = pyb.micros()-u
    print (t)

    print('Time to wait for f')
    u = pyb.micros()
    while f: 
        None
    t = pyb.micros()-u
    print (t)
开发者ID:P3PO,项目名称:ArduGuitar,代码行数:25,代码来源:pt.py


示例4: intCH4

def intCH4(line):
    global ch_up,ch_up_set,fresh
    if pin( ch_pin[3]  ):
        ch_up[3] = pyb.micros()
    else:
        ch_up[4] = pyb.micros()
        for i in range(5):
            ch_up_set[i] = ch_up[i]
        fresh = True
开发者ID:theostanton,项目名称:pyQuadCopter,代码行数:9,代码来源:RX.py


示例5: update_nomag

    def update_nomag(self, accel, gyro):    # 3-tuples (x, y, z) for accel, gyro
        ax, ay, az = accel                  # Units G (but later normalised)
        gx, gy, gz = (radians(x) for x in gyro) # Units deg/s
        if self.start_time is None:
            self.start_time = pyb.micros()  # First run
        q1, q2, q3, q4 = (self.q[x] for x in range(4))   # short name local variable for readability
        # Auxiliary variables to avoid repeated arithmetic
        _2q1 = 2 * q1
        _2q2 = 2 * q2
        _2q3 = 2 * q3
        _2q4 = 2 * q4
        _4q1 = 4 * q1
        _4q2 = 4 * q2
        _4q3 = 4 * q3
        _8q2 = 8 * q2
        _8q3 = 8 * q3
        q1q1 = q1 * q1
        q2q2 = q2 * q2
        q3q3 = q3 * q3
        q4q4 = q4 * q4

        # Normalise accelerometer measurement
        norm = sqrt(ax * ax + ay * ay + az * az)
        if (norm == 0):
            return # handle NaN
        norm = 1 / norm        # use reciprocal for division
        ax *= norm
        ay *= norm
        az *= norm

        # Gradient decent algorithm corrective step
        s1 = _4q1 * q3q3 + _2q3 * ax + _4q1 * q2q2 - _2q2 * ay
        s2 = _4q2 * q4q4 - _2q4 * ax + 4 * q1q1 * q2 - _2q1 * ay - _4q2 + _8q2 * q2q2 + _8q2 * q3q3 + _4q2 * az
        s3 = 4 * q1q1 * q3 + _2q1 * ax + _4q3 * q4q4 - _2q4 * ay - _4q3 + _8q3 * q2q2 + _8q3 * q3q3 + _4q3 * az
        s4 = 4 * q2q2 * q4 - _2q2 * ax + 4 * q3q3 * q4 - _2q3 * ay
        norm = 1 / sqrt(s1 * s1 + s2 * s2 + s3 * s3 + s4 * s4)    # normalise step magnitude
        s1 *= norm
        s2 *= norm
        s3 *= norm
        s4 *= norm

        # Compute rate of change of quaternion
        qDot1 = 0.5 * (-q2 * gx - q3 * gy - q4 * gz) - self.beta * s1
        qDot2 = 0.5 * (q1 * gx + q3 * gz - q4 * gy) - self.beta * s2
        qDot3 = 0.5 * (q1 * gy - q2 * gz + q4 * gx) - self.beta * s3
        qDot4 = 0.5 * (q1 * gz + q2 * gy - q3 * gx) - self.beta * s4

        # Integrate to yield quaternion
        deltat = pyb.elapsed_micros(self.start_time) / 1000000
        self.start_time = pyb.micros()
        q1 += qDot1 * deltat
        q2 += qDot2 * deltat
        q3 += qDot3 * deltat
        q4 += qDot4 * deltat
        norm = 1 / sqrt(q1 * q1 + q2 * q2 + q3 * q3 + q4 * q4)    # normalise quaternion
        self.q = q1 * norm, q2 * norm, q3 * norm, q4 * norm
开发者ID:johannes-otto,项目名称:jrt-ignition,代码行数:56,代码来源:fusion.py


示例6: erase_chip

def erase_chip():
    cs.low()
    spi.send(CMD_WRITE_ENABLE)
    cs.high()
    cs.low()
    spi.send(CMD_ERASE_CHIP)
    cs.high()
    t = pyb.micros()
    wait()
    t = pyb.micros() - t
    print ("erase chip",t)
开发者ID:nwgat,项目名称:pyboard,代码行数:11,代码来源:spiflash.py


示例7: getTempHum

 def getTempHum(self, buzz=True):
     id_bit = 0 # identificador del bit que estamos tratando
     vbit = 0  # valor de la palabra de 40 bits que se lee, incluye checksum
     self.oneWire.init(pyb.Pin.OUT_PP)
     self.oneWire.high()
     retardo=250
     if buzz:
         #suena buzzer
         self.ch2.pulse_width(12000)
         pyb.delay(80) #in msecs
         self.ch2.pulse_width(0)
         retardo=170
     #pull the pin high and wait 250 milliseconds (ya esta en high, esperamos 250ms de todos modos)
     pyb.delay(retardo)
     #Host pulls low 1.5 ms
     start = pyb.micros()
     self.oneWire.low()
     pyb.udelay(1500)
     #Host pulls up 30us
     self.oneWire.high()
     pyb.udelay(30)
     #Paso a INPUT
     self.oneWire.init(pyb.Pin.IN)
     #sensor pulls low 80us
     while self.oneWire.value() != 0:
         pass
     #sensor pulls up 80us
     while self.oneWire.value() != 1:
         pass
     #sensor pulls low 50us // start bit
     while self.oneWire.value() != 0:
         pass
     while(True):
         #bit starts
         while self.oneWire.value() != 1:
             pass
         start = pyb.micros()
         #bit ends
         while self.oneWire.value() != 0:
             pass
         if (pyb.micros()-start) > 50:
             vbit = (vbit << 1) | 0x1 
         else:
             vbit = (vbit << 1)
         id_bit = id_bit + 1
         if id_bit >= 40:
             check_rec = vbit & 0xff   # checksum recibido
             vbit = vbit >> 8  #aqui "vbit" contiene el valor medido (32 bits)
             check_cal = (vbit & 0xff) + ((vbit >> 8) & 0xff) + ((vbit >> 16) & 0xff) + ((vbit >> 24) & 0xff) # checksum calculado 
             if check_cal != check_rec:
                 self.frt.setAlarmBit(2)
             break
     return vbit
开发者ID:Josep,项目名称:micropython-geiger,代码行数:53,代码来源:am2302.py


示例8: integrate_continuously

 def integrate_continuously(self, nap=10):
     #print("integrating continuously, napping %d" % nap)
     tscale = 1 / 1000000
     then = pyb.micros()
     #should_be_less_than = (nap + 30) * 1000
     while True:
         dt = pyb.elapsed_micros(then)
         #if dt >= should_be_less_than:
         #    print("integration dt was", dt)
         then = pyb.micros()
         self.integrate(dt * tscale)
         self.show_balls()
         yield from sleep(nap)
开发者ID:pramasoul,项目名称:micropython-ws2812,代码行数:13,代码来源:ringramp.py


示例9: erase

def erase(cmd,addr):
    cs.low()
    spi.send(CMD_WRITE_ENABLE)
    cs.high()
    cs.low()
    spi.send(cmds[cmd])
    spi.send(addr>>16)
    spi.send(addr>>8)
    spi.send(addr)
    cs.high()
    t = pyb.micros()
    wait()
    t = pyb.micros() - t
    print ("erase",cmd,t,'us')
开发者ID:nwgat,项目名称:pyboard,代码行数:14,代码来源:spiflash.py


示例10: p

def p(c='X8'):
    """
    time get a pin value
    13
    """
    p = pyb.Pin(c,pyb.Pin.OUT_PP,pull=pyb.Pin.PULL_NONE)
    p.low()
    print(p.value())

    print('time get a pin value')

    u = pyb.micros()
    p.value()
    t = pyb.micros()-u
    print (t)
开发者ID:P3PO,项目名称:ArduGuitar,代码行数:15,代码来源:pt.py


示例11: tx_rx

	def tx_rx(self, tx, nr_chars):
		""" Send command to and receive respons from SA7S"""
		''' rx = uart.readall() # Receive respons TAKES 1.0 sec ALWAYS (after uart.any) TimeOut!!!! '''
		i = 0
		rx = ''
		# todo: do check if respons == same as sent: repeat otherwise
		self.uart.write(tx)  # Send to unit
		# print("uart.write: i, tx: ", i,  tx[:-1])
		while True:  # Typiskt 2–3 (search: 4) varv i loopen
			i += 1
			if self.uart.any():  # returns True if any characters wait
				dbg.high()
				strt = micros()
				rx = b''
				j = 0
				while True:  # Typically 10–20 (search: 12; M, R & W0144: 1) loops
					j += 1
					rxb = self.uart.read(nr_chars)  # uart.readln och uart.readall ger båda timeout (1s default)
					rx = rx + rxb
					if (len(rx) >= nr_chars) or (rxb == b'\r'):  # End of search returns \r
						break
				dbg.low()
				##print("uart.read: i, j, tx, rx, ∆time ", i, j, tx[:-1], rx, len(rx), elapsed_micros(strt) / 1e6, 's')
				delay(84)
				break
			else:
				delay(10)
		return rx
开发者ID:fojie,项目名称:micropython--In-Out,代码行数:28,代码来源:Lib_HA7S.py


示例12: thr_instrument

def thr_instrument(objSch, lstResult):
    yield                          # Don't measure initialisation phase (README.md)
    while True:
        start = pyb.micros()       # More typically we'd measure our own code
        yield                      # but here we're measuring yield delays
        lstResult[0] = max(lstResult[0], pyb.elapsed_micros(start))
        lstResult[1] += 1
开发者ID:Usagimimi,项目名称:Micropython-scheduler,代码行数:7,代码来源:instrument.py


示例13: read_status_packet

    def read_status_packet(self):
        """Reads a status packet and returns it.

        Rasises a bioloid.bus.BusError if an error occurs.

        """
        pkt = packet.Packet()
        while True:
            start = pyb.micros()
            byte = self.serial_port.read_byte()
            if byte is None:
                raise BusError(packet.ErrorCode.TIMEOUT)
            err = pkt.process_byte(byte)
            if err != packet.ErrorCode.NOT_DONE:
                break
        if err != packet.ErrorCode.NONE:
            raise BusError(err)
        if self.show & Bus.SHOW_COMMANDS:
            log('Rcvd Status: {}'.format(packet.ErrorCode(err)))
        if self.show & Bus.SHOW_PACKETS:
            dump_mem(pkt.pkt_bytes, prefix='  R', show_ascii=True, log=log)
        err = pkt.error_code()
        if err != packet.ErrorCode.NONE:
            raise BusError(err)
        return pkt
开发者ID:dhylands,项目名称:bioloid3,代码行数:25,代码来源:bus.py


示例14: ni

def ni():
    print ('Native: how many instructions can we do in 100 us')
    count = 0
    u = pyb.micros()
    while pyb.elapsed_micros(u) < 100:
        count+=1
    print(count)
开发者ID:P3PO,项目名称:ArduGuitar,代码行数:7,代码来源:pt.py


示例15: testfunc

def testfunc(a):
    start = pyb.micros()
    while not a.mag_ready:
        pass
    dt = pyb.elapsed_micros(start)
    print("Wait time = {:5.2f}mS".format(dt / 1000))
    start = pyb.micros()
    xyz = a.mag.xyz
    dt = pyb.elapsed_micros(start)
    print("Time to get = {:5.2f}mS".format(dt / 1000))
    print("x = {:5.3f} y = {:5.3f} z = {:5.3f}".format(xyz[0], xyz[1], xyz[2]))
    print("Mag status should be not ready (False): ", a.mag_ready)
    print(
        "Correction factors: x = {:5.3f} y = {:5.3f} z = {:5.3f}".format(
            a.mag_correction[0], a.mag_correction[1], a.mag_correction[2]
        )
    )
开发者ID:johannes-otto,项目名称:micropython-mpu9x50,代码行数:17,代码来源:magtest.py


示例16: timing

def timing():                           # Check magnetometer call timings
    imu.mag_triggered = False           # May have been left True by above code
    start = pyb.micros()
    imu.get_mag_irq()
    t1 = pyb.elapsed_micros(start)
    start = pyb.micros()
    imu.get_mag_irq()
    t2 = pyb.elapsed_micros(start)
    pyb.delay(200)
    start = pyb.micros()
    imu.get_mag_irq()
    t3 = pyb.elapsed_micros(start)

    # 1st call initialises hardware
    # 2nd call tests it (not ready)
    # 3rd call tests ready (it will be after 200mS) and reads data
    print(t1, t2, t3) # 1st call takes 265uS second takes 175uS. 3rd takes 509uS
开发者ID:Sokrates80,项目名称:air-py,代码行数:17,代码来源:irqtest.py


示例17: evaluate

def  evaluate(total, lcd):
    lcd.light(False)
    yield
    starttime = pyb.micros()
    yield
    endtime = pyb.micros()
    t = total[0]
    lcd.light(True)
    us = endtime - starttime

    text = "c/s: %f " % (t/ 10)
    lcd.text(text, 0, 10, 1)
    lcd.show()

    log.info("Total micros in 10 second runtime: %f", us / 1000000)
    log.info("Total counts:  %d counts /sec: %f ", t, t / 10)
    yield asyncio.KillOs()
开发者ID:smeenka,项目名称:micro-python-lib,代码行数:17,代码来源:test_4speed.py


示例18: timeItRunner

def timeItRunner():
    global start,co,avg,sm,nb
    sm=nb=0
    start=pyb.micros()
    co.value(1)
    while True:
        avg = 0 if not nb else sm/nb
        print('avg:\t' + str(avg))
开发者ID:P3PO,项目名称:ArduGuitar,代码行数:8,代码来源:ist.py


示例19: writerCirc

def writerCirc():
    global handlerIndex,outData,tbInData,interruptCounter,period,start
    if outData.nbElts:
        tbInData.put(outData.get())
    else:
        handlerIndex ^=1
    period[interruptCounter] = pyb.elapsed_micros(start)
    interruptCounter+=1
    start=pyb.micros()
开发者ID:P3PO,项目名称:ArduGuitar,代码行数:9,代码来源:is0.py


示例20: writer

def writer():
    global handlerIndex,outData,interruptCounter,period,start
    if outData.nbElts:
        pdov(outData.get()%2)
    else:
        handlerIndex ^=1
    period[interruptCounter] = pyb.elapsed_micros(start)
    interruptCounter+=1
    start=pyb.micros()
开发者ID:P3PO,项目名称:ArduGuitar,代码行数:9,代码来源:is0.py



注:本文中的pyb.micros函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Python pyb.millis函数代码示例发布时间:2022-05-25
下一篇:
Python pyb.delay函数代码示例发布时间:2022-05-25
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap