G11C7/16 G11B20/10
1.本发明以低功耗STC89C51单片机为控制核心,通过单片机、语音芯片ISD4004、液晶 显示LCD12864、键盘模块、温度传感器模块及实时时钟模块结合实现了录音笔硬件电路的 设计,ISD4004语音芯片使得大大简化了外围电路的设计,也很好保证了录音效果, LCD12864使得人机交互更简洁方便,同时,本发明也增加了时间、温度的显示及语音播报功 能。
2.根据权利要求1所述的一种基于单片机的录音笔,其特征在于,本发明具有单片机核 心控制模块。
3.根据权利要求1所述的一种基于单片机的录音笔,其特征在于,本发明具有ISD4004 及功放LM386模块。
4.根据权利要求1所述的一种基于单片机的录音笔,其特征在于,本发明具有LCD12864 显示模块。
5.根据权利要求1所述的一种基于单片机的录音笔,其特征在于,本发明具有具有键盘 控制模块。
6.根据权利要求1所述的一种基于单片机的录音笔,其特征在于,本发明具有(定时)录 音、放音功能。
7.根据权利要求1所述的一种基于单片机的录音笔,其特征在于,本发明具有语音、温 度显示及语音播报功能。
本发明涉及录音笔技术领域,具体涉及一种基于单片机的录音笔。
录音笔对于我们现如今的人们已经是再熟悉不过的产品了,它已经应用在了很多 领域。正是由于录音笔能够录音的特点,在你无法凭借记忆记住重要谈话,或者重要会议的 重要内容的时候,它便体现除了它的优势,清晰完整无误的记录下你要记录的东西,而你能 够拿出更多的时间来处理其他事情,当你有充足的时间时再来处理这些未处理的内容。除 此之外录音笔小巧易于携带,存储内容量大,基于这些优点,越来越多的得到人们的青睐! 通过对先进技术的兼收并蓄,并高标准、能够高起点自主开发一系列的高技术产品,因此研 究本课题具有非常重要的实用意义。
随着视听家电产品的不断丰富,已经有越来越多微小型产品走入人们的日常生 活,他们最突出的优点是体积小,而且重量轻,给人们带来了方便。作为一种简单的获取和 记录数字化文件的工具,录音笔风靡市场,成为学生记者、商务人士购置录音设备的首选, 也成为时间紧张在职人员的掌上新宠。这正是本次论文选题的主要依据和动机。
现在所说的录音笔指的数码录音笔,数字录音器的一种,为了便于操作和提升录 音质量造型并非以单纯的笔型为主,携带方便,同时拥有多种功能,如激光笔功能、FM 调 频、MP3 播放等。与传统录音机相比,数码录音笔是通过数字存储的方式来记录音频的。
本发明涉及录音笔技术领域,具体涉及一种基于单片机的录音笔。本发明以低功 耗STC89C51单片机为控制核心,通过单片机、语音芯片ISD4004、液晶显示LCD12864、键盘模 块、温度传感器模块及实时时钟模块结合实现了录音笔硬件电路的设计,ISD4004语音芯片 使得大大简化了外围电路的设计,也很好保证了录音效果,LCD12864使得人机交互更简洁 方便,同时,本发明也增加了时间、温度的显示及语音播报功能。
图1:单片机供电模块图。
图2 :ISD4004供电模块图。
图3:报警电路图。
图4:系统软件设计的总体流程图。
图5:录放程序流程图。
图6:12864程序流程图。
图7:DS1302程序流程图。
图8:DS18B20程序流程图。
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对 本发明进行进一步详细说明。应当理解,此处所描述的具体实施仅仅用以解释本发明,并不 用于限定本发明。
本发明涉及录音笔技术领域,具体涉及一种基于单片机的录音笔。本发明以低功 耗STC89C51单片机为控制核心,通过单片机、语音芯片ISD4004、液晶显示LCD12864、键盘模 块、温度传感器模块及实时时钟模块结合实现了录音笔硬件电路的设计,ISD4004语音芯片 使得大大简化了外围电路的设计,也很好保证了录音效果,LCD12864使得人机交互更简洁 方便,同时,本发明也增加了时间、温度的显示及语音播报功能。
系统的硬件设计:
进一步的,核心控制模块是整个录音笔的核心,实现对语音芯片ISD4004、温度 ds18b20、实时时钟ds1302、液晶显示模块发送或接受指令,使其完成相应的动作。本设计采 用了型号为STC89C58RD+单片机,它是一种简明易掌握,效率较高的指令系统,对存储空间 和时间的利用率较高。
进一步的,音频处理模块主要由语音芯片ISD4004,功放LM386等元件构成,其作用 是对声音的处理,通过单片机控制声音的录放。
进一步的,液晶显示模块是由LCD12864液晶显示器组成,由单片机控制使其显示 相应的界面。
进一步的,时钟模块主要是由时钟芯片DS1302以及相应的电路组成,本设计中,用 于时间采集作用。
进一步的,温度采集模块主要是由温度传感器DS18B20等组成。
进一步的,电路供电电路如图1、图2所示,电源模块用供电电源分别为+5V,3.3V,+ 5V用于单片机供电,+3.3V用于语音芯片ISD4004。为了让单片机处于稳定的工作状态,利用 LM7805稳压到5V。运用AMS1117-3.3V稳压芯片将ISD4004的输入电压调节为3.3V。
进一步的,电路图如图3所示,鸣器模块用于检测录音芯片内存是否溢出,溢出则 发出报警声。
系统软件设计与实现:
进一步的,基于单片机的录音笔设计需要在软件的支持下才能实现的,系统的软件设 计部分包括主程序及各子程序。主程序完成系统初始化和显示处理的功能。子程序包括录 音放音子程序,按键扫描字程序,温度检测子程序,时钟芯片字程序,液晶显示子程序等。
进一步的,主程序流程如图4所示,系统接通电源后,主程序初始化后进入开机界 面然后进入主循环,首先是按键检测,提示密码输入,正确则进入主菜单选择界面,否则重 复输入,有三次校正密码的机会,三次输入密码错误则蜂鸣器提示报警系统必须手动重启, 正确进入菜单后,进行所需的选择然后,通过12864显示出设计相关信息。
进一步的,本次子程序的设计包括录音放音设计,实时时钟,温度检测,12864的液 晶显示设计,温度时间的播报,按键扫描等常用程序设计。
进一步的,录放程序流程如图5所示,ISD4004通过单片机控制,当检测到按下录音 键,单片机通过SPI接口发送相应指令将输入的信号进行采样,经过芯片内部的一系列处 理,保存在芯片的储存器中。当检测到按下放音键时,发送放音指令使其处于放音状态。
相关部分程序如下:
void ISD_SPI_Send8( uchar addr_8 ); //spi 串行发送,8 位数据
void ISD_SPI_Send16( uint addr_16 ); //spi 串行发送,16位数据
uint ISD_SPI_Rowadd(void);//读取16位行地址
void ISD_Stop(void);//发送 stop 指令
void ISD_PowerUp(void); // 上电 0X20
void ISD_PowerDown(void); //掉电 0X10
void ISD_Play(void);//发送当前地址放音指令
void ISD_SetPlay(uint add); //发送指定地址放音指令
void ISD_Rec(void);//发送当前地址录音指令
void ISD_SetRec(uint add); //发送指定地址录音指令
void PLAY_now(uchar add_set); //按指定地址段开始播放
void REC_now(uchar add_set);// 按指定地址段开始录音
void isd_voice_year(uchar i1,uchar i2,uchar i3,uchar i4,uchar i5,uchar i6);//播报年月日
void isd_voice_hour(uchar i1,uchar i2,uchar i3,uchar i4,uchar i5,uchar i6);//播报时分秒
void isd_voice_baoshi(void); //播报"报时"
void isd_rec_play(void); //录音放音一体化
void addr_display(uint addr,uchar flag); //录放音地址显示。
进一步的,程序如图6所示,本发明采用的是LCD12864液晶显示,由于其本身带有 驱动模块液晶屏,所以对于该显示操作程序可以分为开显示,设置显示初始行,写数据和清 屏等部分。12864的写命令程序,写数据程序,显示程序都以子程序的形式在12864库函数 里,方便程序函数之间调用。
部分程序如下:
void main_menu(void);//主菜单
void main_menu1(void);
void main_menu2(void);
void start(void);//开始界面
void start1(void);
void initialize(void); //初始化
void write_com(uchar com); //写指令
void write_dat(uchar dat); //写数据
void CGRAM(void); //CGRAM自定义显示字符
void init_photo(void); //图片初始化
void photo(uchar *address);//图片显示
void photo2(void);
void display1(void);//登陆界面
void display2(void);//欢迎界面
void display3(void);
void display_design(void)。
进一步的,DS1302程序流程如图7所示,在DS1302的时钟日历或者RAM进行数据传 送时,DS1302必须首先发送命令字节。若进行单字节传送,8位命令字节传送结束之后,在下 个2SCLK周期的上升沿输入数据字节,或者在下8个SCLK周期的下降沿输出数据字节。
部分程序如下:
void write_ds1302_byte(uchar dat); //写操作写入一个字节
void write_ds1302(uchar address,uchar dat);//DS1302写入数据
uchar read_ds1302_byte(uchar address); //单字节读数据操作
void set_rtc(void); //校对时间
void read_ds1302(void); //读ds1302所有数据
void time_deal(void); //处理数据,bcd转换成十进制
void ds1302_display(void); //显示界面
void ds1302_display_data(void); //显示年星期月日时秒分数据
void ds1302_main(void); //时间主函数。
进一步的,具体的DS18B20的操作流程如图8所示,DS18B20作为单线接口且每一个 DS18B20都有唯一的系列号,因此多个DS18B20可以存在于同一条单线上工作,但本系统就 用了一个DS18B20所以对DS18B20的搜索可以用Skip ROM命令跳过搜索,然后在对其进行操 作。
部分程序如下:
void init_ds18b20(void); //初始化
void delay(uint t);//延时
void write_byte(uchar dat);// DS18B20写1个字节函数
uchar read_byte(void);// DS18B20读1个字节函数
uchar read_temperature(void);//读温度
uint read_temperature1(void); //读温度,两位小数处理
void display(uchar temp,uint temp1);//温度显示
void ds18b20_tem(void); //温度显示
void ds18b20_1302(void); //ds1302里的温度显示
void voice_temperature(uchar i1,uchar i2);//播报温度。
以上所述仅为本发明专利的较佳实施例而已,并不用以限制本发明专利,凡在本 发明专利的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明专利 的保护范围之内。
本文发布于:2024-09-24 11:19:20,感谢您对本站的认可!
本文链接:https://www.17tex.com/tex/1/72629.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |