- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
电子工程实习报告
电子工程实习报告
实习内容:
实习主要包括四个内容,分四个阶段进行。每个阶段实习具体内容如下:
阶段一:
本阶段实习目的:能够掌握PCB制板方法。
本阶段实习内容:
了解protel软件的基本用法,使用protel软件绘制单片机系统的原理图如下:
对于在库中找不到的元器件可以自己手动绘制如下:
绘制好原理图对所有元器件的引脚进行封装;
导出网络表,修改部分封装不对的元器件,再进行电气检查,导入pcb板,进行布局,手动绘制电源线、地线,最后进行自动布线:
阶段二:
本阶段实习目的:会使用仿真软件进行单片机的仿真,能够熟练的使用电烙铁等配套工具进行电路板的焊接。
本阶段实习内容:
首先,在电脑上使用仿真软件进行单片机系统的仿真。阅读并看懂不同单片机程序所实现的功能,且能够修改原有单片机程序来实现不同的功能,利用仿真软件进行测试。
使用电烙铁等配套工具进行单片机系统的焊接,焊接好的电路板如下:
利用AT89ISP软件和电路板的数据下载线对电路板进行简单的检测;
蜂鸣器程序如下:
#includereg52.h
sbit beep = P3^3;
extern void _nop_ (void);
void delay(int ms)
{ int i;
while(ms--)
{for(i = 0; i 250; i++)
{_nop_();
_nop_();
_nop_();
_nop_();
}
}
}
main()
{ while(1)
{ delay(10);
beep=0;
delay(10);
beep=1;
}
}
阶段三:
本阶段实习目的:学习并能够使用C语言进行单片机程序的编写。
本阶段实习内容:
使用C语言编写自己想要实现单片机功能的程序并使用焊接好的电路板进行测试。(或者修改原有单片机程序来实现)
我的程序如下:
实现的功能:检测电路板所有硬件部分是否正常
#include reg51.h
#include stdio.h
#include absacc.h
#include 1602.h
#include 7289.h
#define uchar unsigned char
sbit CS=P1^0;
sbit CLK=P1^1;
sbit DIO=P1^2;
sbit KEY=P3^2;
sbit beep=P3^3;
uchar half_hign;
uchar half_low;
bdata uchar com_data;
sbit mos_bit=com_data^7;
sbit low_bit=com_data^0;
void delay_50us()
{ uchar i;
for (i=0; i6; i++){;}
}
void delay_8us()
{uchar i;
for (i=0; i1; i++){;}
}
void delay_50ms()
{ uchar i,j;
for(j=0;j50;j++)
for(i=0;i125;i++){;}
}
void delay_5s()
{ uchar i = 100;
while(i--)
delay_50ms();
}
void send(uchar sebuf)
{ uchar i;
com_data=sebuf;
CLK=0;
CS=0;
delay_50us();
for(i=0;i8;i++)
{ delay_8us();
DIO=mos_bit;
CLK=1;delay_8us();
com_data=com_data1;
CLK=0;
}
DIO=0;
}
void reset(void)
{ DIO=1;
delay_50us();send(0xa4);
CS=1;
}
void display(uchar addr,uchar dat)
{ if(addr0 || addr 7)
return;
send(0xc8 + addr);
delay_50us();
if((addr==1)||(addr==7)||(addr==5))
send(0x80+dat);
else send(dat);
delay_50us();
CS=1;
}
void sendcommand(uchar addr,uchar dat)
{ send(addr);
delay_50us();send(dat);
CS=1;
文档评论(0)