ImageVerifierCode 换一换
格式:DOCX , 页数:30 ,大小:143.92KB ,
资源ID:11681366      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/11681366.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(东北大学信息学院级电子信息工程专业.docx)为本站会员(b****4)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

东北大学信息学院级电子信息工程专业.docx

1、东北大学信息学院级电子信息工程专业东北大学信息学院2010级电子信息工程专业生产实习报告姓名:学号:班级:电话:Email:2013年7月 10日目 录目 录 II1. 引言 11.1 实习目的和要求 11.2 实习内容 12. 企业参观 13.出租车计价器单片机应用系统设计 23.1 题目的意义、特点,系统的主要功能 23.1.1 题目意义 23.1.2 系统主要功能 23.2 系统功能设计 33.2.1 硬件设计 43.2.2 软件设计 7 3.2.3 程序代码3.3 调试中遇见的问题及解决办法 94. 参考文献 91. 引言生产实习是我们电子专业学习的一个重要的环节,是将课堂上学到的理论

2、知识与实际相结合的一个很好的机会,对强化我们所学到的知识,拓展我们的视野有很好的帮助。同时,这是我们深入了解企业单位的一个很好的机会,对即将毕业参加工作的同学有非常大的帮助。1.1 实习目的和要求通过对沈阳广播发射站的参观学习,使我们对广播发射原理与实际工作情况联系起来,加深对所学课程知识的理解,特别是电磁波调幅原理的认识,使学习与实践相结合。1.2 实习内容参观沈阳广播 A033台的机房和发射天线,了解广播的基本流程和主要发射设备,了解站台的发展历史和中国广播设备发展历史。2. 企业参观参观内容:首先,由站台工作人员给我们大致讲解了A033台的发展历史。电台从最初的几台小功率发射机到现在的大

3、功率3D先进的发射机的进程,折射出了中国电台的发展历史。电台最初的时候,由于当时的政治原因,发射机都是从俄罗斯进口的。后来也有更新换代,让我诧异的是现在居然还有一台颇为古董的发射机在工作。当工作人员介绍到最新引进的3D发射机的时候,言语中不乏称赞之意,其中当然有发射机优良的性能的原因。当时我就想中国什么时候才能有实力制造出来。这也反映出我国整个电子行业在高端领域缺乏竞争力。介绍完电台历史,工作人员带领我们参观发射机房,为我们详细讲解了发射机的工作流程。广播信号经过电缆传输到发射机上,然后经发射机调幅后发射出去。发射机内部用到了大量的FPGA芯片,这跟FPGA优异的性能密不可分。由于发射机发热量

4、大,所以机房内配备了大功率风扇来制冷。当时我就问工作人员空调的制冷效果更好,为什么没用空调呢。工作人员听后笑着对我说机房内的发射机总功率非常的大,根据能量守恒,若果用空调制冷耗电量非常大,是不可取的。由此可见,企业非常关注经济效益,没有最好,只有更经济适用。因此,在以后的工作学习中,我们学生要一改不重视成本的坏习惯,不能盲目追求高性能的产品,要更注重产品的成本控制。最后,工作人员讲解了发射天线的有关情况。其中,工作人员讲得最多的是天线的防雷技术。具体是什么我不记得了。但是有一点我印象十分深刻。因为这个电台的防雷工作十分到位,吸引了别的电台来参观学习。但是由于别的电台技术人员没有做到虚心学习,认

5、真思考,最后还是没有把防雷技术学到手。由此可见,向比自习做得好的同行学习是十分重要的。在以后的工作中,我们应该互相学习,虚心受教,万不可自视高人一筹。通过这次参观实习,让我学到了许多在学校难以学到的东西。在以后的工作学习中,我们要注重以下几点:1.要认真思考企业追求的是什么。有的企业追求速度,有的企业追求质量,侧重点都不一样。向A033台追求的应该更多的是可靠、稳定。2.虚心学习非常重要。在学校中学到的知识非常有限,只有不断学习才不会被时代落下。尤其是我们电子行业,更新速度可以说是用天计算都不为过。所以,不断学习就显得尤其重要。3.不要忽视成本控制。一个好的企业,在成本控制方面是十分严格的。只

6、有合理的成本才会被市场认可,企业才得以发展。希望以后能有更过的机会走进企业。3. 出租车计价器单片机应用系统设计3.1 题目的意义、特点,系统的主要功能3.1.1 题目意义出租车是我们经常使用的交通工具,所以了解计价器的大概功能就显得比较主要。通过这次课程设计,能将课程知识在实际题目中得到应用,锻炼自己的实际动手能力,熟悉单片机C 语言在实际中的应用。3.1.2 系统主要功能09数字键;B:开始计价;C:清除数据;D:(P)设置单价键,按一次后,再按数字键进行设置;E: (T) 设置时间键,按一次后,再按数字键进行设置;F/A:完成设置键。 程序运行后,时间照常显示。出现滚动屏幕,此时可以进行

7、单价和时间的设置。按B键开始计价,运行中也可以进行单价和时间的设置。按C键清除上次费用和路程3.2 系统功能设计1. 外部测速单元有模拟直流电动机(通过直流电机测速以及对速度进行采样)和光电耦合器组成,输出脉冲信号由计数器输入单片机进行处理,其中电动机速度可调;2. 44键盘和8位LED由8279管理,IRQ接INT0,CLK接ALE,键盘由十个数字键和五个功能键组成,其中一个键重复定义,LED用字母和数字显示表示当前的状态、进行的操作以及输入的数据;3. LCD显示信息,如下图; 3.2.1硬件设计(1)按键管理模块利用8279芯片管理键盘与显示,可有效减轻单片机I/O资源负担。键盘由74L

8、S138译码扫描,当有按键时,有8279自行编值,并引发中断。在中断程序中读取键值。8279采用单5V电源供电,40脚封装。DB0DB7:双向数据总线,用来传送8279与CPU之间的数据和命令。CLK:时钟输入线,用以产生内部定时的时钟脉冲。RESET:复位输入线,8279复位后被置为字符显示左端输入,二键闭锁的触点回弹型式,程序时钟前置分频器被置为31,RESET信号为高电平有效。CS:片选输入线,低电平有效,单片机在CS端为低时可以对8279读/写操作。A0:缓冲器低位地址,当A0为高电平时,表示数据总线上为命令或状态, 当为低电平时,表示数据总线上为命令或状态,当为低电平时,表示数据总线

9、上为数据。RD:读信号输入线,低电平有效,将缓冲器读出,数据送往外部总线。WR:写信号输入线,低电平有效,将缓立器读出,将数据从外部数据总线写入8279的缓冲器。(2)显示模块显示部件采用液晶模块RT12864,可显示汉字和图形,内置8192个中文汉字和128个字符,黄绿背光,与单片机采用并行连接方式,片选信号由读写线和138译码输出。液晶显示电路 (3)定时器与计数器 利用模拟直流定动机模拟出租车,转盘上有孔,利用光电转换变成电脉冲。利用计数器进行计数,定时器进行定时。(4)实时时钟出租车上的显示器上要求有时钟,选择DS12887时钟芯片作为时钟控制单元。(5)AD转换模块德州仪器公司(TI

10、)推出的TLC549是的CMOS 8位A/D转换器。该芯片有一个模拟输入端口,3态的数据串行输出接口可以方便的和微处理器或外围设备连接。TLC549仅仅使用输入输出时钟(I/O CLOCK)和芯片选择(CS)信号控制数据。最大的输入输出时钟(I/O CLOCK)为1.1MHz。本次用到TLC549作为水位监测功能实现,当检测水位高于或低于标准水位时,报警输出。 A/D转换电路3.2.1 软件设计(1)程序流程框图先进行初始化,显示计价初始值,然后等待开始计价或者进行设置。计价分两种情况:速度超过设定值时,按当时速度进行计价;速度低于设定值时,自动进行计数,当计数每达到一分钟时,价格按照一公里长

11、度计。修改分、修改时间和单价。清零用于清除当前路程和费用,以便进行下次计价。(2)中断程序框图计时器中断程序流程图 在定时时间内记录脉冲个数,赋给全局变量,用于计算速度。按键中断服务程序流程图读取键值,转换为可用数据,并且置位相应标志位,为以后操作做好准备。然后根据状态在LED上显示相应操作。3.2.3程序代码#include#include #include #include #define uchar unsigned char#define uint unsigned int /DS12887实时时钟时间地址设置#define second XBYTE 0x6000 /秒寄存器地址#de

12、fine sec_alarm XBYTE 0x6001#define minute XBYTE 0x6002 / 分寄存器地址#define min_alarm XBYTE 0x6003 #define hour XBYTE 0x6004 /* 小时寄存器地址 */ #define week XBYTE 0x6006 /* 星期寄存器地址 */ #define date XBYTE 0x6007 /* 日期寄存器地址 */ #define month XBYTE 0x6008 /* 月寄存器地址 */ #define year XBYTE 0x6009 /* 年寄存器地址 */ #define

13、 rega XBYTE 0x600A /* A寄存器地址 */#define regb XBYTE 0x600B /* B寄存器地址 */#define regc XBYTE 0x600C /* C寄存器地址 */#define regd XBYTE 0x600D /* D寄存器地址 */* RT12864HZ汉字图形点阵液晶地址设置 */#define w_c_add XBYTE0x2070 /* 写命令字地址 */#define w_d_add XBYTE0x2071 /* 写数据地址 */#define r_s_add XBYTE0x2072 /* 读状态字地址 */ #define r

14、_d_add XBYTE0x2073 /* 读数据地址 */#define COM XBYTE0x2021 /*8279命令口 */#define DAT XBYTE0x2020 /*8279数据口 */ #define L 1 /*长度系数 */#define TI 50 /*分度数*/#define HN 30 /*孔个数 */ #define LOW 30 /*最低速度 */uchar xdata key; /*键值 */uint idata num=0; /*计数值 */ uint xdata a=1,b=0;uint idata len,fa,m,n,o,p,q,r,s,t,COUT

15、,CLO;uint idata h1,h2,m1,m2,s1,s2; /*时钟参数*/ uint idata price=1,fate=00,length=0,leng;uint idata state=0,clear=1,begin=0,pri,tim,tt=0,cc=0;nn=0;/*几个状态标志位*/ /*设置,清除,开始计价,单价修改,时间修改,两位数监视,六位数监视,数字标志*/unsigned char bdata status; /* lcd可位寻址片内数据存储器,允许位与字节混合访问 */sbit busy=status7; /*lcd忙线的第7位*/uchar bdata s

16、ta_8279; /*8279*/sbit du=sta_82797; /* 8279方式设置命令字 */unsigned char rflag;unsigned char bdata sta_ds;sbit uip=sta_ds7;uchar ds_h,ds_m,ds_s,ds_t;unsigned char bdata ds_time;unsigned char code NO10=0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,0xB8,0xB9;uchar code tab16=0x3f,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x0

17、7,0x7F,0x6F, 0x71,0x7C,0x39,0x73,0x31,0x71;/* 0F的字型编码*/uchar xdata l216=0xB5,0xA5,0xBC,0xDB,0xA3,0xBA,0x20,0x20,0x20,0x20, /* 单 价 : 空 空 */ 0xA3,0xB0,0xA3,0xB0,0xD4,0xAA; /* N N 元 */ uchar xdata l316=0xBE,0xE0,0xC0,0xEB,0xA3,0xBA,0xA3,0xB0,0xA3,0xB0, /* 距 离 : 空 N */ 0xA3,0xB0,0xA3,0xB0,0x4B,0x4D; /*

18、N N k m */uchar xdata l416=0xBC,0xDB,0xC7,0xAE,0xA3,0xBA,0xA3,0xB0,0xA3,0xB0, /* 价 格 : N N */ 0xA3,0xB0,0xA3,0xB0,0xD4,0xAA; /* N N 元 */ uchar xdata l516=0x20,0x20,0xCA,0xE4,0xC8,0xEB,0xC1,0xBD,0xCE,0xBB, /* 空 输 入 两 位 */ 0xB5,0xA5,0xBC,0xDB,0x20,0x20; /* 单 价 空 */uchar xdata l616=0x20,0x20,0x20,0x20,

19、0xA3,0xBA,0xA3,0xB0,0xA3,0xB0, /* 空 空 : N N */ 0xD4,0xAA,0xA3,0xAF,0x4B,0x4D; /* 元 / k m */ unsigned char code hz016= 0xB5,0xA5,0xC6,0xAC,0xBB,0xFA,0xBF,0xCE,0xB3,0xCC,0xC9,0xE8,0xBC,0xC6,0x20,0x20, /单片机课程设计 0x20,0x20,0x20,0x20,0xD7,0xF7,0xD5,0xDF,0xA1,0xC3,0xBD,0xF0,0xD0,0xC4,0x20,0x20, /作者 金鑫 0x20

