Graphics framework for GR-PEACH. When you use this program, we judge you have agreed to the following contents. https://developer.mbed.org/teams/Renesas/wiki/About-LICENSE
Dependents: ImageZoomInout_Sample ImageRotaion_Sample ImageScroll_Sample GR-PEACH_LCD_4_3inch_Save_to_USB ... more
License
When you use this library, we judge you have agreed to the following contents.
https://developer.mbed.org/teams/Renesas/wiki/About-LICENSE
Note
If you import the GraphicsFramework library, please import GR-PEACH_video library and R_BSP library together.
JPEG Converter
The JPEG Converter driver implements encode and decode functionality which uses the JCU of the RZ/A Series.
Hello World!
Import programJCU_HelloWorld
Hello World for JCU(JPEG Codec Unit). JCU is JPEG codec unit of RZ/A1. When you use this program, we judge you have agreed to the following contents. https://developer.mbed.org/teams/Renesas/wiki/About-LICENSE
API
Import library
Data Structures |
|
struct | bitmap_buff_info_t |
Bitmap data setting struct.
More...
|
|
struct | encode_options_t |
Encode option setting.
More...
|
|
Public Types |
|
enum |
jpeg_conv_error_t
{
JPEG_CONV_OK = 0, JPEG_CONV_JCU_ERR = -1, JPEG_CONV_FORMA_ERR = -2, JPEG_CONV_PARAM_ERR = -3, JPEG_CONV_BUSY = -4, JPEG_CONV_PARAM_RANGE_ERR = -7 } |
Error codes. More... |
|
enum |
wr_rd_swa_t
{
WR_RD_WRSWA_NON = 0, WR_RD_WRSWA_8BIT = 1, WR_RD_WRSWA_16BIT = 2, WR_RD_WRSWA_16_8BIT = 3, WR_RD_WRSWA_32BIT = 4, WR_RD_WRSWA_32_8BIT = 5, WR_RD_WRSWA_32_16BIT = 6, WR_RD_WRSWA_32_16_8BIT = 7 } |
Write/Read image pixcel frame buffer swap setting. More... |
|
enum | wr_rd_format_t { WR_RD_YCbCr422 = 0x00, WR_RD_ARGB8888 = 0x01, WR_RD_RGB565 = 0x02 } |
Write/Read image pixcel format selects. More... |
|
enum | sub_sampling_t { SUB_SAMPLING_1_1 = 0x00, SUB_SAMPLING_1_2 = 0x01, SUB_SAMPLING_1_4 = 0x02, SUB_SAMPLING_1_8 = 0x03 } |
Thinning output image selects. More... |
|
enum | cbcr_offset_t { CBCR_OFFSET_0 = 0x00, CBCR_OFFSET_128 = 0x01 } |
Cb/Cr range selects for decode. More... |
|
Public Member Functions |
|
JPEG_Converter () | |
Constructor method of JPEG converter(encode/decode)
|
|
virtual | ~JPEG_Converter () |
Destructor method of JPEG converter(encode/decode)
|
|
JPEG_Converter::jpeg_conv_error_t | decode (void *pJpegBuff, bitmap_buff_info_t *psOutputBuff) |
Decode JPEG to rinear data.
|
|
JPEG_Converter::jpeg_conv_error_t | decode (void *pJpegBuff, bitmap_buff_info_t *psOutputBuff, decode_options_t *pOptions) |
JPEG data decode to bitmap.
|
|
JPEG_Converter::jpeg_conv_error_t | encode ( bitmap_buff_info_t *psInputBuff, void *pJpegBuff, size_t *pEncodeSize) |
Encode rinear data to JPEG.
|
|
JPEG_Converter::jpeg_conv_error_t | encode ( bitmap_buff_info_t *psInputBuff, void *pJpegBuff, size_t *pEncodeSize, encode_options_t *pOptions) |
Bitmap data encode to JPEG.
|
|
JPEG_Converter::jpeg_conv_error_t | SetQuality (const uint8_t qual) |
Set encode quality.
|
Correspondence file
A correspondence file of JPEG Converter is as the following table.
JPEG | Correspondence |
Width | >0(greater than 0) |
Height | >0(greater than 0) |
Color format | YCbCr444, YCbCr422, YCbCr420, YCbCr411 |
Bitmap | Correspondence |
Width | >0(greater than 0) |
Height | >0(greater than 0) |
Color format | YCbCr422 |
Notice
You run JPEG converter once destruction each time.
You set whether these JPEG files aren't input, or it check error setting decode(set in "flag" = true). The JPEG file which becomes correspondence outside will be the following condition.
- File besides the above-mentioned correspondence file.
- As information in the JPEG file, WIDTH or HEIGHT is larger than output buffer setting.
Buffer area is used encode/decode, set 8 bytes align and non-cash memory area. The output buffer when decoding, is made beyond the size decided in the size of the JPEG file, the format, setting of thinning out. You make output buffer for decode/encode to enough big size in order to stock this result. JPEG Converter, if you do not particularly perform specified, does not check size against the output data at the time of encoding and decoding. You set the output buffer so that there is no effect of corruption by the output data.
Color format
Color format in case to be converted from Bitmap to JPEG is either ARGB8888 or RGB555, YCbCr422.
Color format of the If you want to convert from JPEG file to Bitmap file is YCbCr422.
You correct "alpha(member of decode_options_t)" of setting and "output_cb_cr_offset(member of decode_options_t)" according to color format when decoding.
- example
decode to ARGB8888(WR_RD_ARGB8888 set in format member of bitmap_buff_info_t)
alpha = 0x01-0xFF
output_cb_cr_offset = CBCR_OFFSET_0
decode to YCbCr422(WR_RD_YCbCr422 set in format member of bitmap_buff_info_t)
alpha = 0
output_cb_cr_offset = CBCR_OFFSET_0 or CBCR_OFFSET_128
decode to RGB565(WR_RD_RGB565 set in format member of bitmap_buff_info_t)
alpha = 0
output_cb_cr_offset = CBCR_OFFSET_0
Decode/encode settings are optional
If omitted encode/decode settings, it will work with the following settings.
[Decode option setting (member of decode_options_t)]
- Vertical sub sampling is thinning output image to 1/1.
- Horizontal sub sampling is thinning output image to 1/1.
- Output data of Cb/Cr range is -128 to 127.
- Output data of swap in 8-bit units: 2-1-4-3-6-5-8-7.
- Alpha value of 0.
- JPEG format correspondence outside error check.
- It decode in a synchronous function.
[Encode option setting (member of encode_options_t)]
- DRI value is 0.
- Encoding JPEG file start width offset is 0.
- Encoding JPEG file start height offset is 0.
- Input data of Cb/Cr range of input data is -128 to 127.
- Input data swap in 8-bit units: 2-1-4-3-6-5-8-7.
- It don't check encode size.
- Quantization Y use default table(Quality75).
- Quantization C use default table(Quality75).
- Huffman Y DC use default table.
- Huffman C DC use default table.
- Huffman Y AC use default table.
- Huffman C AC use default table.
- It encode in a synchronous function.
Synchronous/asynchronous switching
Decoding and encoding setting to operate asynchronously by setting a callback function(decode_options_t and encode_options_t).
Quality
Quality changes are possible.
If you want to change the Quality, please specify the table made of Quality you want to change the address of the setting.
If you do not want to change the Quality, it will operate at Quality75.
RGA
The RGA library implements fast drawing functionality which uses the RGA of the RZ/A Series.
Supporting compiler is ARMCC, GCC ARM and IAR.
Hello World!
Import programRGA_HelloWorld
Hello World for RGA(Renesas Graphics Architecture). RGA is the Graphics Library of RZ/A1. When you use this program, we judge you have agreed to the following contents. https://developer.mbed.org/teams/Renesas/wiki/About-LICENSE
jcu/inc/r_jcu_local.h
- Committer:
- dkato
- Date:
- 2017-04-24
- Revision:
- 13:1ee2176ef13f
- Parent:
- 0:37e1e6a45ced
File content as of revision 13:1ee2176ef13f:
/******************************************************************************* * DISCLAIMER * This software is supplied by Renesas Electronics Corporation and is only * intended for use with Renesas products. No other uses are authorized. This * software is owned by Renesas Electronics Corporation and is protected under * all applicable laws, including copyright laws. * THIS SOFTWARE IS PROVIDED "AS IS" AND RENESAS MAKES NO WARRANTIES REGARDING * THIS SOFTWARE, WHETHER EXPRESS, IMPLIED OR STATUTORY, INCLUDING BUT NOT * LIMITED TO WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE * AND NON-INFRINGEMENT. ALL SUCH WARRANTIES ARE EXPRESSLY DISCLAIMED. * TO THE MAXIMUM EXTENT PERMITTED NOT PROHIBITED BY LAW, NEITHER RENESAS * ELECTRONICS CORPORATION NOR ANY OF ITS AFFILIATED COMPANIES SHALL BE LIABLE * FOR ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES FOR * ANY REASON RELATED TO THIS SOFTWARE, EVEN IF RENESAS OR ITS AFFILIATES HAVE * BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. * Renesas reserves the right, without notice, to make changes to this software * and to discontinue the availability of this software. By using this software, * you agree to the additional terms and conditions found by accessing the * following link: * http://www.renesas.com/disclaimer * Copyright (C) 2012 - 2014 Renesas Electronics Corporation. All rights reserved. *******************************************************************************/ /****************************************************************************** * $FileName: jcu_local.h $ * $Module: JCU $ $PublicVersion: 1.00 $ (=JCU_VERSION) * $Rev: 35 $ * $Date:: 2014-02-26 13:18:53 +0900#$ * Description : JCU driver local parameter ******************************************************************************/ #ifndef JCU_LOCAL_H #define JCU_LOCAL_H /****************************************************************************** Includes <System Includes> , "Project Includes" ******************************************************************************/ #include "r_jcu_api.h" #include "r_jcu_user.h" #ifdef __cplusplus extern "C" { #endif /* __cplusplus */ /****************************************************************************** Typedef definitions ******************************************************************************/ typedef struct st_jcu_i_lock_t jcu_i_lock_t; /*[jcu_i_lock_t]*/ /*! [jcu_internal_information_t] Internal Information for this driver */ typedef struct { jcu_codec_status_t Codec; bool_t IsCountMode; jcu_int_detail_errors_t ErrorFilter; /* 1=Enable */ jcu_async_status_t AsyncStatus; r_ospl_caller_t InterruptCallbackCaller; jcu_i_lock_t *I_Lock; const r_ospl_i_lock_vtable_t *I_LockVTable; bool_t Is_I_LockMaster; r_ospl_async_t *AsyncForFinalize; } jcu_internal_information_t; /*[jcu_i_lock_t]*/ struct st_jcu_i_lock_t { bool_t IsLock; bool_t IsRequestedFinalize; }; /****************************************************************************** Macro definitions ******************************************************************************/ /****************************************************************************** Variable Externs ******************************************************************************/ /****************************************************************************** Functions Prototypes ******************************************************************************/ jcu_internal_information_t *R_JCU_GetInternalInformation(void); jcu_i_lock_t *R_JCU_GetILockObject(void); void R_JCU_I_LOCK_Finalize(void); jcu_errorcode_t R_JCU_TerminateStep2(void); #ifdef JCU_PARAMETER_CHECK jcu_errorcode_t JCU_ParaCheckStart(void); jcu_errorcode_t JCU_ParaCheckSetCountMode(const jcu_count_mode_param_t *const buffer); jcu_errorcode_t JCU_ParaCheckSelectCodec(const jcu_codec_t codec); jcu_errorcode_t JCU_ParaCheckSetCallbackFunc(const uintptr_t type); jcu_errorcode_t JCU_ParaCheckSetDecodeParam(const jcu_decode_param_t *const decode, const jcu_buffer_param_t *const buffer); jcu_errorcode_t JCU_ParaCheckGetImageInfo(const jcu_image_info_t *const buffer); jcu_errorcode_t JCU_ParaCheckGetErrorInfo(const jcu_detail_error_t *const errorCode); jcu_errorcode_t JCU_ParaCheckSetQuantizationTbl(const jcu_table_no_t tableNo); jcu_errorcode_t JCU_ParaCheckSetHuffmanTable(const jcu_table_no_t tableNo, const jcu_huff_t type); jcu_errorcode_t JCU_ParaCheckEncodeParam(const jcu_encode_param_t *const encode, const jcu_buffer_param_t *const buffer); jcu_errorcode_t JCU_CheckInterruptSource(const uint32_t interruptKind); #endif /* JCU_PARAMETER_CHECK */ jcu_errorcode_t JCU_SetRegisterForInitialize(void); void JCU_SetRegisterForCodec(const jcu_codec_t codec); void JCU_SetRegisterForStart(const jcu_int_detail_error_t error_filter); void JCU_SetRegisterForReset(void); void JCU_SetRegisterForSetCountMode(const jcu_count_mode_param_t *const buffer); void JCU_SetRegisterForContinue(const jcu_continue_type_t type); void JCU_SetRegisterForSetDecodePrm(const jcu_decode_param_t *const decode, const jcu_buffer_param_t *const buffer); void JCU_SetRegisterForSetQtTable(const jcu_table_no_t tableNo, const uint8_t *const table); void JCU_SetRegisterForSetHuffTbl(const jcu_table_no_t tableNo, const jcu_huff_t type, const uint8_t *const table); void JCU_SetRegisterForSetEncodePrm(const jcu_encode_param_t *const encode, const jcu_buffer_param_t *const buffer); void JCU_SetRegisterForSetPause(const bool_t is_pause, const jcu_int_detail_errors_t filter); void JCU_GetRegisterForGetImageInfo(jcu_image_info_t *const buffer); void JCU_GetEncodedSize(size_t *const out_Size); void JCU_ClearInterruptFlag(void); /* ->SEC M1.2.2(QAC-1259) */ /* If "Value" is signed, this is depend on CPU bit width. */ /* But driver code is no problem. */ /* This expects 32bit CPU. */ /* ->SEC R3.6.2(QAC-3345) */ /* Volatile access at left of "=" and right of "=". */ /* But this is not depend on compiler spcifications. */ /* ->MISRA 19.12 ->MISRA 19.13 ->SEC M5.1.2 (1) */ #define R_SET_REG_BIT_FIELD( Register, BitName, Value ) \ ( (Register) = (BitName##_TYPE)( ( (uint32_t)(Register) & (uint32_t)(~(BitName##_MASK) ) ) |\ ( (uint32_t)( (uint32_t)(Value) << (BitName##_SHIFT) ) & (uint32_t)(BitName##_MASK) ) ) ) #define R_GET_REG_BIT_FIELD( Register, BitName ) \ ( (BitName##_TYPE)( ( ((uint32_t)(Register)) & (uint32_t)(BitName##_MASK) ) >> (BitName##_SHIFT) ) ) /* <-SEC M1.2.3(QAC-1259) */ /* <-SEC R3.6.2(QAC-3345) */ /* <-MISRA 19.12 <-MISRA 19.13 <-SEC M5.1.2 (1) */ /* Value of register */ /* 1bit(Flag) */ #define REG_F_CLR (0u) #define REG_F_SET (1u) /* Bit field name (Register name) */ /* SRST(CPG.SWRSTCR2) */ #define SRST_MASK (0x00000002u) #define SRST_SHIFT (1u) #define SRST_TYPE uint8_t /*DSP(JCU.JCMOD) */ #define DSP_MASK (0x00000008u) #define DSP_SHIFT (3u) #define DSP_TYPE uint8_t /*REDU(JCU.JCMOD) */ #define REDU_MASK (0x00000007u) #define REDU_SHIFT (0u) #define REDU_TYPE uint8_t /*BRST(JCU.JCCMD) */ #define BRST_MASK (0x00000080u) #define BRST_SHIFT (7u) #define BRST_TYPE uint8_t /*JEND(JCU.JCCMD) */ #define JEND_MASK (0x00000004u) #define JEND_SHIFT (2u) #define JEND_TYPE uint8_t /*JRST(JCU.JCCMD) */ #define JRST_MASK (0x00000002u) #define JRST_SHIFT (1u) #define JRST_TYPE uint8_t /*JSRT(JCU.JCCMD) */ #define JSRT_MASK (0x00000001u) #define JSRT_SHIFT (0u) #define JSRT_TYPE uint8_t /*QT3(JCU.JCQTN) */ #define QT3_MASK (0x00000030u) #define QT3_SHIFT (4u) #define QT3_TYPE uint8_t /*QT2(JCU.JCQTN) */ #define QT2_MASK (0x0000000Cu) #define QT2_SHIFT (2u) #define QT2_TYPE uint8_t /*QT1(JCU.JCQTN) */ #define QT1_MASK (0x00000003u) #define QT1_SHIFT (0u) #define QT1_TYPE uint8_t /*HTA3(JCU.JCHTN) */ #define HTA3_MASK (0x00000020u) #define HTA3_SHIFT (5u) #define HTA3_TYPE uint8_t /*HTD3(JCU.JCHTN) */ #define HTD3_MASK (0x00000010u) #define HTD3_SHIFT (4u) #define HTD3_TYPE uint8_t /*HTA2(JCU.JCHTN) */ #define HTA2_MASK (0x00000008u) #define HTA2_SHIFT (3u) #define HTA2_TYPE uint8_t /*HTD2(JCU.JCHTN) */ #define HTD2_MASK (0x00000004u) #define HTD2_SHIFT (2u) #define HTD2_TYPE uint8_t /*HTA1(JCU.JCHTN) */ #define HTA1_MASK (0x00000002u) #define HTA1_SHIFT (1u) #define HTA1_TYPE uint8_t /*HTD1(JCU.JCHTN) */ #define HTD1_MASK (0x00000001u) #define HTD1_SHIFT (0u) #define HTD1_TYPE uint8_t /*INT7(JCU.JINTE0) Error of restart interval data. JINTE0.INT7 -> JINTS0.INS5 */ #define INT7_MASK (0x00000080u) #define INT7_SHIFT (7u) #define INT7_TYPE uint8_t /*INT6(JCU.JINTE0) Error of Segment total data. JINTE0.INT6 -> JINTS0.INS5 */ #define INT6_MASK (0x00000040u) #define INT6_SHIFT (6u) #define INT6_TYPE uint8_t /*INT5(JCU.JINTE0) Error of MCU block data. JINTE0.INT5 -> JINTS0.INS5 */ #define INT5_MASK (0x00000020u) #define INT5_SHIFT (5u) #define INT5_TYPE uint8_t /*INT3(JCU.JINTE0) */ #define INT3_MASK (0x00000008u) #define INT3_SHIFT (3u) #define INT3_TYPE uint8_t /*INS6(JCU.JINTS0) End Core Only */ #define INS6_MASK (0x00000040u) #define INS6_SHIFT (6u) #define INS6_TYPE uint8_t /*INS5(JCU.JINTS0) Decode Error */ #define INS5_MASK (0x00000020u) #define INS5_SHIFT (5u) #define INS5_TYPE uint8_t /*INS3(JCU.JINTS0) Get Image Information */ #define INS3_MASK (0x00000008u) #define INS3_SHIFT (3u) #define INS3_TYPE uint8_t /*ERR(JCU.JCDERR) */ #define ERR_MASK (0x0000000Fu) #define ERR_SHIFT (0u) #define ERR_TYPE uint8_t /*JOUTRINI(JCU.JIFECNT) */ #define JOUTRINI_MASK (0x00004000u) #define JOUTRINI_SHIFT (14u) #define JOUTRINI_TYPE uint32_t /*JOUTRCMD(JCU.JIFECNT) */ #define JOUTRCMD_MASK (0x00002000u) #define JOUTRCMD_SHIFT (13u) #define JOUTRCMD_TYPE uint32_t /*JOUTC(JCU.JIFECNT) */ #define JOUTC_MASK (0x00001000u) #define JOUTC_SHIFT (12u) #define JOUTC_TYPE uint32_t /*JOUTSWAP(JCU.JIFECNT) */ #define JOUTSWAP_MASK (0x00000700u) #define JOUTSWAP_SHIFT (8u) #define JOUTSWAP_TYPE uint32_t /*DINRINI(JCU.JIFECNT) */ #define DINRINI_MASK (0x00000040u) #define DINRINI_SHIFT (6u) #define DINRINI_TYPE uint32_t /*DINRCMD(JCU.JIFECNT) */ #define DINRCMD_MASK (0x00000020u) #define DINRCMD_SHIFT (5u) #define DINRCMD_TYPE uint32_t /*DINLC(JCU.JIFECNT) */ #define DINLC_MASK (0x00000010u) #define DINLC_SHIFT (4u) #define DINLC_TYPE uint32_t /*DINSWAP(JCU.JIFECNT) */ #define DINSWAP_MASK (0x00000007u) #define DINSWAP_SHIFT (0u) #define DINSWAP_TYPE uint32_t /*ESMW(JCU.JIFESOFST) */ #define ESMW_MASK (0x00007FFFu) #define ESMW_SHIFT (0u) #define ESMW_TYPE uint32_t /*LINES(JCU.JIFESLC, JCU.JIFDDLC) */ #define LINES_MASK (0x0000FFFFu) #define LINES_SHIFT (0u) #define LINES_TYPE uint32_t #define LINES_CLEAR (0u) /*JDATAS(JCU.JIFESLC, JCU.JIFDSDC, JCU.JIFEDDC) */ #define JDATAS_MASK (0x0000FFFFu) #define JDATAS_SHIFT (0u) #define JDATAS_TYPE uint32_t #define JDATAS_CLEAR (0u) /*VINTER(JCU.JIFDCNT) */ #define VINTER_MASK (0x3C000000u) #define VINTER_SHIFT (28u) #define VINTER_TYPE uint32_t /*HINTER(JCU.JIFDCNT) */ #define HINTER_MASK (0x0C000000u) #define HINTER_SHIFT (26u) #define HINTER_TYPE uint32_t /*OPF(JCU.JIFDCNT) */ #define OPF_MASK (0x03000000u) #define OPF_SHIFT (24u) #define OPF_TYPE uint32_t /*JINRINI(JCU.JIFDCNT) */ #define JINRINI_MASK (0x00004000u) #define JINRINI_SHIFT (14u) #define JINRINI_TYPE uint32_t /*JINRCMD(JCU.JIFDCNT) */ #define JINRCMD_MASK (0x00002000u) #define JINRCMD_SHIFT (13u) #define JINRCMD_TYPE uint32_t /*JINC(JCU.JIFDCNT) */ #define JINC_MASK (0x00001000u) #define JINC_SHIFT (12u) #define JINC_TYPE uint32_t /*JINSWAP(JCU.JIFDCNT) */ #define JINSWAP_MASK (0x00000700u) #define JINSWAP_SHIFT (8u) #define JINSWAP_TYPE uint32_t /*DOUTRINI(JCU.JIFDCNT) */ #define DOUTRINI_MASK (0x00000040u) #define DOUTRINI_SHIFT (6u) #define DOUTRINI_TYPE uint32_t /*DOUTRCMD(JCU.JIFDCNT) */ #define DOUTRCMD_MASK (0x00000020u) #define DOUTRCMD_SHIFT (5u) #define DOUTRCMD_TYPE uint32_t /*DOUTLC(JCU.JIFDCNT) */ #define DOUTLC_MASK (0x00000010u) #define DOUTLC_SHIFT (4u) #define DOUTLC_TYPE uint32_t /*DOUTSWAP(JCU.JIFDCNT) */ #define DOUTSWAP_MASK (0x00000007u) #define DOUTSWAP_SHIFT (0u) #define DOUTSWAP_TYPE uint32_t /*DDMW(JCU.JIFDDOFST) */ #define DDMW_MASK (0x00007FFFu) #define DDMW_SHIFT (0u) #define DDMW_TYPE uint32_t /*ALPHA(JCU.JIFDADT) */ #define ALPHA_MASK (0x000000FFu) #define ALPHA_SHIFT (0u) #define ALPHA_TYPE uint32_t /*CBTEN(JCU.JINTE1) */ #define CBTEN_MASK (0x00000040u) #define CBTEN_SHIFT (6u) #define CBTEN_TYPE uint32_t /*DINLEN(JCU.JINTE1) */ #define DINLEN_MASK (0x00000020u) #define DINLEN_SHIFT (5u) #define DINLEN_TYPE uint32_t /*JOUTEN(JCU.JINTE1) */ #define JOUTEN_MASK (0x00000010u) #define JOUTEN_SHIFT (4u) #define JOUTEN_TYPE uint32_t /*DBTEN(JCU.JINTE1) */ #define DBTEN_MASK (0x00000004u) #define DBTEN_SHIFT (2u) #define DBTEN_TYPE uint32_t /*JINEN(JCU.JINTE1) */ #define JINEN_MASK (0x00000002u) #define JINEN_SHIFT (1u) #define JINEN_TYPE uint32_t /*DOUTLEN(JCU.JINTE1) */ #define DOUTLEN_MASK (0x00000001u) #define DOUTLEN_SHIFT (0u) #define DOUTLEN_TYPE uint32_t /*CBTF(JCU.JINTS1) JINTE1.CBTEN -> JINTS1.CBTF */ #define CBTF_MASK (0x00000040u) #define CBTF_SHIFT (6u) #define CBTF_TYPE uint32_t /*DINLF(JCU.JINTS1) Input Data for Encoding */ #define DINLF_MASK (0x00000020u) #define DINLF_SHIFT (5u) #define DINLF_TYPE uint32_t /*JOUTF(JCU.JINTS1) Output Data for Encoding */ #define JOUTF_MASK (0x00000010u) #define JOUTF_SHIFT (4u) #define JOUTF_TYPE uint32_t /*DBTF(JCU.JINTS1) JINTE1.DBTEN -> JINTS1.DBTF */ #define DBTF_MASK (0x00000004u) #define DBTF_SHIFT (2u) #define DBTF_TYPE uint32_t /*JINF(JCU.JINTS1) Input Data for Decoding */ #define JINF_MASK (0x00000002u) #define JINF_SHIFT (1u) #define JINF_TYPE uint32_t /*DOUTLF(JCU.JINTS1) Output Data for Decoding */ #define DOUTLF_MASK (0x00000001u) #define DOUTLF_SHIFT (0u) #define DOUTLF_TYPE uint32_t /*DINYCHG(JCU.JIFESVSZ) */ #define DINYCHG_MASK (0x00008000u) #define DINYCHG_SHIFT (15u) #define DINYCHG_TYPE uint32_t /*DOUTYCHG(JCU.JIFESHSZ) */ #define DOUTYCHG_MASK (0x00008000u) #define DOUTYCHG_SHIFT (15u) #define DOUTYCHG_TYPE uint32_t /* Others */ #define JCU_JINTS1_ALL ( CBTF_MASK | DINLF_MASK | JOUTF_MASK | DBTF_MASK | JINF_MASK | DOUTLF_MASK ) #define SHIFT_16BITS (16u) /* 16bit-SHIFT */ #define SHIFT_8BITS (8u) /* 8bit-SHIFT */ #define JCU_SHIFT_JINTS1 (8) #ifdef __cplusplus } #endif /* __cplusplus */ #endif /* JCU_LOCAL_H */