⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sing.h

📁 使用ISP1362芯片的USB_OTG参考设计源代码比较新的版本
💻 H
字号:
/*
**  WASABI-Hot! version 1.0    (Sing unit)
**
**
**      -- copyright (c) 2001-2004 by Philips Japan, Ltd. -- All rights reserved --
**
**
**      ** This code has been made to check/learn                          ** 
**      **                             the ISP1362/ISP1363 functionalities **
**      ** Release 06-Aug-2004                                             **
**
**      OKANO, Akifumi
**      
**		Computing Segment, Semisonductors Div, Philips Japan Ltd.
**      akifumi.okano@philips.com
**      +81-3-3740-4668 
**
*/


#ifndef _SING_H
#define _SING_H


/****************************************************************************/
/*	includes																*/
/****************************************************************************/

#include		"_hc_core/isr.h"


/****************************************************************************/
/*	constants																*/
/****************************************************************************/

#define		AUDIO_FILENAME					"default.wav"				

#define		MAX_NUM_OF_AUDIO_FILES			10
#define		FILE_NAME_LENGTH				256


#define		MEMORY_FILLING_SIZE_FROM_FILE	882
#ifdef	SMALLER_ISO_BUFFER
#define		MEMORY_FILLING_SIZE_TO_1362		462
#else	//SMALLER_ISO_BUFFER
#define		MEMORY_FILLING_SIZE_TO_1362		922
#endif	//SMALLER_ISO_BUFFER


#define		NUM_OF_BUFFER_UNITS				1	//  <-- for adjusting whole buffer size			//	1764 bytes * n

#define		SOURCE_IS_NON_FILE				0
#define		SOURCE_IS_FILE					1
#define		SOURCE_IS_REMOTE_FILE			2

#define		GET_CURRENT_VOLUME_LEVEL		0x7F


#define		AUDIO_PLAY_MANUAL_SELECTION		0xFF

#define		VOLUME_LIMIT					30
#define		dB_STEP							-2

#define		AUDIO_CODEC						0x1100	//Modification by hara
#define		AUDIO_DAC						0x0100	//Modification by hara


#define		bytes_to_sec( x )				((x) / 176400L)


/****************************************************************************/
/*	types																	*/
/****************************************************************************/

typedef struct  wav_head		{   /*  See http://www.kk.iij4u.or.jp/~kondo/wave (Japanese page)  */

                                    char   			riff_h[ 4 ];
                                    unsigned long	file_size;
                                    char			wave_h[ 4 ];
                                    char			fmt_h[ 4 ];
                                    unsigned long	fmt_size;
                                    unsigned short	fmt_id;
                                    unsigned short	num_of_channels;
                                    unsigned long	sampling_rate;
                                    unsigned long	data_speed;
                                    unsigned short	block_size;
                                    unsigned short	bit_per_sample;
                                    char   			data_h[ 4 ];
                                    unsigned long	data_sample_size_in_bytes;
                                }
                                wave_header;


typedef struct  _sing_file_info	{   /*  See http://www.kk.iij4u.or.jp/~kondo/wave (Japanese page)  */

									char	file_path_and_name[ FILE_NAME_LENGTH ];
									char	file_comment[ FILE_NAME_LENGTH ];
                                }
                                sing_file_info;


/****************************************************************************/
/*	global vars																*/
/****************************************************************************/

extern sing_file_info	gp_sing_file_strings[ MAX_NUM_OF_AUDIO_FILES ];
extern char				gp_sing_list_file_str[ FILE_NAME_LENGTH ];


/****************************************************************************/
/*	function prototypes														*/
/****************************************************************************/

unsigned short		audio_initialize( device_instance *dvi_ptr, char *filename, unsigned short (*buffer_fill_method)( short *p ), void (*stop_process)( void ) );
unsigned char		is_audio_beep_play( void );
unsigned char		is_audio_active( void );
unsigned char		is_audio_in_play( void );
unsigned char		is_audio_exist( void );
void 				audio_start( void );
void 				audio_stop( void );
unsigned char		audio_main( unsigned char select );
void				sing_buffer_set_quit_timing( void );

void				audio_sequential_play( void );

unsigned short		audio_init_commands( device_instance *dvi_ptr );
unsigned short		audio_dispose_process( device_instance *dvi_ptr );

void				audio_volume_down( void );
void				audio_volume_up( void );
char				audio_volume_value_set( char value );
void				audio_volume_set_delta( char delta );
unsigned char		audio_volume_mute_toggle( void );

void				audio_peak_indicator( void );

#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -