embassy-rp

Crates

git

Versions

rp2040

Flavors

embassy_rp::rom_data

Module float_funcs

Source
Expand description

ROM functions using single-precision arithmetic (i.e. ‘f32’ in Rust terms)

Modules§

  • Additional access for the fadd ROM function.
  • Additional access for the fatan2 ROM function.
  • Additional access for the fcmp ROM function.
  • Additional access for the fcos ROM function.
  • Additional access for the fdiv ROM function.
  • Additional access for the fexp ROM function.
  • Additional access for the fix64_to_float ROM function.
  • Additional access for the fix_to_float ROM function.
  • Additional access for the fln ROM function.
  • Additional access for the float_to_double ROM function.
  • Additional access for the float_to_fix ROM function.
  • Additional access for the float_to_fix64 ROM function.
  • Additional access for the float_to_int ROM function.
  • Additional access for the float_to_int64 ROM function.
  • Additional access for the float_to_ufix ROM function.
  • Additional access for the float_to_ufix64 ROM function.
  • Additional access for the float_to_uint ROM function.
  • Additional access for the float_to_uint64 ROM function.
  • Additional access for the fmul ROM function.
  • Additional access for the fsin ROM function.
  • Additional access for the fsqrt ROM function.
  • Additional access for the fsub ROM function.
  • Additional access for the ftan ROM function.
  • Additional access for the int64_to_float ROM function.
  • Additional access for the int_to_float ROM function.
  • Additional access for the ufix64_to_float ROM function.
  • Additional access for the ufix_to_float ROM function.
  • Additional access for the uint64_to_float ROM function.
  • Additional access for the uint_to_float ROM function.

Functions§

  • Calculates a + b
  • Computes the arc tangent of y/x using the signs of arguments to determine the correct quadrant
  • Compares two floating point numbers, returning: • 0 if a == b • -1 if a < b • 1 if a > b
  • Calculates the cosine of angle. The value of angle is in radians, and must be in the range -1024 to 1024
  • Calculates a / b
  • Calculates the exponential value of v, i.e. e ** v
  • Converts a signed fixed point 64-bit integer representation to the nearest f32 value, rounding to even on tie. n specifies the position of the binary point in fixed point, so f = nearest(v/(2^n))
  • Converts a signed fixed point integer representation to the nearest f32 value, rounding to even on tie. n specifies the position of the binary point in fixed point, so f = nearest(v/(2^n))
  • Calculates the natural logarithm of v. If v <= 0 return -Infinity
  • Converts an f32 to an f64.
  • Converts an f32 to an signed fixed point integer representation where n specifies the position of the binary point in the resulting fixed point representation, e.g. f(0.5f, 16) == 0x8000. This method rounds towards -Infinity, and clamps the resulting integer to lie within the range 0x00000000 to 0xFFFFFFFF
  • Converts an f32 to a signed fixed point 64-bit integer representation where n specifies the position of the binary point in the resulting fixed point representation - e.g. f(0.5f, 16) == 0x8000. This method rounds towards -Infinity, and clamps the resulting integer to lie within the range -0x8000000000000000 to 0x7FFFFFFFFFFFFFFF
  • Converts an f32 to a signed integer, rounding towards -Infinity, and clamping the result to lie within the range -0x80000000 to 0x7FFFFFFF
  • Convert an f32 to a signed 64-bit integer, rounding towards -Infinity, and clamping the result to lie within the range -0x8000000000000000 to 0x7FFFFFFFFFFFFFFF
  • Converts an f32 to an unsigned fixed point integer representation where n specifies the position of the binary point in the resulting fixed point representation, e.g. f(0.5f, 16) == 0x8000. This method rounds towards -Infinity, and clamps the resulting integer to lie within the range 0x00000000 to 0xFFFFFFFF
  • Converts an f32 to an unsigned fixed point 64-bit integer representation where n specifies the position of the binary point in the resulting fixed point representation, e.g. f(0.5f, 16) == 0x8000. This method rounds towards -Infinity, and clamps the resulting integer to lie within the range 0x0000000000000000 to 0xFFFFFFFFFFFFFFFF
  • Converts an f32 to an unsigned integer, rounding towards -Infinity, and clamping the result to lie within the range 0x00000000 to 0xFFFFFFFF
  • Converts an f32 to an unsigned 64-bit integer, rounding towards -Infinity, and clamping the result to lie within the range 0x0000000000000000 to 0xFFFFFFFFFFFFFFFF
  • Calculates a * b
  • Calculates the sine of angle. The value of angle is in radians, and must be in the range -1024 to 1024
  • Calculates sqrt(v) (or return -Infinity if v is negative)
  • Calculates a - b
  • Calculates the tangent of angle. The value of angle is in radians, and must be in the range -1024 to 1024
  • Converts a signed 64-bit integer to the nearest f32 value, rounding to even on tie
  • Converts a signed integer to the nearest f32 value, rounding to even on tie
  • Converts an unsigned fixed point 64-bit integer representation to the nearest f32 value, rounding to even on tie. n specifies the position of the binary point in fixed point, so f = nearest(v/(2^n))
  • Converts an unsigned fixed point integer representation to the nearest f32 value, rounding to even on tie. n specifies the position of the binary point in fixed point, so f = nearest(v/(2^n))
  • Converts an unsigned 64-bit integer to the nearest f32 value, rounding to even on tie
  • Converts an unsigned integer to the nearest f32 value, rounding to even on tie