20、,0x20,0xB3,0xF6,0xD7,0xE2,0xB3,0xB5,0xBC,0xC6,0xBC,0xDB,0xC6,0xF7,0x20,0x20, /出租车计价器 0x20,0x20,0xBB,0xB6,0xD3,0xAD,0xC4,0xFA,0xB5,0xC4,0xCA,0xB9,0xD3,0xC3,0x20,0x20, /欢迎您的使用 ;void initial (void);void delay(void);void check_lcd(void);void show_lcd(uchar *,uchar *,uchar *);void lcd_busy(void); /LCD忙状态

21、检测函数void compute(void);void change_pri(void);void change_time(void);void clock(void);void check_ds12887(void);void e(void);/* 开始界面滚动*/void lcd_roll(void) unsigned char add; unsigned char i,j,k; lcd_busy(); w_c_add=0x30; /* 功能设置:8位数据 */ lcd_busy(); w_c_add=0x0C; /* 显示状态:整体显示,游标位置无效*/for(j=0;j3;j+) fo

22、r(k=0;k20;k+) delay( ); lcd_busy(); w_c_add=0x01;/* 清除显示:将DDRAM填满20H,并且设定DDRAM的地址计数器到00*/ lcd_busy(); clock(); lcd_busy(); w_c_add=0x02;/* 地址归位:设定DDRAM的地址计数器到00,将游标移到开头原点位置 */ add=0x90; /* 设置显示坐标,80H对应字符的第一行第一列 */ lcd_busy(); w_c_add=add; /* 幸数据 */ for(i=0;i8;i+) lcd_busy(); w_d_add=hz0(j)%42*i; /*

23、写数据 ,上半字节*/ w_d_add=hz0(j)%42*i+1; /* 写数据 ,下半字节*/ lcd_busy(); add=0x88; /* 设置显示坐标,80H对应字符的第一行第一列 */ lcd_busy(); w_c_add=add; /* 幸数据 */ for(i=0;i8;i+) lcd_busy(); w_d_add=hz0(j+1)%42*i; /* 写数据 ,上半字节*/ w_d_add=hz0(j+1)%42*i+1; /* 写数据 ,下半字节*/ lcd_busy(); add=0x98; /* 设置显示坐标,80H对应字符的第一行第一列 */ lcd_busy()

24、; w_c_add=add; /* 幸数据 */ for(i=0;i=LOW) COUT=0; price=a*10+b; len+=num*L/HN; if(len/TI=0) leng=len/TI; len%=TI; fa=leng*price; length+=leng; leng=0; fate+=fa; else if(COUT=30) length+; fate+=(10*a+b); COUT=0; compute(); show_lcd(l2,l3,l4); else if(pri=1) change_pri(); if(tim=1) change_time(); if(cle

25、ar=1) length=0; fate=0; inf=0; compute(); / show_lcd(h7,h8,h9); lcd_roll(); if(pri=1) change_pri(); if(tim=1) change_time(); void keybord(void) interrupt 0 using 1 /键盘按键实现功能 uchar keyboard=0; EX0=0; COM=0x50; keyboard=DAT; keyboard &=0x0f; / 保留低四位 switch(keyboard) case 0x0: key=0; tt+;nn=1;cc+; brea

26、k; case 0x1: key=1; tt+;nn=1;cc+; break; case 0x2: key=2; tt+;nn=1;cc+; break; case 0x3: key=3; tt+;nn=1;cc+; break; case 0x4: key=4; tt+;nn=1;cc+; break; case 0x5: key=5; tt+;nn=1;cc+; break; case 0x6: key=6; tt+;nn=1;cc+; break; case 0x7: key=7; tt+;nn=1;cc+; break; case 0x8: key=8; tt+;nn=1;cc+;

27、break; case 0x9: key=9; tt+;nn=1;cc+; break; case 0x0B: key=11;COUT=0; begin=1;clear=0;nn=0;break; /B 开始 case 0x0C: key=12; clear=1;begin=0;nn=0;break; /C 清除数据 case 0X0D: key=13; state=1;pri=1;tim=0;nn=0;break; /D重置价格 case 0x0E: key=14; state=1;tim=1;pri=0;nn=0;break; /E 修改时间 !!问题 default: key=15; nn=0;break; /F 结束操作 keyboard=tabkeyboard; if(pri=1) if(nn=0) COM=0x80+8; else COM=0x80+4+tt; if(tim=1) if(nn=0) COM=0x80+8; else COM=0x80+1+cc; DAT=keyboard; EX0=1;void int1serve() interrupt 2 using 2 unsigned char temp2; COUT+; EX1=0; rflag=1; sta_ds=rega; while(uip); ds_h=ho

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1