基于AVR单片机录音笔的设计与制作摘要:目前市场上有很多语音录放系统,如录放音玩具、录音笔等,大多采用了单片机控制一个语音芯片,再接一个FLASH存储器的结构。单片机可以控制录放时间,选取特定时间段的播放以及单多声道的录放,容易通过改变外接存储FLASH改变录放时间。我们做的是一个简单模型,只能录放。只需要录音和放音时的外部ROSC端振荡电阻不同就能改变声音的录入和播放速度,录入的时间越短音质越好,录入的时间越长音质越差,它采用模拟量直接存贮技术,因此保真度高,音质好。(AGC),放大器(AMP),滤波器等一系列功放,最后数据存储在ISD1820的存储器中。通过按键信号控制录放,最后通过蜂鸣器放音。:1设计思想首先,进行设备初始化。令PA口输出,PA0输出高电平作为ISD1810芯片的电源,其余口均作输入。利用定时器,每隔一定时间检测PC口的输入电平,消抖检测。录音程序:当PC0输入高电平时,PA1输出高电平驱动芯片录音。放音程序:当PC1输入高电平时,PA2输出高电平驱动芯片放音。其余PC0和PC1输入,,停止工作。录音时间约为10秒。程序//ICC-AVRapplicationbuilder:2008-6-919:05:57//Target:M16#include<>#include<>voidport_init(void){PORTA=0x01;DDRA=0xFF;PORTB=0x00;DDRB=0x00;PORTC=0x00;//m103outputonlyDDRC=0x00;PORTD=0x00;DDRD=0x00;}//TIMER0initialize-prescale:64//WGM:CTC//desiredvalue:10ms//actualvalue:Outofrangevoidtimer0_init(void){TCCR0=0x00;//T0=0x00/*INVALIDSETTING*/;//setcountOCR0=0x00/*INVALIDSETTING*/;//R0=0x0B;//starttimer}//oinitializeallperipheralsvoidinit_devices(void){//stoperrantinterruptsuntilsetupCLI();//disableallinterruptsport_init();timer0_init();MCUCR=0x00;GICR=0x00;TIMSK=0x02;//timerinterruptsourcesSEI();//re-enableinterrupts//allperipheralsarenowinitialized}unsignedcharkey_input;unsignedcharkey_press;#definekey_state_00#definekey_state_11#definekey_state_22voidread_key(){staticunsignedcharkey_state=0;unsignedcharkey_press,key_return=0;
基于AVR单片机录音笔的设计与制作 来自淘豆网m.daumloan.com转载请标明出处.