单片机89C52光电转速测量系统.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《光电技术》综合设计报告书 设计题目:基于89c52的光电转速测量系统 姓名: 学号: 一)课程设计报告的内容 设计题目 光电转速测量系统 设计要求 1.能测量转盘的转速 2.计算误差小于0.1% 3.具有4位显示 4.实时测量 设计过程 分模块给出原理图,分别说明各模块、各元件的选择依据) 包括:设计方案、上机设计与仿真结果、硬件实验方案) 总体设计方案: 转速测量系统设计分为三个部分,分别为光电传感器部分、整流滤波部分和单片机与数码管显示部分如下图)。 各部分模块的功能: ①传感器:用来对信号的采样。 ②整形电路:对传感器送过来的信号进行放大和整形,在送入单片机进行数据的处理转换。 ③单片机:对处理过的信号进行转换成转速的实际值,送入LED ④LED显示:用来对所测量到的转速进行显示。 1.光电传感器: 本设计采用H42B6槽型光电传感器原理图如下)。还可以采用H2018、ITR9606等传感器) 转盘结构如下,转盘在槽型光电传感器中转动时,光电晶体管接收到的是脉冲信号。 2.整流滤波部分: 本设计采用双电压比较器LM393N,它有两个输入端和两个输出端,一个基准电压端。输入端电压低于基准电压时输出端为高电平,反之输出端电平翻转。 3. 单片机与数码管显示部分: 本设计采用单片机STC89C52,方便烧写程序,且内存比51大。数码管采用四位七段数码管,引脚较少,方便焊接电路。 STC89C52引脚图 (2晶振电路部分 (3复位电路部分 (4四位共阴数码管 设计图示最终系统图,硬件图,结果图) 1.光电传感器部分 2.显示部分信号从15脚输入) 3.系统总程序 #includereg52.h #define uchar unsigned char #define uint unsigned int uint mm=1234。 uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,}。 delay(uint m { uint i,j。 for(i=m。i0。i-- for(j=60。j0。j--。 } xian_shi( { uchar qian,bai,shi,ge。 uint jj。 jj=mm。 jj*=20。 //jj+=1。 qian=jj/1000。 bai=jj%1000/100。 shi=jj%100/10。 ge=jj%10。 P2=0xef。 P0=table[qian]。 delay(1。 //P2=0。 P2=0xdf。 P0=table[bai]。 delay(1。 //P2=0。 P2=0xbf。 P0=table[shi]。 delay(1。 //P2=0。 P2=0x7f。 P0=table[ge]。 delay(1。 //P2=0。 } timer_init( //定时器计数器初始化函数 { EA=1。 ET0=1。 ET1=1。 TMOD=0X51。 TH0=(65535-50000/256。 TL0=(65535-50000%256。 TH1=0。 TL1=0。 TR0=1。 TR1=1。 } main( { timer_init(。 P0=0。 //开始数码管不显示 while(1 { xian_shi(。 delay(2。 //数码管刷新时间单位毫秒 } } void timer0( interrupt 1 { TR0=0。 TR1=0。 TH0=(65535-50000/256。 TL0=(65535-50000%256。 mm=0。 mm|=TH1。 mm=(mm8|TL1。 //mm-=55536。 TH1=0。 TL1=0。 TR0=1。 TR1=1。 } void timer1( interrupt 3 //显示0000说明出错 { TR1=0。 TR0=0。 mm=0。 // TH1=0。 // TL1=0。 // TR1=1。 } 设计心得及建议 成绩评定 (包括:指导教师评语和课程设计等级 二)课程设计报告编写的基本要求 1)按要求的格式书写,所有的内容一律打印; 2)报告内容包括设计过程、软件仿真的结果

文档评论(0)

159****6529 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档