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

📄 sacm_dvr1600_user.asm

📁 凌阳单片机的录音,方音程序,用c语言边的,可用性强.
💻 ASM
字号:
//========================================================================================
// Progarm: SACM user.asm for SACM_DVR1600
// By: Arthur Shieh
// Last modified date: 
//      2002/09/29: V1.0:First release for SACM DVR1600   
//
// Functions:
//  F_USER_DVR1600_GetData
//  
// I/O APIs:
//  _USER_DVR1600_SetStartAddr
//
// Note:1. In the demo, it shows a way to fetch ROM data to demonstrate 
//         the manual mode operation. It fetchs data from T_SACM_S200_SpeechTable
//         and feeds back to library for playback. 
//========================================================================================
//.include sacm.inc
.include spce061a.inc
.public F_USER_DVR1600_EndRecord
//.public _USER_DVR1600_SetStartAddr
//.public F_USER_DVR1600_SetStartAddr
.public F_USER_DVR1600_GetData
.public F_USER_DVR1600_WriteData
//.public F_USER_WriteWordBlock//*
//.public F_USER_ReadWordBlock//*

.external _FS_ReadingFile
.external _FS_WritingFile
.external _FS_EndEncode

.CODE
////////////////////////////////////////////////////////
// Function: F_SACM_DVR1600_EndRecord
// Description: call back from kernel when bit stream 
//              encoding is done 
//              
// Syntax  : F_SACM_DVR1600_EndRecord
// Destory: R1,R2
// Parameter : R1: File length(bytes) low
//             R2: File length(bytes) high
// Return    : N/A
////////////////////////////////////////////////////////
//.external F_SIOSendAWord;
F_USER_DVR1600_EndRecord: .proc//Get file length R1:Low,R2:High
	push r1,r4 to [sp]
	push r2 to [sp]
	push r1 to [sp]
	call _FS_EndEncode
	sp += 2
	pop r1,r4 from [sp]
	nop
	retf;
.endp


// Read from memory and write to buffer
F_USER_DVR1600_GetData:
F_USER_WriteWordBlock://Start Adr:R1; Length:R2
	push r1, r5 to [sp]
	push r2 to [sp]
	push r1 to [sp]
	call _FS_ReadingFile
	sp += 2
	pop r1, r5 from [sp]
	RETF;

// Read from buffer and write to momory	
F_USER_DVR1600_WriteData:
F_USER_ReadWordBlock://Start Adr:R1; Length:R2
	push r1, r5 to [sp]
	push r2 to [sp]
	push r1 to [sp]
	call _FS_WritingFile
	sp += 2
	pop r1, r5 from [sp]
	RETF;

⌨️ 快捷键说明

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