社区
游戏开发
帖子详情
怎样在应用程序中得到声音不同频率的电平值?
newyearday
2000-07-24 06:31:00
用什么样的api函数?有相应的控件吗?
...全文
215
7
打赏
收藏
怎样在应用程序中得到声音不同频率的电平值?
用什么样的api函数?有相应的控件吗?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
voiceview
2001-05-03
打赏
举报
回复
我也极想得到这方面的资料。有热心人士帮忙吗?
我想使用软件技术让聋哑人恢复语言能力。
先要得到带通滤波算法,再得到语音处理方面的知识。
聋哑终结者WEB http://lmxinnet.163.net
有意义,也有经济前途哟。
newyearday
2001-04-29
打赏
举报
回复
smdd,你能给我一份c的缘程序吗?,关于小波转换有这方面的资料吗?
smdd
2001-02-23
打赏
举报
回复
有大量的Fortran,C源程序。
其实算法简单,自己写一个就可以了。不过对于短时FFT,还有一个加窗的问题。
得看你要求到什么样的精度了。如果FFT不能达到要求,还有小波变换作为选择。
newyearday
2001-01-31
打赏
举报
回复
有vb的源程序,或者是ocx控件马?
shines77
2000-08-13
打赏
举报
回复
关注。
dolphin
2000-08-12
打赏
举报
回复
需要一系列的数学变换与滤波算法,如:
快速傅里叶变换(FFT)
α-β-γ滤波
带通滤波等算法。
本人认为最有用、最易读的参考书是徐士良编著的QBASIC常用算法程序集
(清华大学出版社,ISBN 7-302-02662-9)
如果您不愿意或没时间深入研究算法,情与我联系(frankqin@263.net)
本人有使用Delphi 编写的控件程序,可以使您的程序看起来
象高级音响的分频器控制面板。(控件程序价格人民币268元,源程序另议)。
Areslee
2000-08-01
打赏
举报
回复
我也想知道。aresljc@163.net
基于单片机的抢答器的设计-(1).doc
基于单片机的数字抢答器设计 摘 要:数字抢答器由主体电路与扩展电路组成。优先编码电路、锁存器、译码电路将参 赛队的输入信号在显示器上输出;用控制电路和主持人开关启动报警电路,以上两部分 组成主体电路。通过定时电路和译码电路将秒脉冲产生的信号在显示器上输出实现计时 功能,构成扩展电路。 引言:单片机的发展史单片机诞生于20世纪70年代末,经历了SCM、MCU、SoC三大阶段。 1.SCM即单片微型计算机(Single Chip Microcomputer)阶段,主要是寻求最佳的单片形态嵌入式系统的最佳体系结构。2.MCU 即微控制器(Micro Controller Unit)阶段,主要的技术发展方向是:不断扩展满足嵌入式应用时,对象系统要求的各 种外围电路与接口电路,突显其对象的智能化控制能力。3.单片机是嵌入式系统的独立 发展之路,向MCU阶段发展的重要因素,就是寻求应用系统在芯片上的最大化解决;因此 ,专用单片机的发展自然形成了SoC化趋势。随着微电子技术、IC设计、EDA工具的发展 ,基于SoC的单片机应用系统设计会有较大的发展。 硬件电路设计 总体设计 根据抢答器的基本功能,可以设计出如下的单片机外围电路: 图3-1 总体设计 如图3-1,P3.0为开始抢答,P3.2为停止,P1.0- P1.7为八路抢答输入,数码管段选P0口,位选P2口低3位,蜂鸣器(用绿灯代替)输出为 P3.6口。P3.2为时间加1调整,P3.3为时间减1调整。 3.2 外部振荡电路 图3-2 外部振荡电路 一般选用石英晶体振荡器。此电路在加电大约延迟10ms后振荡器起振,在XTAL2引脚产 生幅度为3V左右的正弦波时钟信号,其振荡
频率
主要由石英晶振的
频率
确定。电路
中
两个 电容 C1,C2的作用有两个:一是帮助振荡器起振;二是对振荡器的
频率
进行微调。C1,C2的典型
值
为30PF。 3.3 复位电路的设计 单片机的第9脚RST为硬件复位端,只要将该端持续4个机器周期的高
电平
即可实现复位 ,复位后单片机的各状态都恢复到初始化状态,其电路图如图4所示: 图3-3 复位电路 在方案
中
使用到了硬件复位和软件复位两种功能,由上面的硬件复位可使寄存器及存 储器的
值
都恢复到初始
值
,而前面的功能提到了倒计时间需要有记忆功能,该功能实现的 前提条件就是不能对单片机进行硬件复位,所以设定了软复位功能。软复位实际上就是当 程序执行完毕之后,将程序指针通过一条跳转指令让它跳转到程序执行的起始地址。 3.1.1 显示电路的设计 显示电路使用了七段数码管7SEG-MPX4-CC,它是共阴极的,由高
电平
点亮。 图3-4 阴极七段数码管 3.1.2 按钮输入电路的设计 抢答器的输入按钮使用常开开关, 图3-5 抢答按键 这些常开开关组成了抢答按键,硬件电路简单,在程序设计上也不复杂,只要在程序
中
消除在按键过程
中
产生的"毛刺"现象就可以了。这里采用最常用的方法即延时法,其 的原理为:因为"毛刺"脉冲一般持续时间短,约为几ms,而按键的时间一般远远大于这 个时间,所以当单片机检测到有按键动静后再延时一段时间(这里取10ms)后再判断此
电平
是否保持原状态,如果是则为有效按键,否则无效。 3.1.3 发声 这里能利用程序来控制单片机P3.6口线反复输出高
电平
或低
电平
,即在该口线上产生 一定
频率
的矩形波,接上扬声器就能发出一定
频率
的
声音
,再利用延时程序控制"高""低 "
电平
的持续时间,就能改变输出
频率
,从而改变音调,使扬声器发出
不同
的
声音
。 第四章 系统软件设计 4.1 抢答器流程图 流程图是使用图形表示算法的思路是一种极好的方法,不论采用何种程序设计方法, 程序总体结构确定后,一般以程序流程图的形式对其进行描述。总体框图
中
的各个子模 块或各个子任务也应该结合具体的教学模型和算法画出较详细的程序流程图,供后面编 写具体程序和阅读程序使用。 流程图是由一些图框和流程线组成的,其
中
图框表示各种操作的类型,图框
中
的文字 和符号表示操作的内容,流程线表示操作的先后次序。流程图的基本结构为顺序结构, 分支结构(又称选择结构),循环结构。为便于识别,绘制流程图的习惯做法是: 方框表示:要执行的处理(Process) 平行四边型表示:代表资料输入(Input) 不规则图形代表资料输出(Output)或报表输出(Print) 菱形表示:决策或判断(例如:If...Then...Else) 图4-1-1抢答器主程序流程图 图4-1-2 抢答器定时器
中
断流程图 图4-1-3 外部
中
断程序图 4.2 主程序 我们组所设计的抢答器的程序采用的是C程序设计,C语言的显著特点是用二进制来编 写程序,程序的各个部分除了必要的信息交流外彼此之间相互独立。这种结构化方式可使 程序层次清晰, 便于使用、维护以及调试。C语
蜂鸣器应用
简单的蜂鸣器单片机
应用程序
中
改变单片机P2.1引脚输出波形的
频率
,就可以调整控制蜂鸣器音调,产生各种
不同
音色、音调的
声音
。另外,改变P2.1输出
电平
的高低
电平
占空比,则可以控制蜂鸣器的
声音
大小,这些我们都可以通过编程实验来验证。
Qt与WeMosD1实战篇之远程LED控制
项目介绍:使用ESP8266搭建TCP服务端,解析客户端的数据,从而进行远程LED灯的开和关。利用C++的Qt框架创建TCP客户端,发送TCP数据给ESP8266,设置WeMosD1硬件引脚的高低
电平
。 框架介绍:Qt:一个跨平台的C++图形界面
应用程序
框架。它提供给开发者建立图形用户界面所需的功能,广泛用于开发GUI程序,也可用于开发非GUI程序。WeMosD1:WeMos D1开发板以ESP8266WIFI开发板为基础,使用Arduino开发板的设计,工作电压为3.3V设计出来的开发板,这个开发板仅仅是使用了Arduino uno的布局设计,并不是Arduino的开发板。ESP8266:ESP8266是一款串口WiFi模块,内部集成MCU能实现单片机之间串口同信;这款模块简单易学,体积小,便于嵌入式开发。 学习收获通过学习本门课程,可以对ESP8266和Qt有初步认识。全程干货,快速上手。配字幕与源码,方便大家学习。
基于单片机ATmega16实现的数控
频率
计-电路方案
概述: 数字
频率
计是数字电路
中
的一个典型应用,实际的硬件设计用到的器件较多,连线比较复杂,而且会产生比较大的延时,造成测量误差、可靠性差。随着复杂可编程逻辑器件的广泛应用,用C语言编程到ATmega16,将使整个系统大大简化。提高整体的性能和可靠性。ATmega16是基于增强的AVR RISC结构的低功耗8 位CMOS微控制器。由于其先进的指令集以及单时钟周期指令执行时间,ATmega16 的数据吞吐率高达1 MIPS/MHz,从而可以缓减系统在功耗和处理速度之间的矛盾。 电路设计: 该数控
频率
计功能: (1)可以选择
不同
的
频率
范围. (2)测量波形为三角波或矩形波. (3)测量波形
频率
范围为0~100HZ,幅
值
为TTL
电平
. (4)使用数码管显示出实时
频率
值
. 附件内容包括: 电路设计原理图源文件(不含PCB),用AD软件打开; 源程序; 数控
频率
计论文;
单片机流水灯设计.doc
用AT89C51单片机实现流水灯的控制设计 1.引言 目前,一个学习与应用单片机的高潮正在工厂、学校及企事业单位大规模地兴起。 学习单片机的最有效方法就是理论与实践并重,本文笔者用AT89C51单片机自制了一款简 易的流水灯,重点介绍了其软件编程方法,以期给单片机初学者以启发,更快地成为单 片机领域的优秀人才。 2.硬件组成 按照单片机系统扩展与系统配置状况,单片机应用系统可分为最小系统、最小功耗 系统及典型系统等。AT89C51单片机是美国ATMEL公司生产的低电压、高性能CMOS 8位单片机,具有丰富的内部资源:4kB闪存、128BRAM、32根I/O口线、2个16位定时/计 数器、5个向量两级
中
断结构、2个全双工的串行口,具有4.25~5.50V的电压工作范围和 0~24MHz工作
频率
,使用AT89C51单片机时无须外扩存储器。因此,本流水灯实际上就是 一个带有八个发光二极管的单片机最小应用系统,即为由发光二极管、晶振、复位、电 源等电路和必要的软件组成的单个单片机。其具体硬件组成如图1所示。 从原理图
中
可以看出,如果要让接在P1.0口的LED1亮起来,那么只要把P1.0口的
电平
变 为低
电平
就可以了;相反, 如果要接在P1.0口的LED1熄灭,就要把P1.0口的
电平
变为高
电平
;同理,接在P1.1~P1 .7口的其他7个LED的点亮和熄灭的方法同LED1。因此,要实现流水灯功能,我们只要将 发光二极管LED1~LED8依次点亮、熄灭,8只LED灯便会一亮一暗的做流水灯了。在此我 们还应注意一点,由于人眼的视觉暂留效应以及单片机执行每条指令的时间很短,我们 在控制二极管亮灭的时候应该延时一段时间,否则我们就看不到"流水"效果了。 3.软件编程 单片机的应用系统由硬件和软件组成,上述硬件原理图搭建完成上电之后,我们还 不能看到流水灯循环点亮的现象,我们还需要告诉单片机怎么来进行工作,即编写程序 控制单片机管脚
电平
的高低变化,来实现发光二极管的一亮一灭。软件编程是单片机应 用系统
中
的一个重要的组成部分,是单片机学习的重点和难点。下面我们以最简单的流 水灯控制功能即实现8个LED灯的循环点亮,来介绍实现流水灯控制的几种软件编程方法 。 3.1位控法 这是一种比较笨但又最易理解的方法,采用顺序程序结构,用位指令控制P1口的每 一个位输出高低
电平
,从而来控制相应LED灯的亮灭。程序如下: ORG 0000H ;单片机上电后从0000H地址执行 AJMP START ;跳转到主程序存放地址处 ORG 0030H ;设置主程序开始地址 START:MOV SP,#60H ;设置堆栈起始地址为60H CLR P1.0 ;P1.0输出低
电平
,使LED1点亮 ACALL DELAY ;调用延时子程序 SETB P1.0 ;P1.0输出高
电平
,使LED1熄灭 CLR P1.1 ;P1.1输出低
电平
,使LED2点亮 ACALL DELAY ;调用延时子程序 SETB P1.1 ;P1.1输出高
电平
,使LED2熄灭 CLR P1.2 ;P1.2输出低
电平
,使LED3点亮 ACALL DELAY ;调用延时子程序 SETB P1.2 ;P1.2输出高
电平
,使LED3熄灭 CLR P1.3 ;P1.3输出低
电平
,使LED4点亮 ACALL DELAY ;调用延时子程序 SETB P1.3 ;P1.3输出高
电平
,使LED4熄灭 CLR P1.4 ;P1.4输出低
电平
,使LED5点亮 ACALL DELAY ;调用延时子程序 SETB P1.4 ;P1.4输出高
电平
,使LED5熄灭 CLR P1.5 ;P1.5输出低
电平
,使LED6点亮 ACALL DELAY ;调用延时子程序 SETB P1.5 ;P1.5输出高
电平
,使LED6熄灭 CLR P1.6 ;P1.6输出低
电平
,使LED7点亮 ACALL DELAY ;调用延时子程序 SETB P1.6 ;P1.6输出高
电平
,使LED7熄灭 CLR P1.7 ;P1.7输出低
电平
,使LED8点亮 ACALL DELAY ;调用延时子程序 SETB P1.7 ;P1.7输出高
电平
,使LED8熄灭 ACALL DELAY ;调用延时子程序 AJMP START ;8个LED流了一遍后返回到标号START处再循环 DELAY: ;延时子程序 MOV R0,#255 ;延时一段时间 D1: MOV R1,#255 DJNZ R1,$ DJNZ R0,
游戏开发
8,304
社区成员
23,682
社区内容
发帖
与我相关
我的任务
游戏开发
游戏开发相关内容讨论专区
复制链接
扫一扫
分享
社区描述
游戏开发相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章