kopia lustrzana https://github.com/pimoroni/pimoroni-pico
				
				
				
			Pimoroni I2C: Support machine.Pin args.
							rodzic
							
								
									d84a1e3470
								
							
						
					
					
						commit
						26a8ce40f5
					
				| 
						 | 
				
			
			@ -51,8 +51,8 @@ mp_obj_t PimoroniI2C_make_new(const mp_obj_type_t *type, size_t n_args, size_t n
 | 
			
		|||
 | 
			
		||||
    enum { ARG_sda, ARG_scl, ARG_baudrate };
 | 
			
		||||
    static const mp_arg_t allowed_args[] = {
 | 
			
		||||
        { MP_QSTR_sda, MP_ARG_INT, {.u_int = I2C_DEFAULT_SDA} },
 | 
			
		||||
        { MP_QSTR_scl, MP_ARG_INT, {.u_int = I2C_DEFAULT_SCL} },
 | 
			
		||||
        { MP_QSTR_sda, MP_ARG_OBJ, {.u_obj = MP_ROM_INT(I2C_DEFAULT_SDA)} },
 | 
			
		||||
        { MP_QSTR_scl, MP_ARG_OBJ, {.u_obj = MP_ROM_INT(I2C_DEFAULT_SCL)} },
 | 
			
		||||
        { MP_QSTR_baudrate, MP_ARG_INT, {.u_int = I2C_DEFAULT_BAUDRATE} },
 | 
			
		||||
    };
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -61,8 +61,8 @@ mp_obj_t PimoroniI2C_make_new(const mp_obj_type_t *type, size_t n_args, size_t n
 | 
			
		|||
    mp_arg_parse_all_kw_array(n_args, n_kw, all_args, MP_ARRAY_SIZE(allowed_args), allowed_args, args);
 | 
			
		||||
 | 
			
		||||
    // Get I2C bus.
 | 
			
		||||
    int sda = args[ARG_sda].u_int;
 | 
			
		||||
    int scl = args[ARG_scl].u_int;
 | 
			
		||||
    int sda = mp_hal_get_pin_obj(args[ARG_sda].u_obj);
 | 
			
		||||
    int scl = mp_hal_get_pin_obj(args[ARG_scl].u_obj);
 | 
			
		||||
    int baud = args[ARG_baudrate].u_int;
 | 
			
		||||
    int i2c_id = (sda >> 1) & 0b1;  // i2c bus for given SDA pin
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Ładowanie…
	
		Reference in New Issue