DBI Display
bflb_dbi_init(dev, config)
Initialize dbi.
Parameters:
dev:device handleconfig:pointer to save dbi config
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dbi_deinit(dev)
Deinitialize dbi.
Parameters:
dev:device handle
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dbi_qspi_set_addr(dev, addr_byte_size, addr_val)
Set the address value and address length of the QSPI
Parameters:
dev:device handleaddr_byte_size:address size(byte), range 1 ~ 4addr_val:address value: [0:7]->addr[0], [8:15]->addr[1], [16:23]->addr[2], [24:31]->addr[3].
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dbi_send_cmd_data(dev, cmd, data_len, data_buff)
Send cmd with pixel data, send cmd -> send address(only QSPI mode) -> send parameter_data.
Parameters:
dev:device handlecmd:commanddata_len:Parameter length (byte), The maximum is DBI_WRITE_DATA_BYTE_MAXdata_buff:Parameter buffer, Cannot be null
📎 Device name lookup: Supported Device Names (BL616)
Return value: see the SDK header
bflb_dbi_send_cmd_read_data(dev, cmd, data_len, data_buff)
To read the data after sending the command, send cmd -> send address(only QSPI mode) -> read parameter_data.
Parameters:
dev:device handlecmd:commanddata_len:Length of data to be read (byte), The maximum is DBI_READ_DATA_BYTE_MAXdata_buff:Buff of data to be read, discard data if null
📎 Device name lookup: Supported Device Names (BL616)
Return value: see the SDK header
bflb_dbi_send_cmd_pixel(dev, cmd, pixel_cnt, pixel_buff)
Send cmd with pixel data, send cmd -> send address(only QSPI mode) -> send pixel_data,
Parameters:
dev:device handlecmd:commandpixel_cnt:Number of pixels,The maximum is DBI_WRITE_PIXEL_CNT_MAXpixel_buff:Pixels buffer, NULL when using DMA, in which case data needs to be transferred by DMA later, and wait for the transfer to complete
📎 Device name lookup: Supported Device Names (BL616)
Return value: see the SDK header
bflb_dbi_link_txdma(dev, enable)
Enable dbi tx dma.
Parameters:
dev:device handleenable:true means enable, otherwise disable.
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dbi_txint_mask(dev, mask)
Enable or disable dbi rx fifo threhold interrupt.
Parameters:
dev:device handlemask:true means disable, false means enable
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dbi_tcint_mask(dev, mask)
Enable or disable dbi transfer completion interrupt.
Parameters:
dev:device handlemask:true means disable, false means enable
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dbi_errint_mask(dev, mask)
Enable or disable dbi error interrupt.
Parameters:
dev:device handlemask:true means disable, false means enable
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dbi_get_intstatus(dev)
Get dbi interrupt status.
Parameters:
dev:device handle
📎 Device name lookup: Supported Device Names (BL616)
Return value: interrupt status, use @ref DBI_INTSTS
bflb_dbi_int_clear(dev, int_clear)
Clear dbi interrupt status.
Parameters:
dev:device handleint_clear:clear value, use @ref DBI_INTCLR
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dbi_feature_control(dev, cmd, arg)
Control dbi feature.
Parameters:
dev:device handlecmd:feature command, use @ref DBI_CMDarg:user data
📎 Device name lookup: Supported Device Names (BL616)
Return value: A negated errno value on failure.
DSI (Ai-M64 only)
bflb_dsi_init(dev, cfg)
Initialize DSI controller with configuration
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dsi_deinit(dev)
Deinitialize DSI controller
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dsi_phy_reset(dev)
Reset DSI PHY
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dsi_phy_enable(dev)
Enable DSI PHY
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dsi_phy_config(dev, phy)
Configure DSI PHY timing parameters
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dsi_phy_enable_lanes(dev, lanes_mask)
Enable specified DSI lanes
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dsi_phy_disable_lanes(dev, lanes_mask)
Disable specified DSI lanes
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dsi_phy_set_clock_lane(dev, operations)
Control DSI clock lane operations
📎 Device name lookup: Supported Device Names (BL616)
Return value: 0 on success, negative error code on failure
bflb_dsi_phy_get_lanes_state(dev, lane, state)
Get DSI lane state
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dsi_phy_data_lane0_turnaround(dev)
Perform data lane 0 turnaround
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dsi_phy_hs_mode_start(dev)
Start high speed mode transmission
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dsi_phy_hs_mode_stop(dev)
Stop high speed mode transmission
📎 Device name lookup: Supported Device Names (BL616)
Return value: 0 on success, negative error code on timeout
bflb_dsi_lpdt_send_short_packet(dev, msg)
Send LPDT short packet (0-2 bytes payload)
📎 Device name lookup: Supported Device Names (BL616)
Return value: 0 on success, negative error code on failure
bflb_dsi_lpdt_send_long_packet(dev, msg)
Send LPDT long packet (variable length payload)
📎 Device name lookup: Supported Device Names (BL616)
Return value: 0 on success, negative error code on failure
bflb_dsi_lpdt_recv(dev, msg)
Receive LPDT packet
📎 Device name lookup: Supported Device Names (BL616)
Return value: 0 on success, negative error code on failure
bflb_dsi_lpdt_config_short_packet(dev, msg)
Configure short packet for LPDT transmission
📎 Device name lookup: Supported Device Names (BL616)
Return value: 0 on success, negative error code on failure
bflb_dsi_lpdt_config_long_packet(dev, msg)
Configure long packet for LPDT transmission
📎 Device name lookup: Supported Device Names (BL616)
Return value: 0 on success, negative error code on failure
bflb_dsi_lpdt_start_tx(dev)
Start LPDT transmission
📎 Device name lookup: Supported Device Names (BL616)
Return value: 0 on success, negative error code on failure
bflb_dsi_lpdt_start_rx(dev)
Start LPDT reception
📎 Device name lookup: Supported Device Names (BL616)
Return value: 0 on success, negative error code on failure
bflb_dsi_wait_tx_done(dev)
Wait for LPDT transmission to complete
📎 Device name lookup: Supported Device Names (BL616)
Return value: 0 on success, negative error code on timeout
bflb_dsi_lpdt_get_rx_length(dev)
Get received LPDT packet length
📎 Device name lookup: Supported Device Names (BL616)
Return value: Length of received packet in bytes
bflb_dsi_read_fifo(dev, data, maxlen)
Read data from RX FIFO
📎 Device name lookup: Supported Device Names (BL616)
Return value: Number of bytes actually read, or negative error code
bflb_dsi_full_fill_fifo(dev, data, len)
Fill TX FIFO completely with data
📎 Device name lookup: Supported Device Names (BL616)
Return value: Number of bytes actually written
bflb_dsi_feed_fifo(dev, data, len)
Feed data to TX FIFO (partial fill allowed)
📎 Device name lookup: Supported Device Names (BL616)
Return value: Number of bytes actually written
bflb_dsi_get_tx_fifo_count(dev)
Get current TX FIFO count
📎 Device name lookup: Supported Device Names (BL616)
Return value: Current number of bytes in TX FIFO
bflb_dsi_get_rx_fifo_count(dev)
Get current RX FIFO count
📎 Device name lookup: Supported Device Names (BL616)
Return value: Current number of bytes in RX FIFO
bflb_dsi_int_mask(dev, int_mask, mask)
Mask or unmask DSI interrupts
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dsi_int_clear(dev, int_flag)
Clear DSI interrupt flags
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dsi_int_enable(dev, int_type)
Enable DSI interrupts
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dsi_int_get(dev)
Get DSI interrupt status
📎 Device name lookup: Supported Device Names (BL616)
Return value: Current interrupt status flags (BFLB_DSI_INT_* values)
bflb_dsi_send_trigger_command(dev, cmd)
Send DSI trigger command
📎 Device name lookup: Supported Device Names (BL616)
Return value: 0 on success, negative error code otherwise
bflb_dsi_send_ulps_command(dev)
Send DSI ULPS command
📎 Device name lookup: Supported Device Names (BL616)
Return value: 0 on success, negative error code otherwise
bflb_dsi_exit_ulps(dev)
Exit DSI ULPS mode
📎 Device name lookup: Supported Device Names (BL616)
Return value: 0 on success, negative error code otherwise
bflb_dsi_fifo_config(dev, fifo_cfg)
Configure DSI FIFO settings
📎 Device name lookup: Supported Device Names (BL616)
Return value: see the SDK header
bflb_dsi_set_line_buffer_threshold(dev, frame_width, dvp_tsrc_clock, dsi_clock, data_type, lane_number)
Set DSI line buffer threshold
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dsi_set_vsa_vfp(dev, vsa, vfp)
Set DSI VSA and VFP timing
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dsi_phy_reinit_data_lanes(dev, lanes_mask)
Reinitialize DSI data lanes (force RX mode)
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dsi_phy_stop_data_lanes(dev, lanes_mask)
Stop DSI data lanes (force TX stop mode)
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
DVP Raster (Ai-M64 only)
bflb_dvp_raster_init(dev, config)
Initialize dvp raster.
Parameters:
dev:device handleconfig:pointer to save dvp raster config
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dvp_raster_deinit(dev)
Deinitialize dvp raster.
Parameters:
dev:device handle
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dvp_raster_enable(dev)
Enable dvp raster.
Parameters:
dev:device handle
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dvp_raster_disable(dev)
Disable dvp raster.
Parameters:
dev:device handle
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dvp_raster_sw_mode(dev, enable)
Enable or disable dvp raster software mode.
Parameters:
dev:device handleenable:true means enable, false means disable
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dvp_raster_sw_mode_kick(dev)
Trigger dvp raster software mode to process one frame.
Parameters:
dev:device handle
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dvp_raster_sw_mode_output_rgb(dev, enable)
Enable or disable dvp raster software mode to output rgb data.
Parameters:
dev:device handleenable:true means enable, false means disable
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dvp_raster_int_mask(dev, mask)
Enable or disable dvp raster interrupt.
Parameters:
dev:device handlemask:true means disable, false means enable
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dvp_raster_get_intstatus(dev)
Get dvp raster interrupt status.
Parameters:
dev:device handle
📎 Device name lookup: Supported Device Names (BL616)
Return value: interrupt status
bflb_dvp_raster_int_clear(dev)
Clear dvp raster interrupt status.
Parameters:
dev:device handle
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dvp_raster_crop_vsync(dev, start_line, end_line)
Crop vsync.
Parameters:
dev:device handlestart_line:start line of windowend_line:end line of window, not include
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dvp_raster_crop_hsync(dev, start_pixel, end_pixel)
Crop hsync.
Parameters:
dev:device handlestart_pixel:start pixel of each lineend_pixel:end pixel of each line, not include
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dvp_raster_feature_control(dev, cmd, arg)
Control dvp raster feature.
Parameters:
dev:device handlecmd:feature command, use @ref DVP_RASTER_CMDarg:user data
📎 Device name lookup: Supported Device Names (BL616)
Return value: A negated errno value on failure.
OSD Overlay (Ai-M64 only)
bflb_osd_blend_init(dev, config)
Initialize osd blend.
Parameters:
dev:device handleconfig:pointer to save osd blend config
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_osd_blend_enable(dev)
Enable osd blend.
Parameters:
dev:device handle
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_osd_blend_disable(dev)
Disable osd blend.
Parameters:
dev:device handle
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_osd_blend_set_coordinate(dev, coor)
Set osd blend coordinate.
Parameters:
dev:device handlecoor:pointer to osd coordinate
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_osd_blend_set_layer_buffer(dev, addr)
Set osd blend layer buffer.
Parameters:
dev:device handleaddr:start address of layer buffer
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_osd_blend_get_layer_buffer(dev)
Get osd blend layer buffer.
Parameters:
dev:device handle
📎 Device name lookup: Supported Device Names (BL616)
Return value: Start address of the layer buffer
bflb_osd_blend_set_global_a(dev, enable, value)
Set osd blend global alpha.
Parameters:
dev:device handleenable:enable or disable global alphavalue:value of global alpha
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_osd_blend_set_global_rgb_yuv(dev, enable, rv, gy, bu)
Set osd blend global RGB or YUV.
Parameters:
dev:device handleenable:enable or disable global alpharv:value of global R or Vgy:value of global G or Ybu:value of global B or U
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_osd_blend_set_palette_color(dev, index, value)
Set osd blend palette index and color.
Parameters:
dev:device handleindex:index of colorvalue:value of color
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_osd_blend_replace_palette_index(dev, enable, replace)
Replace osd blend palette index with target index.
Parameters:
dev:device handleenable:enable or disable replace functionreplace:pointer to save osd blend palette index replace config
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_osd_blend_replace_color_value(dev, enable, replace_a, replace_rv, replace_gy, replace_bu)
Replace osd blend color value with target value only when its A, R, G, and B values all match the range.
Parameters:
dev:device handleenable:enable or disable replace functionreplace_a:pointer to save osd blend value of alpha replace configreplace_rv:pointer to save osd blend value of R/V replace configreplace_gy:pointer to save osd blend value of G/Y replace configreplace_bu:pointer to save osd blend value of B/U replace config
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_osd_draw_init(dev, layer, config)
Initialize osd draw rectangle.
Parameters:
dev:device handlelayer:draw layer, use @ref OSD_DRAW_LAYERconfig:pointer to save osd draw config
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_osd_draw_enable(dev, layer)
Enable osd draw rectangle.
Parameters:
dev:device handlelayer:draw layer, use @ref OSD_DRAW_LAYER
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_osd_draw_disable(dev, layer)
Disable osd draw rectangle.
Parameters:
dev:device handlelayer:draw layer, use @ref OSD_DRAW_LAYER
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_osd_draw_set_coordinate(dev, layer, coor)
Set osd draw rectangle coordinate.
Parameters:
dev:device handlelayer:draw layer, use @ref OSD_DRAW_LAYERcoor:pointer to osd coordinate
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_osd_int_mask(dev, mask)
Enable or disable osd interrupt.
Parameters:
dev:device handlemask:true means disable, false means enable
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_osd_get_intstatus(dev)
Get osd interrupt status.
Parameters:
dev:device handle
📎 Device name lookup: Supported Device Names (BL616)
Return value: interrupt status
bflb_osd_int_clear(dev)
Clear osd interrupt status.
Parameters:
dev:device handle
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_osd_feature_control(dev, cmd, arg)
Control osd feature.
Parameters:
dev:device handlecmd:feature command, use @ref OSD_CMDarg:user data
📎 Device name lookup: Supported Device Names (BL616)
Return value: A negated errno value on failure.
2D DMA (Ai-M64 only)
bflb_dma2d_channel_init(dev, config)
Initialize dma2d channel.
Parameters:
dev:device handleconfig:pointer to save dma2d channel configuration
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dma2d_channel_deinit(dev)
Deinitialize dma2d channel.
Parameters:
dev:device handle
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dma2d_channel_start(dev)
Start dma2d channel transfer.
Parameters:
dev:device handle
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dma2d_channel_stop(dev)
Stop dma2d channel transfer.
Parameters:
dev:device handle
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dma2d_channel_isbusy(dev)
Check if dma2d channel is in busy.
Parameters:
dev:device handle
📎 Device name lookup: Supported Device Names (BL616)
Return value: true means dma2d channel is enable, otherwise means disable.
bflb_dma2d_channel_irq_detach(dev)
Unregister dma2d channel transmission completion interrupt callback.
Parameters:
dev:device handle
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dma2d_channel_tcint_mask(dev, mask)
Enable or disable dma2d channel transmission completion interrupt.
Parameters:
dev:device handlemask:true means disable, false means enable
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dma2d_channel_get_tcint_status(dev)
Check if dma2d channel transfers completely.
Parameters:
dev:device handle
📎 Device name lookup: Supported Device Names (BL616)
Return value: true means yes, false means no.
bflb_dma2d_channel_tcint_clear(dev)
Clear dma2d channel transmission completion interrupt status.
Parameters:
dev:device handle
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dma2d_image_geometric_transfor_calculate(dev, config, image, mode)
Calculate dma2d configuration according to image geometric transfor mode.
Parameters:
dev:device handleconfig:pointer to save dma2d channel configurationimage:pointer to dma2d image informationmode:image geometric transfor mode, use @ref DMA2D_IMAGE_GEOMETRIC_TRANSFOR
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dma2d_channel_enable_color_key(dev)
Enable dma2d channel color key function.
Parameters:
dev:device handle
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dma2d_channel_disable_color_key(dev)
Disable dma2d channel color key function.
Parameters:
dev:device handle
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dma2d_channel_set_color_key(dev, mode, value, mask)
Set dma2d channel color key mode and value.
Parameters:
dev:device handlemode:color key mode, use @ref DMA2D_COLOR_KEY_MODEvalue:color key valuemask:color key mask, use @ref DMA2D_COLOR_KEY_MASK
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_dma2d_feature_control(dev, cmd, arg)
Control dma2d feature.
Parameters:
dev:device handlecmd:feature command, use @ref DMA2D_CMDarg:user data
📎 Device name lookup: Supported Device Names (BL616)
Return value: A negated errno value on failure.
JPEG Decoder (Ai-M64 only)
bflb_mjdec_set_dqt_from_zigzag(dev, yy, uv)
Set DQT from ZIGZAG
Parameters:
dev:device handleyy:pointer of YY component DQT ordered by zig_zaguv:pointer of UV component DQT ordered by zig_zag
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_mjdec_set_dqt_from_header(dev, header)
Set DQT from JPEG header
Parameters:
dev:device handleheader:pointer of JPEG header
📎 Device name lookup: Supported Device Names (BL616)
Return value: error status
bflb_mjdec_set_dht_from_spec(dev, pointer)
Set DHT from JPEG specification
Parameters:
dev:device handlepointer:of DHT
📎 Device name lookup: Supported Device Names (BL616)
Return value: error status
bflb_mjdec_set_dht_from_header(dev, header)
Set DHT from JPEG header
Parameters:
dev:device handleheader:pointer of JPEG header
📎 Device name lookup: Supported Device Names (BL616)
Return value: error status
bflb_mjdec_set_dqt_from_quality(dev, quality)
Set DQT from quality value
Parameters:
dev:device handlequality:JPEG quality
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_mjdec_init(dev, config)
Initialize mjdec.
Parameters:
dev:device handleconfig:pointer to save mjdec config
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_mjdec_start(dev)
Start mjdec dec-compression
Parameters:
dev:device handle
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_mjdec_stop(dev)
Stop mjdec dec-compression
Parameters:
dev:device handle
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_mjdec_push_jpeg(dev, frame)
Push one frame of jpeg to mjdec for dec-compression
Parameters:
dev:device handleframe:jpeg frame start address, must be align 8 bytes
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_mjdec_tcint_mask(dev, mask)
Enable or disable mjdec one frame dec-compression completion interrupt.
Parameters:
dev:device handlemask:true means disable, false means enable
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_mjdec_get_intstatus(dev)
Get mjdec interrupt status.
Parameters:
dev:device handle
📎 Device name lookup: Supported Device Names (BL616)
Return value: interrupt status
bflb_mjdec_int_clear(dev, int_clear)
Clear mjdec interrupt status.
Parameters:
dev:device handleint_clear:clear value
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_mjdec_get_frame_count(dev)
Get number of frame count that has dec-compressed.
Parameters:
dev:device handle
📎 Device name lookup: Supported Device Names (BL616)
Return value: dec-compressed frame count
bflb_mjdec_pop_one_frame(dev)
Drop one frame that has dec-compressed.
Parameters:
dev:device handle
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_mjdec_feature_control(dev, cmd, arg)
Control mjdec feature.
Parameters:
dev:device handlecmd:feature commandarg:user data
📎 Device name lookup: Supported Device Names (BL616)
Return value: A negated errno value on failure.
touch v2 (Ai-M64 only)
bflb_touch_v2_init(dev, config)
Initialize touch V2 with configuration
📎 Device name lookup: Supported Device Names (BL616)
Return value: 0 on success, negative error code otherwise
bflb_touch_v2_deinit(dev)
Deinitialize touch V2
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_touch_v2_enable(dev)
Enable touch V2 module
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_touch_v2_disable(dev)
Disable touch V2 module
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_touch_v2_scan_start(dev)
Start touch V2 scanning
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_touch_v2_scan_stop(dev)
Stop touch V2 scanning
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_touch_v2_reset(dev)
Perform software reset
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_touch_v2_set_channel_threshold(dev, channel, threshold)
Set channel threshold data
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_touch_v2_set_channel_hysteresis(dev, channel, hys)
Set channel hysteresis data
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_touch_v2_set_channel_force_data(dev, channel, force_data)
Set channel force data
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_touch_v2_latch_force_data(dev)
Latch force data to LTA data
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_touch_v2_get_channel_data(dev, channel, data)
Get channel data
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_touch_v2_get_raw_data(dev, channel)
Get raw data for a specific channel
📎 Device name lookup: Supported Device Names (BL616)
Return value: raw data value
bflb_touch_v2_get_flt_data(dev, channel)
Get filtered data for a specific channel
📎 Device name lookup: Supported Device Names (BL616)
Return value: filtered data value
bflb_touch_v2_get_lta_data(dev, channel)
Get LTA data for a specific channel
📎 Device name lookup: Supported Device Names (BL616)
Return value: LTA data value
bflb_touch_v2_set_tx_channel(dev, channels)
Set TX channel enable mask
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_touch_v2_set_rx_channel(dev, channels)
Set RX channel enable mask
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_touch_v2_get_int_status(dev)
Get interrupt status
📎 Device name lookup: Supported Device Names (BL616)
Return value: interrupt status bitmap
bflb_touch_v2_clear_int(dev, int_mask)
Clear interrupt status
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_touch_v2_set_int_mask(dev, int_mask)
Set interrupt mask
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_touch_v2_config_freq_hopping(dev, enable, threshold, div0, div1, div2)
Configure frequency hopping
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_touch_v2_set_detection_duration(dev, duration)
Set touch detection duration
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_touch_v2_set_sleep_cycle(dev, sleep_cycle)
Configure sleep cycle for non-continuous mode
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
PEC v2 (Ai-M64 only)
bflb_pec_memory_size_check(dev, start, size, actual_start)
COMMON API
📎 Device name lookup: Supported Device Names (BL616)
Return value: see the SDK header
bflb_pec_fifo_get_deepth_tx(dev)
low level API
📎 Device name lookup: Supported Device Names (BL616)
Return value: see the SDK header
bflb_pec_fifo_get_deepth_rx(dev)
low level API
📎 Device name lookup: Supported Device Names (BL616)
Return value: see the SDK header
bflb_pec_fifo_get_level_tx(dev)
low level API
📎 Device name lookup: Supported Device Names (BL616)
Return value: see the SDK header
bflb_pec_fifo_get_level_rx(dev)
low level API
📎 Device name lookup: Supported Device Names (BL616)
Return value: see the SDK header
bflb_pec_fifo_clr_tx(dev)
low level API
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_pec_fifo_clr_rx(dev)
low level API
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_pec_fifo_is_rdy_tx(dev)
low level API
📎 Device name lookup: Supported Device Names (BL616)
Return value: see the SDK header
bflb_pec_fifo_is_rdy_rx(dev)
low level API
📎 Device name lookup: Supported Device Names (BL616)
Return value: see the SDK header
bflb_pec_fifo_get_addr_tx(dev)
low level API
📎 Device name lookup: Supported Device Names (BL616)
Return value: see the SDK header
bflb_pec_fifo_get_addr_rx(dev)
low level API
📎 Device name lookup: Supported Device Names (BL616)
Return value: see the SDK header
bflb_pec_fifo_write(dev, value)
low level API
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_pec_fifo_read(dev)
low level API
📎 Device name lookup: Supported Device Names (BL616)
Return value: see the SDK header
bflb_pec_fifo_write_multi_32bits(dev, data, len)
low level API
📎 Device name lookup: Supported Device Names (BL616)
Return value: see the SDK header
bflb_pec_fifo_write_multi_16bits(dev, data, len)
low level API
📎 Device name lookup: Supported Device Names (BL616)
Return value: see the SDK header
bflb_pec_fifo_write_multi_8bits(dev, data, len)
low level API
📎 Device name lookup: Supported Device Names (BL616)
Return value: see the SDK header
bflb_pec_fifo_write_multi_32bits_blocking(dev, data, len)
low level API
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_pec_fifo_write_multi_16bits_blocking(dev, data, len)
low level API
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_pec_fifo_write_multi_8bits_blocking(dev, data, len)
low level API
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_pec_fifo_read_multi_32bits(dev, data, len)
low level API
📎 Device name lookup: Supported Device Names (BL616)
Return value: see the SDK header
bflb_pec_fifo_read_multi_16bits(dev, data, len)
low level API
📎 Device name lookup: Supported Device Names (BL616)
Return value: see the SDK header
bflb_pec_fifo_read_multi_8bits(dev, data, len)
low level API
📎 Device name lookup: Supported Device Names (BL616)
Return value: see the SDK header
bflb_pec_fifo_set_threshold_tx(dev, threshold)
low level API
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_pec_fifo_set_threshold_rx(dev, threshold)
low level API
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_pec_dma_enable_tx(dev)
low level API
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_pec_dma_enable_rx(dev)
low level API
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_pec_dma_disable_tx(dev)
low level API
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_pec_dma_disable_rx(dev)
low level API
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_pec_pwm_init(dev, pwm)
PWM
📎 Device name lookup: Supported Device Names (BL616)
Return value: see the SDK header
bflb_pec_pwm_start(dev, high_cnt, low_cnt)
PWM
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_pec_uart_tx_init(dev, uart)
UART_TX
📎 Device name lookup: Supported Device Names (BL616)
Return value: see the SDK header
bflb_pec_uart_tx_deinit(dev)
UART_TX
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_pec_uart_rx_init(dev, uart)
UART_RX
📎 Device name lookup: Supported Device Names (BL616)
Return value: see the SDK header
bflb_pec_uart_rx_deinit(dev)
UART_RX
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_pec_uart_rx_start(dev)
UART_RX
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_pec_uart_rx_stop(dev)
UART_RX
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_pec_ir_nec_init(dev, ir)
IR_NEC
📎 Device name lookup: Supported Device Names (BL616)
Return value: see the SDK header
bflb_pec_ir_nec_set_timing(dev, nec_timing)
IR_NEC
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_pec_ir_nec_send(dev, data, bits)
IR_NEC
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_pec_ir_nec_is_busy(dev)
IR_NEC
📎 Device name lookup: Supported Device Names (BL616)
Return value: see the SDK header
bflb_pec_ir_rc5_init(dev, ir)
IR_NEC
📎 Device name lookup: Supported Device Names (BL616)
Return value: see the SDK header
bflb_pec_ir_rc5_set_timing(dev, rc5_timing)
IR_NEC
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_pec_ir_rc5_send(dev, data, bits)
IR_NEC
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_pec_ir_rc5_is_busy(dev)
IR_NEC
📎 Device name lookup: Supported Device Names (BL616)
Return value: see the SDK header
bflb_pec_spi_init(dev, spi)
SPI
📎 Device name lookup: Supported Device Names (BL616)
Return value: see the SDK header
bflb_pec_spi_set_bits(dev, bits)
SPI
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_pec_i2c_init(dev, i2c)
I2C
📎 Device name lookup: Supported Device Names (BL616)
Return value: see the SDK header
bflb_pec_i2c_set_timing(dev, timing)
I2C
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_pec_i2c_is_busy(dev)
I2C
📎 Device name lookup: Supported Device Names (BL616)
Return value: see the SDK header
bflb_pec_i2c_get_err(dev)
I2C
📎 Device name lookup: Supported Device Names (BL616)
Return value: see the SDK header
bflb_pec_i2c_clear_err(dev)
I2C
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_pec_i2c_write(dev, data)
I2C
📎 Device name lookup: Supported Device Names (BL616)
Return value: see the SDK header
bflb_pec_i2c_read(dev, data)
I2C
📎 Device name lookup: Supported Device Names (BL616)
Return value: see the SDK header
bflb_pec_dpi_init(dev, dpi)
DPI
📎 Device name lookup: Supported Device Names (BL616)
Return value: see the SDK header
bflb_pec_srgb_init(dev, srgb)
sRGB
📎 Device name lookup: Supported Device Names (BL616)
Return value: see the SDK header
bflb_pec_dvp_cam_init(dev, cam)
DVP_CAM
📎 Device name lookup: Supported Device Names (BL616)
Return value: see the SDK header
bflb_pec_dvp_cam_start(dev)
DVP_CAM
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_pec_dvp_cam_stop(dev)
DVP_CAM
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_pec_qspi_cam_init(dev, cam)
QSPI_CAM
📎 Device name lookup: Supported Device Names (BL616)
Return value: see the SDK header
bflb_pec_qspi_cam_start(dev, cam)
QSPI_CAM
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_pec_qspi_cam_stop(dev, cam)
QSPI_CAM
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
I2S Audio
bflb_i2s_init(dev, config)
Initialize i2s.
Parameters:
dev:device handleconfig:pointer to save i2s config
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_i2s_deinit(dev)
Deinitialize i2s.
Parameters:
dev:device handle
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_i2s_link_txdma(dev, enable)
Enable i2s tx dma.
Parameters:
dev:device handleenable:true means enable, otherwise disable.
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_i2s_link_rxdma(dev, enable)
Enable i2s rx dma.
Parameters:
dev:device handleenable:true means enable, otherwise disable.
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_i2s_txint_mask(dev, mask)
Enable or disable i2s rx fifo threhold interrupt.
Parameters:
dev:device handlemask:true means disable, false means enable
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_i2s_rxint_mask(dev, mask)
Enable or disable i2s rx fifo threhold interrupt.
Parameters:
dev:device handlemask:true means disable, false means enable
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_i2s_errint_mask(dev, mask)
Enable or disable i2s error interrupt.
Parameters:
dev:device handlemask:true means disable, false means enable
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_i2s_get_intstatus(dev)
Get i2s interrupt status.
Parameters:
dev:device handle
📎 Device name lookup: Supported Device Names (BL616)
Return value: interrupt status, use @ref I2S_INTSTS
bflb_i2s_feature_control(dev, cmd, arg)
Control i2s feature.
Parameters:
dev:device handlecmd:feature command, use @ref I2S_CMDarg:user data
📎 Device name lookup: Supported Device Names (BL616)
Return value: A negated errno value on failure.
Audio AUADC
bflb_auadc_init(sampling_rate, input_mode, data_format, fifo_threshold)
auadc adc analog initialization configuration structure
Parameters:
sampling_rate:auadc sampling rate, use @ref AUADC_SAMPLING_RATEinput_mode:auadc mode, use @ref AUADC_INPUT_MODEdata_format:auadc fifo data format, use @ref AUADC_DATA_FORMATfifo_threshold:auadc tx fifo threshold, 0 ~ 7
Return value: see the SDK header
bflb_auadc_adc_init(analog_adc_en, adc_mode, adc_pga_mode, adc_pga_posi_ch, adc_pga_nega_ch, adc_pga_gain, adc_measure_rate)
auadc adc analog initialization configuration structure
Parameters:
analog_adc_en:auadc sampling rate, use true or falseadc_mode:auadc adc work pattern, use @ref AUADC_ADC_MODEadc_pga_mode:auadc adc PGA mode, use @ref AUADC_ADC_PGA_MODEadc_pga_posi_ch:auadc adc positive channel selection, use @ref AUADC_ADC_ANALOG_CHadc_pga_nega_ch:auadc adc negative channel selection, This channel is valid only when adc_pga_mode is differential, use @ref AUADC_ADC_ANALOG_CHadc_pga_gain:auadc adc PGA Gain control, 6dB ~ 42dB, step by 3dbadc_measure_rate:auadc adc sampling rate in measurement mode @ AUADC_SAMPLING_RATE_MEASURE_256K, use @ref AUADC_ADC_MEASURE_RATE
Return value: see the SDK header
bflb_auadc_link_rxdma(analog_adc_en, adc_mode, adc_pga_mode, adc_pga_posi_ch, adc_pga_nega_ch, adc_pga_gain, adc_measure_rate)
auadc adc analog initialization configuration structure
Parameters:
analog_adc_en:auadc sampling rate, use true or falseadc_mode:auadc adc work pattern, use @ref AUADC_ADC_MODEadc_pga_mode:auadc adc PGA mode, use @ref AUADC_ADC_PGA_MODEadc_pga_posi_ch:auadc adc positive channel selection, use @ref AUADC_ADC_ANALOG_CHadc_pga_nega_ch:auadc adc negative channel selection, This channel is valid only when adc_pga_mode is differential, use @ref AUADC_ADC_ANALOG_CHadc_pga_gain:auadc adc PGA Gain control, 6dB ~ 42dB, step by 3dbadc_measure_rate:auadc adc sampling rate in measurement mode @ AUADC_SAMPLING_RATE_MEASURE_256K, use @ref AUADC_ADC_MEASURE_RATE
Return value: see the SDK header
bflb_auadc_int_mask(analog_adc_en, adc_mode, adc_pga_mode, adc_pga_posi_ch, adc_pga_nega_ch, adc_pga_gain, adc_measure_rate)
auadc adc analog initialization configuration structure
Parameters:
analog_adc_en:auadc sampling rate, use true or falseadc_mode:auadc adc work pattern, use @ref AUADC_ADC_MODEadc_pga_mode:auadc adc PGA mode, use @ref AUADC_ADC_PGA_MODEadc_pga_posi_ch:auadc adc positive channel selection, use @ref AUADC_ADC_ANALOG_CHadc_pga_nega_ch:auadc adc negative channel selection, This channel is valid only when adc_pga_mode is differential, use @ref AUADC_ADC_ANALOG_CHadc_pga_gain:auadc adc PGA Gain control, 6dB ~ 42dB, step by 3dbadc_measure_rate:auadc adc sampling rate in measurement mode @ AUADC_SAMPLING_RATE_MEASURE_256K, use @ref AUADC_ADC_MEASURE_RATE
Return value: see the SDK header
bflb_auadc_int_unmask(analog_adc_en, adc_mode, adc_pga_mode, adc_pga_posi_ch, adc_pga_nega_ch, adc_pga_gain, adc_measure_rate)
auadc adc analog initialization configuration structure
Parameters:
analog_adc_en:auadc sampling rate, use true or falseadc_mode:auadc adc work pattern, use @ref AUADC_ADC_MODEadc_pga_mode:auadc adc PGA mode, use @ref AUADC_ADC_PGA_MODEadc_pga_posi_ch:auadc adc positive channel selection, use @ref AUADC_ADC_ANALOG_CHadc_pga_nega_ch:auadc adc negative channel selection, This channel is valid only when adc_pga_mode is differential, use @ref AUADC_ADC_ANALOG_CHadc_pga_gain:auadc adc PGA Gain control, 6dB ~ 42dB, step by 3dbadc_measure_rate:auadc adc sampling rate in measurement mode @ AUADC_SAMPLING_RATE_MEASURE_256K, use @ref AUADC_ADC_MEASURE_RATE
Return value: see the SDK header
bflb_auadc_get_intstatus(analog_adc_en, adc_mode, adc_pga_mode, adc_pga_posi_ch, adc_pga_nega_ch, adc_pga_gain, adc_measure_rate)
auadc adc analog initialization configuration structure
Parameters:
analog_adc_en:auadc sampling rate, use true or falseadc_mode:auadc adc work pattern, use @ref AUADC_ADC_MODEadc_pga_mode:auadc adc PGA mode, use @ref AUADC_ADC_PGA_MODEadc_pga_posi_ch:auadc adc positive channel selection, use @ref AUADC_ADC_ANALOG_CHadc_pga_nega_ch:auadc adc negative channel selection, This channel is valid only when adc_pga_mode is differential, use @ref AUADC_ADC_ANALOG_CHadc_pga_gain:auadc adc PGA Gain control, 6dB ~ 42dB, step by 3dbadc_measure_rate:auadc adc sampling rate in measurement mode @ AUADC_SAMPLING_RATE_MEASURE_256K, use @ref AUADC_ADC_MEASURE_RATE
Return value: see the SDK header
bflb_auadc_feature_control(analog_adc_en, adc_mode, adc_pga_mode, adc_pga_posi_ch, adc_pga_nega_ch, adc_pga_gain, adc_measure_rate)
auadc adc analog initialization configuration structure
Parameters:
analog_adc_en:auadc sampling rate, use true or falseadc_mode:auadc adc work pattern, use @ref AUADC_ADC_MODEadc_pga_mode:auadc adc PGA mode, use @ref AUADC_ADC_PGA_MODEadc_pga_posi_ch:auadc adc positive channel selection, use @ref AUADC_ADC_ANALOG_CHadc_pga_nega_ch:auadc adc negative channel selection, This channel is valid only when adc_pga_mode is differential, use @ref AUADC_ADC_ANALOG_CHadc_pga_gain:auadc adc PGA Gain control, 6dB ~ 42dB, step by 3dbadc_measure_rate:auadc adc sampling rate in measurement mode @ AUADC_SAMPLING_RATE_MEASURE_256K, use @ref AUADC_ADC_MEASURE_RATE
Return value: see the SDK header
Audio DAC
bflb_audac_init(sampling_rate, output_mode, source_channels_num, mixer_mode, data_format, fifo_threshold, dma_enable)
AUDAC volume configuration structure
Parameters:
sampling_rate:AUDAC sampling rate, use @ref AUDAC_SAMPLING_RATEoutput_mode:AUDAC mode, use @ref AUDAC_OUTPUT_MODEsource_channels_num:AUDAC source channels num, use @ref AUDAC_SOURCE_CHANNELmixer_mode:AUDAC mixer mode, valid only in AUDAC_SOURCE_CHANNEL_DUAL mode, use @ref AUDAC_MIXER_MODEdata_format:AUDAC audac data format, use @ref AUDAC_DATA_FORMATfifo_threshold:AUDAC tx fifo threshold, 0 ~ 7dma_enable:AUDAC dma mode enable, use true or false
Return value: see the SDK header
bflb_audac_volume_init(mute_ramp_en, mute_up_ramp_rate, mute_down_ramp_rate, volume_update_mode, volume_ramp_rate, volume_zero_cross_timeout)
AUDAC volume configuration structure
Parameters:
mute_ramp_en:AUDAC mute mode en, use true or falsemute_up_ramp_rate:AUDAC mute up ramp rate, valid when mute_ramp_en is true, use @ref AUDAC_RAMP_RATEmute_down_ramp_rate:AUDAC mute down ramp rate, valid when mute_ramp_en is true, use @ref AUDAC_RAMP_RATEvolume_update_mode:AUDAC volume update mode, use @ref AUDAC_VOLUME_UPDATE_MODEvolume_ramp_rate:AUDAC volume ramp rate, valid when volume_update_mode is not AUDAC_VOLUME_UPDATE_MODE_FORCE, use @ref AUDAC_RAMP_RATEvolume_zero_cross_timeout:AUDAC volume update zero cross timeout period, valid only in AUDAC_VOLUME_UPDATE_MODE_RAMP_ZERO_CROSSING mode
Return value: see the SDK header
bflb_audac_link_rxdma(mute_ramp_en, mute_up_ramp_rate, mute_down_ramp_rate, volume_update_mode, volume_ramp_rate, volume_zero_cross_timeout)
AUDAC volume configuration structure
Parameters:
mute_ramp_en:AUDAC mute mode en, use true or falsemute_up_ramp_rate:AUDAC mute up ramp rate, valid when mute_ramp_en is true, use @ref AUDAC_RAMP_RATEmute_down_ramp_rate:AUDAC mute down ramp rate, valid when mute_ramp_en is true, use @ref AUDAC_RAMP_RATEvolume_update_mode:AUDAC volume update mode, use @ref AUDAC_VOLUME_UPDATE_MODEvolume_ramp_rate:AUDAC volume ramp rate, valid when volume_update_mode is not AUDAC_VOLUME_UPDATE_MODE_FORCE, use @ref AUDAC_RAMP_RATEvolume_zero_cross_timeout:AUDAC volume update zero cross timeout period, valid only in AUDAC_VOLUME_UPDATE_MODE_RAMP_ZERO_CROSSING mode
Return value: see the SDK header
bflb_audac_int_mask(mute_ramp_en, mute_up_ramp_rate, mute_down_ramp_rate, volume_update_mode, volume_ramp_rate, volume_zero_cross_timeout)
AUDAC volume configuration structure
Parameters:
mute_ramp_en:AUDAC mute mode en, use true or falsemute_up_ramp_rate:AUDAC mute up ramp rate, valid when mute_ramp_en is true, use @ref AUDAC_RAMP_RATEmute_down_ramp_rate:AUDAC mute down ramp rate, valid when mute_ramp_en is true, use @ref AUDAC_RAMP_RATEvolume_update_mode:AUDAC volume update mode, use @ref AUDAC_VOLUME_UPDATE_MODEvolume_ramp_rate:AUDAC volume ramp rate, valid when volume_update_mode is not AUDAC_VOLUME_UPDATE_MODE_FORCE, use @ref AUDAC_RAMP_RATEvolume_zero_cross_timeout:AUDAC volume update zero cross timeout period, valid only in AUDAC_VOLUME_UPDATE_MODE_RAMP_ZERO_CROSSING mode
Return value: see the SDK header
bflb_audac_int_unmask(mute_ramp_en, mute_up_ramp_rate, mute_down_ramp_rate, volume_update_mode, volume_ramp_rate, volume_zero_cross_timeout)
AUDAC volume configuration structure
Parameters:
mute_ramp_en:AUDAC mute mode en, use true or falsemute_up_ramp_rate:AUDAC mute up ramp rate, valid when mute_ramp_en is true, use @ref AUDAC_RAMP_RATEmute_down_ramp_rate:AUDAC mute down ramp rate, valid when mute_ramp_en is true, use @ref AUDAC_RAMP_RATEvolume_update_mode:AUDAC volume update mode, use @ref AUDAC_VOLUME_UPDATE_MODEvolume_ramp_rate:AUDAC volume ramp rate, valid when volume_update_mode is not AUDAC_VOLUME_UPDATE_MODE_FORCE, use @ref AUDAC_RAMP_RATEvolume_zero_cross_timeout:AUDAC volume update zero cross timeout period, valid only in AUDAC_VOLUME_UPDATE_MODE_RAMP_ZERO_CROSSING mode
Return value: see the SDK header
bflb_audac_get_intstatus(mute_ramp_en, mute_up_ramp_rate, mute_down_ramp_rate, volume_update_mode, volume_ramp_rate, volume_zero_cross_timeout)
AUDAC volume configuration structure
Parameters:
mute_ramp_en:AUDAC mute mode en, use true or falsemute_up_ramp_rate:AUDAC mute up ramp rate, valid when mute_ramp_en is true, use @ref AUDAC_RAMP_RATEmute_down_ramp_rate:AUDAC mute down ramp rate, valid when mute_ramp_en is true, use @ref AUDAC_RAMP_RATEvolume_update_mode:AUDAC volume update mode, use @ref AUDAC_VOLUME_UPDATE_MODEvolume_ramp_rate:AUDAC volume ramp rate, valid when volume_update_mode is not AUDAC_VOLUME_UPDATE_MODE_FORCE, use @ref AUDAC_RAMP_RATEvolume_zero_cross_timeout:AUDAC volume update zero cross timeout period, valid only in AUDAC_VOLUME_UPDATE_MODE_RAMP_ZERO_CROSSING mode
Return value: see the SDK header
bflb_audac_int_clear(mute_ramp_en, mute_up_ramp_rate, mute_down_ramp_rate, volume_update_mode, volume_ramp_rate, volume_zero_cross_timeout)
AUDAC volume configuration structure
Parameters:
mute_ramp_en:AUDAC mute mode en, use true or falsemute_up_ramp_rate:AUDAC mute up ramp rate, valid when mute_ramp_en is true, use @ref AUDAC_RAMP_RATEmute_down_ramp_rate:AUDAC mute down ramp rate, valid when mute_ramp_en is true, use @ref AUDAC_RAMP_RATEvolume_update_mode:AUDAC volume update mode, use @ref AUDAC_VOLUME_UPDATE_MODEvolume_ramp_rate:AUDAC volume ramp rate, valid when volume_update_mode is not AUDAC_VOLUME_UPDATE_MODE_FORCE, use @ref AUDAC_RAMP_RATEvolume_zero_cross_timeout:AUDAC volume update zero cross timeout period, valid only in AUDAC_VOLUME_UPDATE_MODE_RAMP_ZERO_CROSSING mode
Return value: see the SDK header
bflb_audac_feature_control(mute_ramp_en, mute_up_ramp_rate, mute_down_ramp_rate, volume_update_mode, volume_ramp_rate, volume_zero_cross_timeout)
AUDAC volume configuration structure
Parameters:
mute_ramp_en:AUDAC mute mode en, use true or falsemute_up_ramp_rate:AUDAC mute up ramp rate, valid when mute_ramp_en is true, use @ref AUDAC_RAMP_RATEmute_down_ramp_rate:AUDAC mute down ramp rate, valid when mute_ramp_en is true, use @ref AUDAC_RAMP_RATEvolume_update_mode:AUDAC volume update mode, use @ref AUDAC_VOLUME_UPDATE_MODEvolume_ramp_rate:AUDAC volume ramp rate, valid when volume_update_mode is not AUDAC_VOLUME_UPDATE_MODE_FORCE, use @ref AUDAC_RAMP_RATEvolume_zero_cross_timeout:AUDAC volume update zero cross timeout period, valid only in AUDAC_VOLUME_UPDATE_MODE_RAMP_ZERO_CROSSING mode
Return value: see the SDK header
Camera CAM
bflb_cam_init(dev, config)
Initialize cam.
Parameters:
dev:device handleconfig:pointer to cam configure structure
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_cam_start(dev)
Enable cam.
Parameters:
dev:device handle
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_cam_stop(dev)
Disable cam.
Parameters:
dev:device handle
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_cam_int_mask(dev, int_type, mask)
Mask or unmask cam interrupt.
Parameters:
dev:device handleint_type:cam interrupt mask type, use @ref CAM_INTMASKmask:mask or unmask
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_cam_int_clear(dev, int_type)
Clear cam interrupt.
Parameters:
dev:device handleint_type:int_type cam interrupt clear type, use @ref CAM_INTCLR
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_cam_crop_vsync(dev, start_line, end_line)
Crop vsync.
Parameters:
dev:device handlestart_line:start line of windowend_line:end line of window, not include
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_cam_crop_hsync(dev, start_pixel, end_pixel)
Crop hsync.
Parameters:
dev:device handlestart_pixel:start pixel of each lineend_pixel:end pixel of each line, not include
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_cam_pop_one_frame(dev)
Pop one frame.
Parameters:
dev:device handle
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_cam_get_frame_count(dev)
Get frame count.
Parameters:
dev:device handle
📎 Device name lookup: Supported Device Names (BL616)
Return value: Frame count
bflb_cam_get_frame_info(dev, pic)
Get frame information.
Parameters:
dev:device handlepic:pointer to frame start address
📎 Device name lookup: Supported Device Names (BL616)
Return value: Size of frame
bflb_cam_get_intstatus(dev)
Get interrupt status.
Parameters:
dev:device handle
📎 Device name lookup: Supported Device Names (BL616)
Return value: Interrupt status
bflb_cam_feature_control(dev, cmd, arg)
Control cam feature.
Parameters:
dev:device handlecmd:feature commandarg:user data
📎 Device name lookup: Supported Device Names (BL616)
Return value: A negated errno value on failure
MJPEG Encoder
bflb_mjpeg_init(dev, config)
Initialize mjpeg.
Parameters:
dev:device handleconfig:pointer to save mjpeg config
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_mjpeg_start(dev)
Start mjpeg compression with camera.
Parameters:
dev:device handle
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_mjpeg_stop(dev)
Stop mjpeg compression with camera.
Parameters:
dev:device handle
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_mjpeg_sw_run(dev, frame_count)
Start mjpeg compression without camera.
Parameters:
dev:device handleframe_count:frame count to compress
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_mjpeg_kick_run(dev, kick_count)
Start mjpeg kick mode compression without camera.
Parameters:
dev:device handlekick_count:kick block horizontal count to compress
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_mjpeg_kick_stop(dev)
Stop mjpeg kick mode compression without camera.
Parameters:
dev:device handle
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_mjpeg_kick(dev, kick_count)
kick one times compression without camera.
Parameters:
dev:device handlekick_count:kick block horizontal count to compress
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_mjpeg_tcint_mask(dev, mask)
Enable or disable mjpeg one frame compression completion interrupt.
Parameters:
dev:device handlemask:true means disable, false means enable
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_mjpeg_kickint_mask(dev, mask)
Enable or disable mjpeg kick done interrupt.
Parameters:
dev:device handlemask:true means disable, false means enable
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_mjpeg_swapint_mask(dev, mask)
Enable or disable mjpeg swap interrupt.
Parameters:
dev:device handlemask:true means disable, false means enable
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_mjpeg_errint_mask(dev, mask)
Enable or disable mjpeg error interrupt.
Parameters:
dev:device handlemask:true means disable, false means enable
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_mjpeg_get_intstatus(dev)
Get mjpeg interrupt status.
Parameters:
dev:device handle
📎 Device name lookup: Supported Device Names (BL616)
Return value: interrupt status
bflb_mjpeg_int_clear(dev, int_clear)
Clear mjpeg interrupt status.
Parameters:
dev:device handleint_clear:clear value
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_mjpeg_get_frame_count(dev)
Get number of frame count that has compressed.
Parameters:
dev:device handle
📎 Device name lookup: Supported Device Names (BL616)
Return value: compressed frame count
bflb_mjpeg_pop_one_frame(dev)
Drop one frame that has compressed.
Parameters:
dev:device handle
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_mjpeg_pop_swap_block(dev)
Drop swap current block.
Parameters:
dev:device handle
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_mjpeg_get_swap_bit_count(dev)
Get bit count remained in swap mode.
Parameters:
dev:device handle
📎 Device name lookup: Supported Device Names (BL616)
Return value: remained bit count
bflb_mjpeg_get_frame_info(dev, pic)
Get one frame information.
Parameters:
dev:device handlepic:pointer to save frame address.
📎 Device name lookup: Supported Device Names (BL616)
Return value: frame length
bflb_mjpeg_get_swap_block_info(dev, idx)
Get swap block information.
Parameters:
dev:device handleidx:index of current swap block.
📎 Device name lookup: Supported Device Names (BL616)
Return value: swap block is end or not
bflb_mjpeg_swap_is_block_full(dev, idx)
Check is block full in swap mode.
Parameters:
dev:device handleidx:index of the block to be checked.
📎 Device name lookup: Supported Device Names (BL616)
Return value: block is full or not
bflb_mjpeg_calculate_quantize_table(quality, input_table, output_table)
Calculate jpeg quantize table.
Parameters:
quality:image qualityinput_table:pointer to save input tableoutput_table:pointer to save output table
Return value: None
bflb_mjpeg_fill_quantize_table(dev, input_yy, input_uv)
Fill quantize table into mjpeg register.
Parameters:
dev:device handleinput_yy:yy quantize tableinput_uv:uv quantize table
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_mjpeg_fill_jpeg_header_tail(dev, header, header_len)
Fill jpeg header into mjpeg register and enable hardware auto adding jpeg tail.
Parameters:
dev:device handleheader:pointer to jpeg headerheader_len:jpeg header length
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_mjpeg_set_yuv420sp_cam_input(dev, yy, uv)
Set mjpeg input when uses camera with yuv402sp.
Parameters:
dev:device handleyy:camera id for yyuv:camera id for uv
📎 Device name lookup: Supported Device Names (BL616)
Return value: None
bflb_mjpeg_feature_control(dev, cmd, arg)
Control mjpeg feature.
Parameters:
dev:device handlecmd:feature commandarg:user data
📎 Device name lookup: Supported Device Names (BL616)
Return value: A negated errno value on failure.
bflb_mjpeg_update_input_output_buff(dev, input_buf0, input_buf1, output_buff, output_buff_size)
Control mjpeg feature.
Parameters:
dev:device handleinput_buf0:input buffer 0input_buf1:input buffer 1output_buff:output bufferoutput_buff_size:size of output buffer
📎 Device name lookup: Supported Device Names (BL616)
Return value: A negated errno value on failure.
Have questions?
For any other questions, visit the unified Q&A and discussion board: Ai-Thinker Discussions

