- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
音频显示器
音频显示器
音乐音频显示器(炫彩音乐显示器) [打印本页] 回复主题 - 发表主题
diy单片机 2010-11-14 11:04
看了杜阳老师的炫彩音乐显示器,自己也想做一个,写了段程序,使用杜阳老师的A/D转换模板和UART串口模板写的,可发现程序工作不太稳定,这次还好好的,再用就要改A/D的戛值,LED才能随音乐跳动,不知道为什么,看高手写的FFT一点也看不懂,请高手赐教
哪位大侠能改一下程序让他稳定点啊?
程序:/*********************************************************************************************
程序名:
编写人:
编写时间:
硬件支持: STC12C2052AD 使用ADC功能 外部晶体12MHz
接口说明: P1口除P1.0外接LED,p3.7接LED,电脑可以通过串口查看音乐情况
修改日志:
1-
/*********************************************************************************************
说明:
PC串口端设置 [ 4800,8,无???1,无 ]
将ADC读出的数值通过串口以十六进制方式显示。
/*********************************************************************************************/
#include STC12C2052AD.H //单片机头文件
#include intrins.h //51基本运算(包括_nop_空函数)
sbit LED = P1^7;
sbit LED1 = P1^6;
sbit LED2 = P1^5;
sbit LED3 = P1^4;
sbit LED4 = P1^3;
sbit LED5 = P1^2;
sbit LED6 = P1^1;
sbit LED7 = P3^7;
/*********************************************************************************************
函数名:毫秒级CPU延时函数
调 用:DELAY_MS (?);
参 数:1~65535(参数不可为0)
返回值:无
结 果:占用CPU方式延时与参数数值相同的毫秒时间
备 注:应用于1T单片机时i600,应用于12T单片机时i125
/*********************************************************************************************/
void DELAY_MS (unsigned int a){
unsigned int i;
while( a-- != 0){
for(i = 0; i 600; i++);
}
}
/*********************************************************************************************/
/*********************************************************************************************
函数名:UART串口初始化函数
调 用:UART_init();
参 数:无
返回值:无
结 果:启动UART串口接收中断,允许串口接收,启动T/C1产生波特率(占用)
备 注:振荡晶体为12MHz,PC串口端设置 [ 4800,8,无,1,无 ]
/**********************************************************************************************/
void UART_init (void){
//EA = 1; //允许总中断(如不使用中断,可用//屏蔽)
//ES = 1; //允许UART串口的中断
TMOD = 0x20; //定时器T/C1工作方式2
SCON = 0x50; //串口工作方式1,允许串口接收(SCON = 0x40 时禁止串口接收)
TH1 = 0xF3; //定时器初值高8位设置
TL1 = 0xF3; //定时器初值低8位设置
PCON = 0x80; //波特率倍频(屏蔽本句波特率为2400)
TR1 = 1; //定时器启动
}
/*
您可能关注的文档
最近下载
- 锰基普鲁士蓝作为钠离子电池正极材料的研究进展.pdf VIP
- 公安个人现实表现材料2篇.doc VIP
- 35kV变电站钢结构安装工程规划与实施.docx
- 2025年江苏省职业院校技能大赛高职组(现代化工HSE技能)参考试题库及答案.docx
- 光伏组件支架及太阳能板安装施工方案完整版.docx VIP
- 中国乳腺癌现状报告.docx VIP
- 人教版英语八年级上册 Unit 9 Can you come to my party 大单元整体学历案教案 教学设计附作业设计(基于新课标教学评一致性).docx VIP
- 基于Grasshopper的城市住宅区室外热舒适度参数化模拟与实测的对比研究.pdf VIP
- (正式版)DB35∕T 2250-2025 《免陪照护病区服务规范》.pdf VIP
- 超声科法律法规试卷含答案.doc VIP
原创力文档


文档评论(0)