srp结题总结报告_srp结题报告
srp结题总结报告由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“srp结题报告”。
石河子大学第十一期SRP项目
石河子大学第十一期SRP项目
声噪计的设计与实现
项目总结报告
指导老师: …… 小组组长: …… 小组组员: …………
石河子大学第十一期SRP项目
1)首先在进行电路的焊接之前,需要对电路进行仿真模拟,即用仿真软件进行仿真,就可得出个元器件的参数。
2)LM3914共18个引脚在进行实际焊接之前,对该芯片需要清楚的了解各个引脚的功能。
3)在最后一个部分显示模块的部分,可以利用单片机的从芯片中引出模拟量予以显示。
3、课题研究的实施
在项目具体实施过程中主要分为一下三个模块: 3.1声音的采集模块 方法与原则: 1)利用MIC进行声音采集,并通过传感器将声信号转化为电信号。早经过AD模块转化为数字信号,用于下一阶段处理。2)利用CA3130运算放大器,将信号放大输出。
3)在此模块主要由话筒和运放CA3130构成,IC2接成高增益反相放大器工作模式,3脚固定在4.5V电位作为基准电压,2脚则接入话筒输出信号,信号在6脚放大输出后经R5负极反馈至2脚。4)由于放大器输入阻抗极高,因此很小的输入电流变化就能激励运放工作。
3.2 信号整流与对数运算模块 主要方法:主要利用芯片LM3914:
LM3914是10位发光二极管驱动器,他可以把输入模拟量转换为数字量输出驱动10位发光二极管来进行点显示或柱显示。芯片的详细介绍:
石河子大学第十一期SRP项目
LM3914的参考电压源输出约为5V,即在7脚和8脚之间维持一个5V的基准电压vref,该基准可以直接给内部分压器使用,这样Vin(5脚)输入一个0到5V电压时,通过比较器即可点亮发光二极管。
4脚和6脚之间连接有10个精密分压电阻,7脚和8脚之间是一个参考电源,9脚为点/柱模式选择,5脚为信号输入端。(后有附图)3.3 显示模块 概述:
此模块主要用单片机进行显示,将前一块放大数字信号进行显示。
编写程序:
#include #include //I2C总线头文件申明
#include //调用部分汇编函数的申明
#define uchar unsigned char #define uint unsigned int
#define PCF8591 0x90 //PCF8591 器件地址 1001 0000 参考datasheet
unsigned int D[32];unsigned int result;//存放AD转换的结果,用于显示
sbit LCD_RS = P2^6;//复位端 sbit LCD_RW = P2^5;//写数据端 sbit LCD_EP = P2^7;//使能端
uchar Code1[]=“Noise Degree ”;uchar Code2[]=“Level: of.”;
石河子大学第十一期SRP项目
ISendByte(PCF8591,0x41);//发送控制命令 0x41 四路但输入,选择1号输入通道 result=IRcvByte(PCF8591)*2;//ADC0 模数转换1 放大2倍显示
}
void delay1(unsigned int n){ int i,j,k;for(k=0;k
void delay(int ms){ //延时子程序
int i;while(ms--){ for(i = 0;i
_nop_();_nop_();_nop_();} } }
石河子大学第十一期SRP项目
void lcd_pos(uchar pos)//设定显示位置
{ lcd_wcmd(pos | 0x80);}
/****************写数据函数************************/ void lcd_wdat(uchar dat){ //将字符显示数据写入到LCD while(lcd_bz());LCD_RS = 1;LCD_RW = 0;LCD_EP = 0;P0 = dat;//将8位数据通过P0口传给1602 _nop_();_nop_();//用于产生一个脉冲宽度
_nop_();_nop_();LCD_EP = 1;_nop_();_nop_();_nop_();_nop_();LCD_EP = 0;}
void lcd_init(){ //LCD初始化设定
lcd_wcmd(0x38);//16*2显示,5*7点阵,8位数据
delay(1);lcd_wcmd(0x0c);//显示开,开光标
delay(1);lcd_wcmd(0x06);//移动光标
delay(1);lcd_wcmd(0x01);//清除LCD的显示内容
delay(1);
}
石河子大学第十一期SRP项目
delay(1);} lcd_wcmd(0x80+0x40);//写入显示缓冲区起始地址为2行1列
for(m=0;m
}
/****************主函数************************/ void main(){
lcd_init();// 初始化LCD
while(1)
{
display();//对结果的显示
operation();// 对数据的读取和处理
} }
0
石河子大学第十一期SRP项目
参考文献
[1]谭浩强 C++程序设计
清华大学出版社 2004:
[2]沈美明,温东婵,IBM-PC汇编语言程序设计 清湖大学出版报社,2012; [3]邱关源
电路基础 高等教育出版社 2004:
[4]童诗白,华成英 模拟电子技术基础 高等教育出版社 2006;
[5]闫石。数字电子技术基础 高等教育出版社
2003:
[6]戴梅鄂,史嘉权 微型计算机技术与应用 清华大学出版社 2006;
[7]何炎详,李飞,李宁 计算机操作系统 清华大学出版社 2011; [8]同济大学数学系
高等数学第六版 高等教育出版社 2011; [9]陈希孺,概率论与数理统计 中国科学技术大学出版社 2012; [10]同济大学数学系 线性代数第五版
高等教育出版社 2012; [11] 吴功宜 计算机网络(第三版)清华大学出版社
2011;
[12] 高宗升 滕岩梅 复变函数与积分变换 北京航空航天大学出版社 2011;
石河子大学第十一期SRP项目
成果图展示: