?? main.c
字號:
////////////////////////////////////////////////////////////////////////////////
//工程:Voice.scs 語音電壓表
//作者:李銀超
//建立:2006 9月1日
//使用方法:I0A0接被測電源正極 被測電源負極和61板GND 相連
//測量范圍:0~3V
/////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
//函數名:void PlayRepond(int Speech_Table_Id)
//參數:要播放的語音在_RES_SPeech里面的偏移
//////////////////////////////////////////////////////////////////////////////
#include "SPCE061V004.h"
void PlayRespond(int Speech_Table_Id)
{
SACM_A2000_Initial(1);
SACM_A2000_Play(Speech_Table_Id,3,3);
while(SACM_A2000_Status()&0x01)
{
SACM_A2000_ServiceLoop();
}
}
void PlayResult(float Result)
{
unsigned int temp;
temp=Result;
PlayRespond(temp);
PlayRespond(11);
temp=Result*10;
PlayRespond(temp%10);
temp=Result*100;
PlayRespond(temp%10);
temp=Result*1000;
PlayRespond(temp%10);
temp=Result*10000;
PlayRespond(temp%10);
}
unsigned int Get_ADC_Var(unsigned int ADC_Channel)
{
unsigned int uiData;
*P_ADC_MUX_Ctrl=ADC_Channel; //選擇通道-------IOA0
*P_ADC_Ctrl= C_ADCE; //ADC 使能
uiData=*P_ADC_LINEIN_Data; //ADC 開始
while(!(*P_ADC_MUX_Ctrl&0x8000)); //等待,直到結束
uiData=*P_ADC_LINEIN_Data;
return(uiData&0xffc0); //返回值
}
int main()
{
unsigned long int uliADC_Var=0;
int times;
float Voltage=0.0;
for(times=0;times<16;times+=1)
{
*P_Watchdog_Clear=C_WDTCLR;
uliADC_Var+=Get_ADC_Var(C_ADC_CH1);
}
uliADC_Var>>=4;
Voltage=(float)uliADC_Var/0xffc0*3.33;
PlayResult(Voltage);
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -