导航:首页 > 操作系统 > 51单片机实习报告docx

51单片机实习报告docx

发布时间:2023-08-13 15:49:35

1. 51单片机程序编写

/*这是用LCD显示所测温度的代码,你参考一下,如果没问题的话,其他的功能你再添加就好了,不难*/

#include<reg52.h>

#include<intrins.h>

#define uint unsigned int

#define uchar unsigned char

#define Nack_number 10

//**************端口定义**************************************************

uchar flag; //LCD控制线接口

sbit RS=P1^0; //RS端

sbit RW=P1^1; //读写端

sbit LCDE=P2^5; //使能端

//mlx90614端口定义

sbit SCK=P2^1; //时钟线

sbit SDA=P2^2; //数据线

//************数据定义****************************************************

bdata uchar flag1; //可位寻址数据

sbit bit_out=flag1^7;

sbit bit_in=flag1^0;

uchar tempH,tempL,err;


//************************** LCD1602 ***********************************

//向LCD写入命令或数据*****************************************************

#define LCD_COMMAND 0 //命令

#define LCD_DATA 1 // 数据

#define LCD_CLEAR_SCREEN 0x01 // 清屏

#define LCD_HOMING 0x02 // 光标返回原点

//设置显示模式******* 0x08+ *********************************************

#define LCD_SHOW 0x04 //显示开

#define LCD_HIDE 0x00 //显示关

#define LCD_CURSOR 0x02 //显示光标

#define LCD_NO_CURSOR 0x00 //无光标

#define LCD_FLASH 0x01 //光标闪动

#define LCD_NO_FLASH 0x00 //光标不闪动

//设置输入模式********** 0x04+ ********************************************

#define LCD_AC_UP 0x02 //光标右移 AC+

#define LCD_AC_DOWN 0x00 //默认 光标左移 AC-

#define LCD_MOVE 0x01 //画面可平移

#define LCD_NO_MOVE 0x00 //默认 画面不移动


//************************** mlx90614 ***********************************

//command mode 命令模式

#define RamAccess 0x00 //对RAM操作

#define EepomAccess 0x20 //对EEPRAM操作

#define Mode 0x60 //进入命令模式

#define ExitMode 0x61 //退出命令模式

#define ReadFlag 0xf0 //读标志

#define EnterSleep 0xff //进入睡眠模式

//ram address read only RAM地址(只读)

#define AbmientTempAddr 0x03 //周围温度

#define IR1Addr 0x04

#define IR2Addr 0x05

#define LineAbmientTempAddr 0x06 //环境温度

/*0x0000 0x4074 16500 0.01/单元

-40 125*/

#define LineObj1TempAddr 0x07 //目标温度,红外温度

/*0x27ad-0x7fff 0x3559 22610 0.02/单元

-70.01-382.19 0.01 452.2*/

#define LineObj2TempAddr 0x08

//eepom address EEPROM地址

#define TObjMaxAddr 0x00 //测量范围上限设定

#define TObjMinAddr 0x01 //测量范围下限设定

#define PWMCtrlAddr 0x02 //PWM设定

#define TaRangeAddr 0x03 //环境温度设定

#define KeAddr 0x04 //频率修正系数

#define ConfigAddr 0x05 //配置寄存器

#define SMbusAddr 0x0e //器件地址设定

#define Reserverd1Addr 0x0f //保留

#define Reserverd2Addr 0x19 //保留

#define ID1Addr 0x1c //ID地址1

#define ID2Addr 0x1d //ID地址2

#define ID3Addr 0x1e //ID地址3

#define ID4Addr 0x1f //ID地址4


//************函数声明*****************************************************

void start(); //MLX90614发起始位子程序

void stop(); //MLX90614发结束位子程序

uchar ReadByte(void); //MLX90614接收字节子程序

void send_bit(void); //MLX90614发送位子程序

void SendByte(uchar number); //MLX90614接收字节子程序

void read_bit(void); //MLX90614接收位子程序

void delay(uint N); //延时程序

uint readtemp(void); //读温度数据

void init1602(void); //LCD初始化子程序

void busy(void); //LCD判断忙子程序

void cmd_wrt(uchar cmd); //LCD写命令子程序

void dat_wrt(uchar dat); //LCD写数据子程序

void display(uint Tem); //显示子程序

void Print(uchar *str); //字符串显示程序


//*************主函数*******************************************

void main()

{

uint Tem; //温度变量

SCK=1;

SDA=1;

delay(4);

SCK=0;

delay(1000);

SCK=1;

init1602(); //初始化LCD

while(1)

{

Tem=readtemp(); //读取温度

cmd_wrt(0x01); //清屏

Print(" Temperature: "); //显示字符串 Temperature: 且换行

display(Tem); //显示温度

Print(" ^C"); //显示摄氏度

delay(10000); //延时再读取温度显示

}

}

void Print(uchar *str) //字符串显示程序

{

while(*str!='') //直到字符串结束

{

dat_wrt(*str); //转成ASCII码

str++; //指向下一个字符

}

}


//*********输入转换并显示*********

void display(uint Tem)

{

uint T,a,b;

T=Tem*2;

if(T>=27315) //温度为正

{

T=T-27315; //

a=T/100; //温度整数

b=T-a*100; //温度小数

if(a>=100) //温度超过100度

{

dat_wrt(0x30+a/100); //显示温度百位

dat_wrt(0x30+a%100/10); //显示温度十位

dat_wrt(0x30+a%10); //显示温度个位

}

else if(a>=10) //温度超过10度

{

dat_wrt(0x30+a%100/10); //显示温度十位

dat_wrt(0x30+a%10); //显示温度个位

}

else //温度不超过10度

{

dat_wrt(0x30+a); //显示温度个位

}

dat_wrt(0x2e); //显示小数点

if(b>=10) //温度小数点后第1位数不等于0

{

dat_wrt(0x30+b/10); //显示温度小数点后第1位数

dat_wrt(0x30+b%10); //显示温度小数点后第2位数

}

else //温度小数点后第1位数等于0

{

dat_wrt(0x30); //显示温度小数点后第1位数0

dat_wrt(0x30+b); //显示温度小数点后第2位数

}

}

else //温度为负

{

T=27315-T;

a=T/100;

b=T-a*100;

dat_wrt(0x2d); //显示负号

if(a>=10) //温度低于负10度

{

dat_wrt(0x30+a/10); //显示温度十位

dat_wrt(0x30+a%10); //显示温度个位

}

else //温度高于负10度

{

dat_wrt(0x30+a); //显示温度个位

}

dat_wrt(0x2e); //显示小数点

if(b>=10) //温度小数点后第1位数不等于0

{

dat_wrt(0x30+b/10); //显示温度小数点后第1位数

dat_wrt(0x30+b%10); //显示温度小数点后第2位数

}

else //温度小数点后第1位数等于0

{

dat_wrt(0x30); //显示温度小数点后第1位数0

dat_wrt(0x30+b); //显示温度小数点后第2位数

}

}

}

//************************************

void start(void) //停止条件是 SCK=1时,SDA由1到0

{

SDA=1;

delay(4);

SCK=1;

delay(4);

SDA=0;

delay(4);

SCK=0;

delay(4);

}

//------------------------------

void stop(void) //停止条件是 SCK=1时,SDA由0到1

{

SCK=0;

delay(4);

SDA=0;

delay(4);

SCK=1;

delay(4);

SDA=1;

}

//---------发送一个字节---------

void SendByte(uchar number)

{

uchar i,n,dat;

n=Nack_number; //可以重发次数

Send_again:

dat=number;

for(i=0;i<8;i++) //8位依次发送

{

if(dat&0x80) //取最高位

{

bit_out=1; //发1

}

else

{

bit_out=0; //发0

}

send_bit(); //发送一个位

dat=dat<<1; //左移一位

}

read_bit(); //接收1位 应答信号

if(bit_in==1) //无应答时重发

{

stop();

if(n!=0)

{

n--; //可以重发Nack_number=10次

goto Repeat; //重发

}

else

{

goto exit; //退出

}

}

else

{

goto exit;

}

Repeat:

start(); //重新开始

goto Send_again; //重发

exit: ; //退出

}

//-----------发送一个位---------

void send_bit(void)

{

if(bit_out==1)

{

SDA=1; //发1

}

else

{

SDA=0; //发0

}

_nop_();

SCK=1; //上升沿

delay(4);delay(4);

SCK=0;

delay(4);delay(4);

}

//----------接收一个字节--------

uchar ReadByte(void)

{

uchar i,dat;

dat=0; //初值为0

for(i=0;i<8;i++)

{

dat=dat<<1; //左移

read_bit(); //接收一位

if(bit_in==1)

{

dat=dat+1; //为1时对应位加1

}

}

SDA=0; //发送应答信号0

send_bit();

return dat; //带回接收数据

}

//----------接收一个位----------

void read_bit(void)

{

SDA=1; //数据端先置1

bit_in=1;

SCK=1; //上升沿

delay(4);delay(4);

bit_in=SDA; //读数据

_nop_();

SCK=0;

delay(4);delay(4);

}



//------------------------------

uint readtemp(void)

{

SCK=0;

start(); //开始条件

SendByte(0x00); //发送从地址00

SendByte(0x07); //发送命令

start(); //开始条件

SendByte(0x01); //读从地址00

bit_out=0;

tempL=ReadByte(); //读数据低字节

bit_out=0;

tempH=ReadByte(); //读数据高字节

bit_out=1;

err=ReadByte(); //读错误信息码

stop(); //停止条件

return(tempH*256+tempL);

}

//******************LCD显示子函数***********************

void init1602(void) //初始化LCD

{

cmd_wrt(0x01); //清屏

cmd_wrt(0x0c); //开显示,不显示光标,不闪烁

cmd_wrt(0x06); //完成一个字符码传送后,光标左移,显示不发生移位

cmd_wrt(0x38); //16×2显示,5×7点阵,8位数据接口

}

void busy(void) //LCD忙标志判断

{

flag=0x80; //赋初值 高位为1 禁止

while(flag&0x80) //读写操作使能位禁止时等待 继续检测

{

P0=0xff;

RS=0; //指向地址计数器

RW=1; //读

LCDE=1; //信号下降沿有效

flag=P0; //读状态位 高位为状态

LCDE=0;

}

}

void cmd_wrt(uchar cmd) //写命令子函数

{

LCDE=0;

busy(); //检测 读写操作使能吗

P0=cmd; //命令

RS=0; //指向命令计数器

RW=0; //写

LCDE=1; //高电平有效

LCDE=0;

}

void dat_wrt(uchar dat) //写数据子函数

{

busy(); //检测 读写操作使能吗

LCDE=0;

if(flag==16)

{

RS=0; //指向指令寄存器

RW=0; //写

P0=0XC0; //指向第二行

LCDE=1; //高电平有效

LCDE=0;

}

RS=1; //指向数据寄存器

RW=0; //写

P0=dat; //写数据

LCDE=1; //高电平有效

LCDE=0;

}

//------------延时--------------

void delay(uint n)

{

uint j;

for(j=0;j<n;j++)

{

_nop_();

}

}


2. 基于Proteus的51系列单片机设计与仿真的内容简介

《基于Proteus的51系列单片机设计与仿真》以目前流行的软、硬件仿真软件Proteus为核心,从实验、实践、实用的角度,通过丰富的实例详细叙述了该软件在51单片机课程教学和单片机应用产品开发过程中的应用。全书共9章,主要介绍51单片机系统的设计及相关软件的使用,在Proteus中原理图的绘制与仿真及PCB的制作、Proteus在单片机软件程序设计中的应用,Proteus在单片机硬件系统设计中的应用。书中选择的实例都具有很强的实用性,通过阅读这些实例,读者可以在不花费硬件成本的前提下,学习和开发单片机软、硬件系统。
~第1章80C51单片机应用系统的设计及相关软件的使用
1.180C51单片机应用系统的设计
1.2KeilC51的使用
1.2.1创建项目
1.2.2调试程序
1.3仿真器
1.4编程
1.5ISP下载
1.6串行调试软件
第2章Proteus7.1入门
2.1ProteusISIS的操作及电路原理图设计
2.1.1ProteusISIS简介
2.1.2ProteusISIS编辑环境及参数设置
2.1.3ProteusISIS原理图设计
2.1.4ProteusISIS元件制作
2.2ProteusVSM虚拟系统模型
2.2.1激励源
2.2.2ProteusVSM虚拟仪器的使用
2.3ProteusARES的PCB设计
2.3.1ProteusARES简介
2.3.2ProteusARES参数设置
2.3.3ProteusARES中的PCB制作实例
第3章51系列软件程序设计与仿真
3.1清零、置位程序的设计与仿真
3.1.1片内清零程序的设计
3.1.2片内清零程序的调试与仿真
3.1.3片外清零程序的设计
3.1.4片外清零程序的调试与仿真
3.1.5置位程序的设计
3.1.6置位程序的调试与仿真
3.2拼字程序的设计与仿真
3.2.1片内拼字程序的设计
3.2.2片内拼字程序的调试与仿真
3.5.1数据排序程序的设计
3.2.3片外拼字程序的设计
3.2.4片外拼字程序的调试与仿真
3.3拆字程序的设计与仿真
3.3.1片内拆字程序的设计
3.3.2片内拆字程序的调试与仿真
3.3.3片外拆字程序的设计
3.3.4片外拆字程序的调试与仿真
3.4数据块传送程序的设计与仿真
3.4.1数据块传送程序的设计
3.4.2数据块传送程序的调试与仿真
3.5数据排序程序的设计与仿真
3.5.2数据排序程序的调试与仿真
第4章51系列通用I/O控制
4.1P1口的应用(一)
4.1.1硬件设计
4.1.2程序设计
4.1.3调试与仿真
4.2P1口的应用(二)
4.2.1硬件设计
4.2.2程序设计
4.2.3调试与仿真
4.3闪烁灯
4.3.1硬件设计
4.3.2程序设计
4.3.3调试与仿真
4.4流水灯
4.4.1硬件设计
4.4.2程序设计
4.4.3调试与仿真
4.5花样灯(一)
4.5.1硬件设计
4.5.2程序设计
4.5.3调试与仿真
4.6花样灯(二)
4.6.1硬件设计
4.6.2程序设计
4.6.3调试与仿真
4.7模拟交通灯
4.7.1硬件设计
4.7.2程序设计
4.7.3调试与仿真
4.8定时/计数器的应用(一)
4.8.1硬件设计
4.8.2程序设计
4.8.3调试与仿真
4.9定时/计数器的应用(二)
4.9.1硬件设计
4.9.2程序设计
4.9.3调试与仿真
4.10中断系统的应用(一)
4.10.1硬件设计
4.10.2程序设计
4.10.3调试与仿真
4.11中断系统的应用(二)
4.11.1硬件设计
4.11.2程序设计
4.11.3调试与仿真
4.12两个单片机串行通信
4.12.1硬件设计
4.12.2程序设计
4.12.3调试与仿真
4.13串行口扩展应用
4.13.1硬件设计
4.13.2程序设计
4.13.3调试与仿真
第5章音乐的应用
5.1单片机唱歌
5.1.1单片机产生音调的基础知识
5.1.2音乐软件的设计
5.1.3歌曲的设计
5.1.4调试与仿真
5.2电子琴
5.2.1电子琴的基础知识
5.2.2电子琴软件的设计
5.2.3调试与仿真
第6章LED数码管与键盘的应用
6.1LED数码管的应用
6.1.1LED数码管的结构及分类
6.1.2LED数码管的显示方式
6.1.3串行口驱动1位LED数码管的设计
6.1.4共阴极LED和共阳极LED的应用
6.1.50~~99计数器的设计
6.1.659s计时器的设计
6.1.7电子钟的设计
6.1.8MAX7219串行驱动LED数码管
6.2键盘的应用
6.2.1键盘的工作原理
6.2.2查询式键盘的设计
6.2.3矩阵式键盘的识别(一)
6.2.4矩阵式键盘的识别(二)
6.2.58255A并行I/O端口扩充键盘
第7章数/模转换器和模/数转换器的应用
7.1数/模转换器的应用
7.1.1TLC5615的基础知识
7.1.2方波发生器
7.1.3锯齿波发生器
7.2模/数转换器的应用
7.2.1ADC0808的基础知识
7.2.2数字电压表的设计
第8章显示器的应用
8.1LED点阵显示器的应用
8.1.1LED点阵显示器的基础知识
8.1.2一个5×7点阵字符显示
8.1.3一个8×8点阵字符串显示
8.1.4两个8×8点阵字符串显示
8.1.5两个8×8点阵滚动显示
8.1.6一个16×16点阵汉字显示
8.1.7两个16×16点阵汉字显示
8.1.8两个16×16点阵汉字分批显示
8.2LCD(液晶显示器)的应用
8.2.1LCD的基础知识
8.2.2字符式LCD的应用
8.2.3汉字式LCD的应用
8.2.4汉字式LCD移位显示
8.2.5汉字式LCD滚动显示
第9章工业控制
9.1SPI总线DS1302实时时钟控制
9.1.1DS1302的基础知识
9.1.2DS1302采用1位LED显示时钟的设计
9.1.3DS1302采用MAX7219控制8位LED显示时钟的设计
9.2I2C总线24C04开启次数统计控制
9.2.124CXX的基础知识
9.2.224C04开启次数统计的设计
9.3RS-485在单片机多机通信中的应用
9.3.1RS-485接口标准简述
9.3.2RS-485在单片机多机通信中的应用设计
9.41-WireBusDS18B20温度测量的设计
9.4.1DS18B20的基础知识
9.4.2DS18B20测量温度的设计
9.5电动机转速控制
9.5.1步进电动机转速控制
9.5.2直流电动机转速控制
9.6电气模拟控制
9.6.1步进电动机的启动、停止控制
9.6.2直流电动机的启动、停止控制
9.6.3步进电动机的正、反转控制
9.6.4直流电动机的正、反转控制
9.6.5电动机的多地控制
附录A单片机指令速查表
附录BProteus的常用快捷键
参考文献~

3. c51单片机复位电路的工作原理

如S22复位键按下时:RST经1k电阻接VCC,获得10k电阻上所分得电压,形成高电平,进入“复位状态”

当S22复位键断开时:RST经10k电阻接地,电流降为0,电阻上的电压也将为0,RST降为低电平,开始正常工作

(3)51单片机实习报告docx扩展阅读:

复位电路是一种用来使电路恢复到起始状态的电路设备,它的操作原理与计算器有着异曲同工之妙,只是启动原理和手段有所不同。复位电路,就是利用它把电路恢复到起始状态。就像计算器的清零按钮的作用一样,以便回到原始状态,重新进行计算。

和计算器清零按钮有所不同的是,复位电路启动的手段有所不同。一是在给电路通电时马上进行复位操作;二是在必要时可以由手动操作;三是根据程序或者电路运行的需要自动地进行。复位电路都是比较简单的大都是只有电阻和电容组合就可以办到了,再复杂点就有三极管等配合程序来进行了。

单片机复位电路主要有四种类型:

(1)微分型复位电路:

(2)积分型复位电路:

(3)比较器型复位电路:

比较器型复位电路的基本原理。上电复位时,由于组成了一个RC低通网络,所以比较器的正相输入端的电压比负相端输入电压延迟一定时间.而比较器的负相端网络的时间常数远远小于正相端RC网络的时间常数。

因此在正端电压还没有超过负端电压时,比较器输出低电平,经反相器后产生高电平.复位脉冲的宽度主要取决于正常电压上升的速度.由于负端电压放电回路时间常数较大,因此对电源电压的波动不敏感.但是容易产生以下二种不利现象:

(1)电源二次开关间隔太短时,复位不可靠:

(2)当电源电压中有浪涌现象时,可能在浪涌消失后不能产生复位脉冲。

为此,将改进比较器重定电路,如图9所示.这个改进电路可以消除第一种现象,并减少第二种现象的产生.为了彻底消除这二种现象,可以利用数字逻辑的方法和比较器配合,设计的比较器重定电路。此电路稍加改进即可作为上电复位和看门狗复位电路共同复位的电路,大大提高了复位的可靠性。

4. 单片机C语言教程实训 求大神给我写写

#include<reg51.h>

#define uchar unsigned char
uchar code ledtab[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40};//0-9
unsigned char sec=0,scanled;
unsigned char mode,time;
unsigned char disdat[2];
sbit key=P1^0;
sbit led1=P1^1;
sbit led2=P1^2;
void dischg()
{
disdat[0]=sec%10;
disdat[1]=sec/10;
}
void t0isr() interrupt 1//秒计时
{
TH0=0x3c;
TL0=0xb0;
time++;
switch(mode)
{
case 0:
if(time==20)
{
time=0;
sec++;
if(sec>99)
{
sec=0;
}
}
break;
case 1:
if(time==20)
{
time=0;
if(sec>0)sec--;
}
break;
}
dischg();
}
void t1isr() interrupt 3//显示
{
TH1=0xec;
TL1=0x78;
switch(scanled)
{
case 0:
P3=0x01;
P2=ledtab[disdat[1]];
break;
case 1:
P3=0x02;
P2=ledtab[disdat[0]];
break;
default:break;
}
scanled++;
scanled%=2;
}
main()
{
TMOD=0x11;
TH0=0x3c;
TL0=0xb0;
TH1=0xec;
TL1=0x78;
TR1=1;
TR0=1;
ET0=1;
ET1=1;
EA=1;
fmq=0;
scanled=0;
time=0;
mode=0;
dischg();
led1=1;
led2=0;
while(1)
{
if(key==0)
{
while(key==0);
sec=24;
led2=1;
mode=1;
}
}
}

5. 单片机实训总结范文5篇

单片机实训课程,是农业工程类专业非常重要的专业技术课,是后续专业实践课的基础,大家做好实训 总结 ,总结更多的 经验 。下面是我给大家带来的单片机实训总结 范文 _单片机实训 工作总结 ,以供大家参考,我们一起来看看吧!

更多关于 “ 实 训总 结 ” 内容推荐

单 片机实 训报 告

单 片 机实 训心得 体 会

实 训总 结报 告范 文

实 训总 结与心 得 体 会

实 习实训总 结报 告

单片机实训总结范文篇一:

通过今次单片机实训,使我对单片机的认识有了更深刻的理解。系统以51单片机为核心部件,利用汇编软件编程,通过键盘控制和数码管显示实现了基本时钟显示功能、时间调节功能,能实现本设计题目的基本要求和发挥部分。

由于时间有限和本身知识水平的限制,本系统还存在一些不够完善的地方,要作为实际应用还有一些具体细节问题需要解决。例如:不能实现只用两个按键来控制时钟时间,还不能实现闹钟等扩展功能。

踉踉跄跄地忙碌了两周,我的时钟程序终于编译成功。当看着自己的程序,自己成天相伴的系统能够健康的运行,真是莫大的幸福和欣慰。我相信其中的酸甜苦辣最终都会化为甜美的甘泉。

但在这次实训中同时使我对汇编语言有了更深的认识。当我第一次接触汇编语言就感觉很难,特别是今次实训要用到汇编语言,尽管困难重重,可我们还是克服了。这次的实训使培养了我们严肃认真的做事作风,增强了我们之间的团队合作能力,使我们认识到了团队合作精神的重要性。

这次实训的经历也会使我终身受益,我感受到这次实训是要真真正正用心去做的一件事情,是真正的自己学习的过程和研究的过程,没有学习就不可能有研究的能力,没有自己的研究,就不会有所突破。希望这次的经历能让我在以后学习中激励我继续进步。

单片机实训总结范文篇二:

通过这一个学期的单片机学习,我收获了很多关于单片机的知识,并且这些知识和日常的生活息息相关。了解了一些简单程序的录入,LED 显示器 、键盘、和显示器的应用和原理。

LED显示器:LED显示器是由发光二管组成显示字段的器件。通常的8段LED显示器是由8个发光二极管组成,LED显示器分共阳极和共阴极两种。有段选码和和位选码。当LED显示器每段的平均电流位5MA时,就有较满意的亮度,一般选择断码5-10MA电流;位线的电流应选择40-80MA。LED显示器的显示方式有动态和静态两种。7289A芯片是具有SPI串行接口功能的显示键盘控制芯片,它可同时取得8位共阴极数码管和64个键的键盘矩阵。7289A的控制指令分为两类:8位宽度的单字节指令和16位宽度双字节指令;还有闪烁指令和消隐指令。7289A采用串行方式SPI总线与微处理器通信;7289A与AT89C52接口电路,在实际电路中无论接不接键盘,电路中连接到其各段上的8个 100千欧的下拉电阻均不可以省去,如果不接键盘而只接显示器可以省去8个10千欧电阻,若仅接键盘而不接显示器,可省去串入DP及SA-SG连线的8个220欧电阻,7289A还需要外接晶体振荡电路。液晶显示器简称LCD,其显示原理是用经过处后的液晶具有能改变光线传输方向的特性,达到显示字符和图形的目的。最简单的笔段式液晶显示器类似于LCD显示器,可以显示简单的字符和数字,而目前大量使用的是点阵式LCD显示器,既可以显示字符和数字也可以显示汉字和图形。如果把LCD显示屏、背光可变电源、接口控制逻辑、驱动集成芯片等部件构成一个整体,是的与CPU接口十分方便。

键盘:键盘是最常见的计算机输入设备,它广泛应用于微型计算机和各种终端设备上。计算机操作者通过键盘向计算机输入各种指令、数据,指挥计算机的工作。按照键盘的工作原理和按键方式的不同,可以划分为四种:机械式键盘采用类似金属接触式开关,工作原理是使触点导通或断开,具有工艺简单、噪音大、易维护的特点。 塑料薄膜式键盘键盘内部共分四层,实现了无机械磨损。其特点是低价格、低噪音和低成本,已占领市场绝大部分份额。 导电橡胶式键盘触点的结构是通过导电橡胶相连。键盘内部有一层凸起带电的导电橡胶,每个按键都对应一个凸起,按下时把下面的触点接通。这种类型键盘是市场由机械键盘向薄膜键盘的过渡产品。 无接点静电电容式键盘使用类似电容式开关的原理,通过按键时改变电极间的距离引起电容容量改变从而驱动编码器。特点是无磨损且密封性较好。

按照按键方式的不同键盘可分为接触式和无触点式两类。接触式键盘就是我们通常所说的机械式键盘,它又分为普通触点式和干簧式。普通触点式的两个触点直接接触,从而使电路闭合,产生信号;而干簧式键盘则是在触点间加装磁铁,当键按下时,依靠磁力使触点接触,电路闭合。与普通触点式键盘相比,干簧式键盘具有响应速度快、使用寿命长、触点不易氧化等优点。无触点式键盘又分为电容式、霍尔式和触摸式三种。其中电容式是我们最常用到的键盘类型,它的触点之间并非直接接触,而是当按键按下时,在触点之间形成两个串联的平板电容,从而使脉冲信号通过,其效果与接触式是等同的。电容式键盘击键时无噪声,响应速度快,但是价格很高一些。

显示器:按照显示器的显示管分类CRT、LCD。按显示色彩分类单色显示器、彩色显示器。按大小分类通常有14寸、15寸、17寸和19寸,或者更大。显示管的屏幕上涂有一层荧光粉,电子枪发射出的电子击打在屏幕上,使被击打位置的荧光粉发光,从而产生了图像,每一个发光点又由“红”“绿”“蓝”三个小的发光点组成,这个发光点也就是一个象素。由于电子束是分为三条的,它们分别射向屏幕上的这三种不同的发光小点,从而在屏幕上出现绚丽多彩的画面。显示器显示画面是由显示卡来控制的。若仔细观察显示器上的文本或图像是由点组成的,屏幕上点越多越密,则分辨率越高。

屏幕上相邻两个同色点的距离称为点距,常见点距规格有0.31mm、0.28mm、0.25mm等。显示器点距越小,在高分辨率下越容易取得清晰的显示效果。电子束采用光栅扫描方式,从屏幕左上角一点开始,向右逐点进行扫描,形成一条水平线;到达最右端后,又回到下一条水平线的左端,重复上面的过程;当电子束完成右下角一点的扫描后,形成一帧。此后,电子束又回到左上方起点,开始下一帧的扫描。这种 方法 也就是常说的逐行扫描显示。而隔行扫描指电子束在扫描时每隔一行扫一线,完成一屏后再返回来扫描剩下的线,这与电视机的原理一样。隔行扫描的显示器比逐行扫描闪烁得更厉害,也会让使用者的眼睛更疲劳。完成一帧所花时间的倒数叫垂直扫描频率,也叫刷新频率,比如60Hz、75Hz等。

通过这几天的单片机的实训,我在理论的基础上更深刻的掌握了单片机的深层内容及实际生活中的应用,实训锻炼了自己动手能力和思维能力,还有在软件方面的编程能力,让我受益匪浅,同时也暴露出一些平时学习上的问题,让我深刻 反思 。这些问题的发现将为我以后的学习和工作找明道路,查漏补缺为进一步学习作好准备。通过实训,让我懂得了如何编写一些简单的程序,学会了如何制作单片机应用程序,并且可以在今后的日常生活中灵活运用。

单片机实训总结范文篇三:

一 实习目的

1. 通过对单片机小系统的设计、焊接、装配,掌握电路原理图及电子线路的基本焊接装配工艺、规范及注意事项;

2. 通过对系统板的测试,了解系统板的工作原理及性能,掌握元器件及系统故障的排除方法;

3. 掌握程序编制及调试方法,完成系统初始化、存储器操作、端口操作、键盘显示等程序的编制及调试(汇编语言、C语言均可);

4. 通过单片机系统的组装,调试以及程序编制、调试及运行,与理论及实验的有机结合和指导教师的补充介绍,使学生掌握控制系统的工作原理、开发方法和操作方法。

5. 培养学生解决实际问题的能力,提高对理论知识的感性认识。

二 实习意义

通过本实习不但可以掌握单片机软、硬件的综合调试方法,而且可以熟练掌握电路原理图,激发对单片机智能性的探索精神,提高学生的综合素质,培养学生应用单片机实现对工业控制系统的设计、开发与调试的能力。在制作学习过程中,不但可以掌握软、硬件的综合调试方法,而且可以使学生对单片机智能性产生强烈的欲望。达到最大限度地掌握微机应用技术,软件及接口设计和数据采集与处理的技能,培养电综合实践素质的目的。

三 系统基本组成及工作原理

1 系统基本组成

系统以单片机STC89C52作为控制核心,各部分基本组成框图如图1所示。

流水灯部分由单片机、键盘模块等组成;

四位数码显示,编程实现30秒倒计时部分由单片机、键盘模块、液晶显示模块等组成;

按键功能部分通过按键控制流水灯部分、四位数码显示部分;

电子钟部分由单片机、键盘模块、液晶显示模块等组成;

使用功能键实现相应的功能组合部分通过流水灯部分、30秒倒计时部分实现;

模数转换部分由单片机、ADC0809转换模块、键盘模块、液晶显示模块等组成。

2 系统工作原理

本设计采用STC89C52RC单片机作为本系统的控制模块。单片机可把由ADC0809及单片机中的数据利用软件来进行处理,从而把数据传输到显示模块,实现阻值大小的显示。以数码管显示为显示模块,把单片机传来的数据显示出来。在显示电路中,主要靠按键来实现各种显示要求的选择与切换。

对于模数转换部分,单片机89C51通过P0口的I/O线向ADC0809发送锁存地址以及复位、启动转换等信号,并查询转换状态。 ADC0809启动转换后,将0-8个通道一次输入的电压信号转换成相应的数字量,供89c51读取使用,并且将EOC置1供单片机查询转换状态。而滑动变阻器负责将阻值信号转换成电压信号,再送到ADC0809的八个通道。当单片机查询到转换结束后依次读取数据并按照现实的需要进行二进制转BCD码等处理最后控制显示电路显示出数字。 其实现方式是:ADC0809转换来自3通道的阻值变化信号。80c51的P2口与ADC0809的输出相连用于读取转换结果,同时P0.0-P0.6作控制总线,向ADC0809发送锁存、启动等控制信息,并查询EOC状态。ALE经分频后给ADC0809提供时钟信号。P3.0和P3.1口用于向显示电路输出段码,P3.2-P3.7用于数码管的位选。

四 系统硬件设计

结合本设计的要求和技术指标,通过对系统大致程序量的估计和系统工作的估计,考虑价格因素。选定AT89C51单片机作为系统的主要控制芯片,8位模拟转换器ADC0809进行阻值转换。 逐次比较法A/D转换器是目前种类最多、应用最广的A/D转换器,其原理即“逐位比较”,其过程类似于用砝码在天平上称物体重量。它由N位寄存器、A/D转换器、比较器和控制逻辑等部分组成,N位寄存器代表N位二进制码。目前应用最广的逐次比较法A/D转换器有ADC0809。它是一种8路模拟输入8位数字输出的逐次比较法A/D转换器件。其主要性能指标和特性如下:

分表率:8位

转换时间:取决于芯片时钟频率,转换一次时间位64个时钟周期

单一电源:+5v

模拟输入电压范围:单极性0-+5v;双极性-5v-+5v

具有可控三态输出锁存器

启动转换控制位脉冲式,上升沿使内部所有寄存器清零,下降沿使A/D转换开始。

通过以上性能比较,我们不难看出ADC0809满足本设计的要求,所以本设计采用ADC0809作为A/D转换器

1 按键电路设计

利用单片机的P1口扩展一个8位键盘。

2 晶振与复位电路设计

本设计采用的是上电复位的形式,如图3.3所示,上电顺进RST获得高电平,随着电容器C的充电,RST引脚上的高电平将逐渐下降,只要高电平能保持复位所需要的两个机器周期以上时间,单片机就能实现复位操作。 晶振电路为单片机提供工作所需要的时钟信号。震荡频率越高,系统时钟频率也越高,单片机运行的速度就越快。其电路如图3.4所示。89C51的_TAL1和_TAL2两个引脚跨接晶体振荡器和微调电容C1、C2形成反馈电路,就构成了稳定的自激振荡器,本设计的震荡器频率为12MHZ。

3 下载电路设计

4 流水灯模块设计

5 模数转换模块设计

6 显示电路设计

本设计采用六位数码管。本系统采用共阳极动态扫描的方式连接。数码管的段码数据由89C51的P3.0-P3.1口送出,89C51的P3.2-P3.7输出位选通信号,只有被选中的那位数码管才会显示段码

7 整体电路设计

五 系统软件设计

1主程序设计

主程序采用分支结构,以状态号标识系统所处的状态。在上电初始化后即进入状态号的轮询扫描,状态号的值决定了分支程序的入口。其中分支程序分别为:AD转换模块(状态号为0),数字模块状态号为1),倒计时模块(状态号为2),电子钟模块(状态号为3),功能组合模块(状态号为4),流水灯模块(状态号为5)。

2 功能子程序设计

2.1 流水灯模块

流水灯模块利用单片机的P3口,通过给P3口的各位送低电平,相应的实现流水灯有规律的点亮。

2.2 30秒倒计时模块

30秒倒计时模块利用单片机的P3.0与P3.1口送相应的段控数据,P3.2-P3.7口送相应的位控数据。通过程序实现30秒倒计时。

2.3 数字加减模块

利用数码管实现数字显示,通过加一键或者是减一键实现数字变量的加一或者减一,进而实现利用数码管显示加一键、减一键功能。

2.4 电子钟模块

利用数码管实现时间显示,通过加一键或者是减一键实现小时变量或者是分钟变量的加一,从而实现调时功能。

2.5 模数转换模块

对于模数转换部分,单片机89C51通过P0口的I/O线向ADC0809发送锁存地址以及复位、启动转换等信号,并查询转换状态。 ADC0809启动转换后,将0-8个通道一次输入的电压信号转换成相应的数字量,供89c51读取使用,并且将EOC置1供单片机查询转换状态。而滑动变阻器负责将阻值信号转换成电压信号,再送到ADC0809的八个通道。当单片机查询到转换结束后依次读取数据并按照现实的需要进行二进制转BCD码等处理最后控制显示电路显示出数字。 其实现方式是:ADC0809转换来自3通道的阻值变化信号。80c51的P2口与ADC0809的输出相连用于读取转换结果,同时P0.0-P0.6作控制总线,向ADC0809发送锁存、启动等控制信息,并查询EOC状态。ALE经分频后给ADC0809提供时钟信号。P3.0和P3.1口用于向显示电路输出段码,P3.2-P3.7用于数码管的位选。

六 实习总结 、体会

本次单片机实习我们一共完成了个模块的程序设计,包括:led显示模块、数码管显示模块和键盘模块。分别实现了流水灯的循环点亮控制、数码管的静态和动态计数显示,还有矩阵键盘按键控制数码管显示的程序设计。然后我们分别用protues系统仿真软件对各个模块进行了模拟仿真,用keil软件编制了汇编语言程序,验证了我们所设计的程序。 这次实习还使我理解了编写程序的一些技巧。单片机应用系统一般由包含多个模块的主程序和由各种子程序组成。每一模块都要完成一个明确的任务,实现某个具体的功能,如计算、接受、发送、延时、显示等。采用模块化程序设计方法,就是将这些具体功能程序进行独立设计和分别调试,最后将这些模块程序装配成整体程序并进行联合调试。模块化程序设计方法的优点:一个模块可以为多个程序所共享;单个功能明确的程序模块的设计和调试比较方便,容易完成;利用已经编好的成熟模块,将大大缩短开发程序的时间,降低开发成本。采用循环结构和子程序结构可以使程序的容量大大减少,提高程序的效率,节省内存。对于多重循环,要注意各重循环的初值和循环结束的条件,避免出现程序无休止循环的“死循环”现象; 通过这次的实习我发现,只有理论水平提高了,才能够将课本知识与实践相结合,理论知识服务于教学实践,以增强自己的动手能力。这次实习十分有意义,这次实习我们知道了理论和实践的距离,也知道了理论和实践相结合的重要性。 回顾起此次课程设计,感觉受益匪浅,从拿到题目到完成整个编程,从理论到实践,学到很多很多的课堂理论中没学到过的东西,不仅对键盘的识别技术这一章节的知识点有了深刻的认识,而且对这学期开设的单片机这门课程有了更全面的了解,尤其是在学习使用proteus软件片编程和仿真时收获良多。通过这次单片机课程设计,还使我懂得了实践的重要性。同时在程序调试的过程中提高自己的发现问题、解决问题、实际动手和独立思考的能力。 这次课程设计能顺利的完成,除了我们的努力外,当然也离不开指导老师申老师的辛勤指导,致使我在设计的过程中学到了很多实用性的知识。同时,对给过我帮助的所有同学和各位指导老师表示忠心的感谢!

单片机实训总结范文篇四:

通过为期一周的单片机实训,是我们对这门课有了许多新的了解,弥补了在课堂上学习的不足。相信这对我们以后的学习和工作都会有很大的帮助。我们一定要在最短的时间里对这些不足加以改正!

首先,在这次试训中我被单片机强大的功能所震撼,以前在课堂上完全没有能理解可编程单片机的优越性。这次通过实体仿真软件等辅助软件的共同效果,是这次试训有了鲜明的活力。换是我们认识到这次试训不仅仅是一个软件的应用,更多的是使我们认识到学习到很多在课堂上无法得到的东西。特别是protues软件的功能是我们了解了当今开发系统的新方向,简直太不可思议啦!

单片机作为一种最简单的软件,与我们的日常生活息息相关,了解一些单片机程序的简单录入是非常必要的。如:LED显示器、键盘和显示器的应用和原理。

在被刺实训中我们每个人通过一个八位流水灯的制作,使我们深深地体会到了单片机在现实生活中的小小应用,既增强了我们的好奇心,又巩固了我们的理论知识。更让我们体会到了单片机手动的开始平台的完善与成熟。只要你有想法,单片机就有可能让他成为现实。这里我学习完protues软件后的第一感觉是,虽然这软件工作不稳定,但是会有相当不错的效果出来。这对我以后的工作一定会有帮助的。在这次试训中不仅只对单片机编程有了新的认识,还对整个单片机的开发平台都有了一厅的了解,这是一笔不错的收获。

通过这几天的试训,使我的感触很深,真实“条条大路通罗马”,要达到目的,不同的人就有不同的方法。只要你的方法不错!五花八门都可以,而且是各有特色。走出来的结果都有各自的独到之处。在编程中“简”字贯穿于整个程序设计中,越简单越好,毕竟单片机留给用户的资源是有限的,所以我们要充分利用这些资源,达到更好的效果,这些是我们在以后的学习生活中应值得注意的地方。

在试训中有苦有甜,当我们为一个很难攻破的程序找出路时,心情烦躁,感觉自己很不可理喻,当程序一点一点编好后,自己从心底感觉到一点小小的安慰,看着自己的成果。感觉很欣慰,有一丝丝的甜意,几天的实训使自己的思维逻辑也有了小小的进步。

单片机实训总结范文篇五:

这是我第一次做单片机实验,说起来有一些紧张和新奇。在此之前我并没有接触过单片机,我本以为与之前的光学实验及 其它 实验差不多,可我进到实验室之后,我就改变了这个看法。

单片机实验要求的是一种思维的创新,而不是简单的重复老师所说的实验步骤。因此第一次实验,实验老师向我们讲解了CVAVR编译器的大体情况及使用方法和技巧,并简单的向我们示例——如何在CVAVR中编写一段程序。编完程序之后,知道我们如何使用AVRStudio达到将编好的程序输入到单片机中来使其运行。

之后老师让我们以组为单位合作编写一段程序,并使其运行。我们组想要编写一个跑马灯的程序。在第一次运行CVAVR时,我们组就遇到了一个麻烦,我们在建立一个新project文件那里出现了错误。在保存这个新project文件的时候,我们单击了Save,而不是Generate,SaveandE_it.因此它弹不出我们我们所需要的源程序。之后我们通过询问其他人解决了这个问题。在编程中,我们开始做的是两盏灯的交替闪烁,间隔时间是1000ms。在运用AVRStudio的时候,我们又犯了一个错误。在我们打开编译好的工程文件时,开始调试,在最后一步点击Finish时,弹出一对话框,问我们是否更新,然后我们单击了Yes。这导致了仿真器无法下次使用。这是由于实验室中的仿真器是盗版的,无法进行更新。

经过我们的不断努力,我们终于实现了简单的跑马灯的运行,便是两个灯地交替闪烁。我们感到兴奋极了。但是我们并没有满足于当前,我们又编写了三个灯地交替闪烁,四个及多个。当我们一步步实现我们的目的时,我得到莫大成就感和自信。

在这次实验中,我体会到了合作的重要性。一个人也可能实现这一系列的过程,但是要花费很多精力和时间。群策群力,分工明确,可以使我们更好、更快地完成我们的工作。在此期间,你可以更好知道自己的不足和缺陷,来得到改正。还可以知道自己的优势所在,把握好自己的优势。


单片机实训总结相关 文章 :

★ 单片机实训报告范文精选5篇

★ 单片机实训总结范文3篇

★ 单片机实验心得体会范文

★ 单片机实训报告范文

★ 单片机实训工作报告范文精选

★ 单片机实习报告范文

★ 单片机实验的心得体会

★ 单片机课程设计心得体会3篇

★ 实验总结5篇精选

★ 单片机设计的心得体会

var _hmt = _hmt || []; (function() { var hm = document.createElement("script"); hm.src = "https://hm..com/hm.js?"; var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(hm, s); })();

6. 学生电子实训报告【三篇】

篇一


一、实训任务要求


按照自己的想法和设计,实现预期的功能效果。


二、实训目的


1、培养动手能力,在实践中加强对理论知识的理解。


2、掌握对电子元器件识别,相应工具的操作,相关仪器的使用,电子设备制作、装调的全过程的方法。


3、掌握查找及排除电子电路故障的常用方法。


4、学习使用proteus、protel电路仿真与设计软件,动手绘制电路图。


5、使用AltiumDesigner绘制简单的PCB图,掌握印刷电路板的一些流程和步骤。


三、实训步骤:


1、设计方案的选择:


一开始准备不用锁存器,但是51单片机可控的IO口只有四组,仅仅一个8*16的LED点阵就耗费了三组。为了节省IO口,实现郑圆禅其他的功能最终选择了增加三个锁存器,详细看附录里面的实物展示图。


2、电路原理分析:


通过51单片机的控制,用8*16的LED点阵实现小游戏俄罗斯方块。通过51的P2口给8*16的LED点阵发送显示数据,与P2相连的是三个锁存器(74HC573),通过锁存端的控制由P2口分三次发送数据给LED点阵,通过扫描的方法实现8位IO口控制24位显示。单片机处理速度是很快的,人眼睛能辨别的事物变化的时间1/24秒,由于视觉暂留作用我们看到的便是整个屏幕都是同时工作者的,其实同一时刻只有一个灯在亮,我们看到的都是余辉。


通过P0口控制一个七段数码管用于俄罗斯方块的得分现实,同时蜂鸣器会发出滴滴声,表示得分了。


P1口控制一些操作按键,主要功能是控制LED点阵显示的方块左右的移动、快速下降、以及暂停复盘等功能。


注:详细请查看附录一的原理图。


3、芯片封装及功能:


74HC573封装:20引脚双列直插


功能:数据的锁存,从而实现单片机8位数据端控制24位。就是通过3个锁存器分别对数据的锁存和开放实现的。89C52封装:40引脚双列直插


功能:通过IO口对外部期间的控制。


4、电路喊尘制作与调试


制作PCB流程:


AltiumDesigner画出原理图→生成PCB→布线→设置线宽、过孔大小↓


清洁版上的油墨←腐蚀电路板←过热←打印机转印调试:


焊接完成后要注意检验电气连接是否正常,用电表的欧姆档测量布线两端的阻值的方法。然后安装上芯片看看能能否正常工作,最后调整工作参数。


四、实训心得


上一学期的实训经历让我初步掌握了焊接的基本技术,认识实习过程中的各种电子元器件。


通过这学期的实训进一步强化了自己的焊接技术,对元器件不再仅仅是认识,而是更进一步的了解了他们的用途和使用方法。对自己的动手你能力也得到了进一步的提高。


紧接着我就开始学习用AltiumDesigner来画电子原理图进而生成PCB,刚刚接触到AltiumDesigner的我一开始觉得很难去画一个正式的电路图,有时找个元件都要找很久,但是练习了一段时间之后,我能够比较准确的画出简单的电路图和添加适当的封装了,并且学会了寻找一些常用的电子元件和其对应的封装以及AltiumDesigner的一些基本操作。而且对PCB的印刷流程有了比较清楚地了解。


风。首先我们要检查焊接的地方是否使印刷电路板损坏,检查个电阻是否同图纸相同,各个电容、三极管是否有极性焊错、位置装错以及是否有电路板线条断线或短路,焊接时有无焊接造成的短路现象,电源的引出线的正负极是否正确。


进一步的检测—定在通电状态下,仔细调节,如果调节失败,要按照一定的顺序和逻辑进行排查,忙乱的检测只会事倍功半,因此在整个过程中我们一定要有耐心、心平气和。一直找不到错误的时候是很容易抓狂烦躁的,注意调整心情!


通过两个星期的实训,我觉得自己在以下几个方面还尚欠缺:


1、仅仅实现了俄罗斯方块的一部分内容,自己设计做的仅仅只有四方格。这一点上有待于改进,而求腔薯自己在程序设计上还是非常不熟练的,甚至可以说是很生疏的。


2、在电路故障排查上,感觉能力上很是不足。在一段时间查找不到故障原因的时候,经常会出现心情烦躁、抓狂,甚至都有想过不它摔了!主要原因还是没有一套自己的逻辑和和恰当的顺序去排查。太过盲目了,这也是急需改进的的一点。


3、很容易自满或自卑,应该多放点时间充实自己。这样才不会夜郎自大或是妄自菲薄。


4、还有一点也是有待提高的,就是焊接技术!看网上的视频焊接高手们焊贴片的元器件,用拖焊几秒钟的时间都可以焊好20多甚至更多个引脚,现在的我是望尘莫及的。


通过两个星期的实训,我觉得自己在以下几个方面有所收获:


1、对电子工艺的理论有了初步的系统了解。我们了解到了焊普通元件与电路元件的技巧、组成元件的作用等。这些知识不仅在课堂上有效,对电子技术的学习有很大的指导意义,在日常生活中更是有着很多用途。


2、对自己的动手能力是个很大的锻炼。实践出真知,纵观古今,所有发明创造无一不是在实践中得到检验的。没有足够的动手能力,就谈不上在未来的科研尤其是实验研究中有所成就。在实训中,我锻炼了自己动手技巧,提高了自己解决问题的能力。比如做电路板焊接与调试时,好几个焊盘的间距特别小,稍不留神,就焊在一起了,这就需要我们在焊接的时候做到认真心细了。


3、这次实习,使我更深刻地了解到了实践的重要性,通过实习我们更加体会到了“学以致用”这句话的道理,终于体会到“实习前的自大,实习时的迷惘,实习后的思考”这句话的含义了,有思考就有收获,有思考就有提高。我在以后会再接再厉,更好地从学习走向实践。



篇二


一、实习目的


电气电子工艺实习是自动化专业学生重要的实践教学环节,其目的是巩固和加深所学电子技术的知识,了解并初步掌握一般电子产品的生产制作、调试与研制开发的基本技能与方法,全面提高学生的实践动手能力和分析问题、解决实际问题的能力;使学生对电子产品生产获得一定感性认识,为今后从事电子产品制作与创新设计工作奠定初步的实践基础。


一、实习要求


1、要求熟悉手工焊锡的常用工具的使用及其维护与修理,基本掌握手工电烙铁的焊接技术,能够独立的完成简单电子产品的安装与焊接,熟悉电子产品制作过程及主要工艺;


2、掌握电子元器件作用特点、性能和识别方法,熟悉简单电子产品整机装配的一般工艺知识并掌握其操作技能。


6要求看懂所装电子产品电气原理图并与实际电路板相对应,学会动手组装;


7、了解电子产品的焊接、2.要求学员练习和掌握正确与焊接的方法,熟悉焊接工具以及焊接材料的选择.并了解工业生产中的电子焊接技术的发展,焊接的流程以及装配整机的生产流程。-3.要求学员掌握收音机,充电器的装配,焊接,调试.的基本操作技能,并对实际产品的制作,安装,调试和检测。


4.要三实习内容


(1)焊接训练:


元器件:电路板、导线;


工具:电烙铁、锡线;


焊接训练时,首先加热电烙铁,然后根据老师的要求焊接导线。在焊接时特别要注意锡不能太多,否则易发生短路。焊接完后再利用万用表进行检测。


求学员掌握了解电路板的基本知识,基本设计方法。四注意事项


1、焊接的技巧和注意事项:


焊接是安装电路的基础,我们必须重视它的技巧和注意事项。


(1)焊锡之前应该先插上电烙铁的插头,给电烙铁加热。


(2)焊接时,焊锡与电路板、电烙铁与电路板的夹角成45度,这样焊锡与电烙铁夹角成90度。


(3)焊接时,焊锡与电烙铁接触时间不要太长,以免焊锡过多或是造成漏锡;也不要过短,以免造成虚焊。


(4)元件的腿尽量要直,而且不要伸出太长,以1毫米为好,多余的可以剪掉。


(5)焊完时,焊锡呈圆滑的圆锥状,而且还要有金属光泽。


2、手工插旱元器件的原则:


先焊矮的元件,在焊稍高的,最后焊的元件以及:先焊小元件,后焊体积大的元件;焊接时锡量适中,避免漏焊虚焊和桥接等故障的发生.不必将所有的元件都插上在焊接,而是插一部分,(必须保证元件插对位置).焊接好,并剪掉管腿。


二实习要求


1.要求学员熟悉常用电子元器件的识别,选用原则和测试方法。接电路板的有关知识;


二、实习内容1.熟悉手工焊锡的常用工具的使用及其维护与修理。


2.基本掌握手工电烙铁的焊接技术,能够独立的完成简单电子产品的安装与焊接。熟悉电子产品的安装工艺的生产流程。4.熟悉常用电子器件的类别、型号、规格、性能及其使用范围,能查阅有关的电子器件图书。5.能够正确识别和选用常用的电子器件,并且能够熟练使用普通万用表和数字万用表。


6.了解电子产品的焊接、调试与维修方法五、实习内容:1掌握焊接的操作方法和注意事项;


2练习焊接


3分发与清点元件。


在两周的实习过程中最挑战我动手能力的一项训练就是焊接。焊接是金属加工的基本方法之一。其基本操作“五步法”??准备施焊,加热焊件,熔化焊料,移开焊锡,移开烙铁(又“三步法”)??看似容易,实则需要长时间练习才能掌握。刚开始的焊点只能用“丑不忍睹”这四个字来形容,但焊接考核逼迫我们用仅仅一天的时间完成考核目标,可以说是必须要有质的飞跃。于是我耐下心思,戒骄戒躁,慢慢来。在不断挑战自我的过程中,我拿着烙铁的手不抖了,送焊锡的手基本能掌握用量了,焊接技术日趋成熟。当我终于能用最短时间完成一个合格焊点时,对焊接的恐惧早已消散,取而代之的是对自己动手能力的信心。在这一过程当中深深的感觉到,看似简单的,实际上可能并非如此。在对焊接实习的过程中我学到了许多以前我不知道的东西,比如,像实习前我只知道有电烙铁,不知道它还有好多种类,有单用式、两用式、调温式、恒温式、直热式、感应式、内热式和外热式,种类这么多。还有就是在挂锡以前不能用松香去擦拭电烙铁,这样会加快它的腐蚀并且减少空气污染,等等。但是我也遇到了很多不明白的地方,1.为什么要对焊接物进行挂锡,是为了防止氧化吗,只要我将被焊接元件的表面清洗干净不就可以了吗,不明白;2.待电烙铁加热完全后,到底是先涂助焊剂还是先挂锡,我采用后者,有人采用前者。都焊出来了,但我在焊接的过程中经常出现焊不化的状况,而采用后者不是加快它的腐蚀并且减少空气污染吗,不明白。


通过两个星期的学习,我觉得自己在以下几个方面与有收获:


一、对电子工艺的理论有了初步的系统了解。我们了解到了焊普通元件与电路元件的技巧、印制电路板图的设计制作与工艺流程、充电器和收音机的工作原理与组成元件的作用等。这些知识不仅在课堂上有效,对以后的电子工艺课的学习有很大的指导意义,在日常生活中更是有着现实意义。


二、对自己的动手能力是个很大的锻炼。实践出真知,纵观古今,所有发明创造无一不是在实践中得到检验的。没有足够的动手能力,就奢谈在未来的科研尤其是实验研究中有所成就。在实习中,我锻炼了自己动手技巧,提高了自己解决问题的能力。比如做收音机组装与调试时,好几个焊盘的间距特别小,稍不留神,就焊在一起了,但是我还是完成了任务。


三、掌握一种技能只能在一定的条件下才能使其发挥作用,但是他却起不到长久的效果。也就是说学习掌握一种技能并不是最重要的,最重要的是在学习这种技能的过程中养成一种严谨谦虚、求实创新的精神。电子工艺实习当然也是如此,这是我在这次实习过程中得到的收获。


五心得体会


通过一个星期的学习,我觉得自己在以下几个方面与有收获:


1,对电子工艺的理论有了初步的系统了解。我们了解到了焊普通元件与电路元件的技巧、印制电路板图的设计制作与工艺流程、工作原理与组成元件的作用等。这些知识不仅在课堂上有效,对以后的电子工艺课的学习有很大的指导意义,在日常生活中更是有着现实意义。


2,对自己的动手能力是个很大的锻炼。实践出真知,纵观古今,所有发明创造无一不是在实践中得到检验的。没有足够的动手能力,就奢谈在未来的科研尤其是实验研究中有所成就。在实习中,我锻炼了自己动手技巧,提高了自己解决问题的能力。比如做收音机组装与调试时,好几个焊盘的间距特别小,稍不留神,就焊在一起了,但是我还是完成了任务。


3,对印制电路板图的设计实习的感受。焊接挑战我得动手能力,那么印制电路板图的设计则是挑战我的快速接受新知识的能力。在我过去一直没有接触过印制电路板图的前提下,用一个下午的时间去接受、消化老师讲的内容,不能不说是对我的一个极大的挑战。


在实习过程中,我熟悉了印制电路板的工艺流程、设计步骤和方法。可是我未能独立完成印制电路板图的设计,不能不说是一种遗憾。这个实习迫使我相信自己的知识尚不健全,动手设计能力有待提高。


两周的实习短暂,但却给我以后的道路指出一条明路,那就是思考着做事,事半功倍,更重要的是,做事的心态,也可以得到磨练,可以改变很多不良的习惯,例如:一个工位上两个同学组装,起初效率低,为什么呢?那就是没有明确分工,是因为一个在做,而另一个人似乎在打杂,而且开工前,也没有统一意见,彼此没有应有的默契。而通过磨合,心与心的交流以及逐渐熟练,使我们学到了这种经验。


实习这几天的确有点累,不过也正好让我们养成了一种良好的作息习惯,它让我们更充实,更丰富,这就是一周实习的收获吧!但愿有更多的收获伴着我,走向未知的将来。



篇三


实训项目一:直流稳压电源


现象说明:该电路板基本成功,线路连接完好,并且LED指示灯能够正常发光,但是万用表不能得到正确的输出电压。


实训项目二:自动脉冲计数器


现象说明:该电路板能够正常工作,经检测,连接5V电压后,数码管能够正常显示数字,并且每来一个脉冲,数码管显示的数字加一,当加到数字九时,此时若再来一个脉冲,数码管又显示为零。我们可以通过调节滑动变阻器来改变产生脉冲的周期,得到一个合适的时间,以便我们更好的查看数码管上数字的变化。


实训项目三:八路数字抢答器


现象说明:连接5V电压后,若控制开关打到清除端,数码管没有显示,按下按钮,数码管仍无任何显示。若控制开关打到开始端,按下按钮,数码管可以显示相应的部分数字,能够实现部分功能。该线路板未能完全成功。


一、实训项目


1、电子元器件的识别与检测


2、实验模版的组装与焊接


3、直流稳压电源


4、自动脉冲计数器


5、八路数字抢答器


二、实训目的


1、熟悉桥式整流器的作用以及三端集成稳压器的使用方法和直流稳压电源的制作方法。


2、熟悉555时基电路和数码管和译码器的应用以及计数器的应用。


3、掌握编码器和R-S触发器的应用。


4、练习焊接技术。


三、实训内容


(一)直流稳压电源


1、检查实训器件是否完好,数量是否正确。


2、研究电路原理图:


本项目电路的工作原理是:采用AC220V输入,双AC12V输出变压器进行降压,然后经整流桥进行整流,整流后的直流电经电容滤波后送给三端集成稳压器,三端集成稳压器输出稳定电压,从而得到直流稳压电源。


3、器件综合布局


4、焊接元器件,连接电路,焊接元器件时要对照原理图,不能错接线或漏接线。


5、电路调试


(1)焊接完成后先对照原理图检查一遍,然后送给实训老师检查经同意后再接入AC220V电源.


(2)测试输出电压,看看是不是DC5V和DC12V。


(二)自动脉冲计数器


1、检查实训器材


2、研究电路原理图


本项目电路的工作原理是:本电路主要分为三个部分,分别是脉冲产生电路、计数电路与译码显示电路


(1)脉冲产生电路。有555时基电路组成,脉冲周期T=0.7c,通过调节电位器RP可以调节产生脉冲的快慢,也就是调节了计数的快慢。


(2)计数电路。本项目采用了中规模集成计数器74LS90,把CP和Q0相连就接成了十进制计数器,脉冲信号从CP0端输入,并设置了清零控制端。


(3)译码与显示电路。本项目采用了74S48来驱动共阴数码管来实现计数信息的数字显示


3、器材综合布局


4、焊接元器件,连接电路


5、电路的调试


(1)焊接后先检查电路是否正确。然后在加上DC5V电源


(2)74LS90先清零


(3)然后打到计数端


(4)在接通555时基电路的电源,看看数码管能否从0到9自动计数,然后自动重复从0到9。


(5)自动计数成功之后,调节电位器RP的阻值,看看计数的快慢是否有变化。


(6)如果电路不能工作或不能正常工作要捉摸其中原因,从而提高分析问题和处理问题的能力。


(三)八路数字抢答器


1、检查实训器材


2、研究电路原理图


本项目电路的工作原理是:本电路主要分为四个部分,分别是开关量输入电路、编码电路、锁存电路与译码显示电路。本电路能完成八位选手的抢答功能即开始抢答后,当选手按动抢答键时,能显示选手的编号,同时能封锁输入电路禁止其他选手抢答。


3、器材综合布局


4、焊接元器件,连接电路。


5、电路调试


(1)焊接完成后应检查电路是否连接正确,再加上DC5V电源


(2)主持人手中的控制开关先打到清除端


(3)然后主持人手中的控制开关打到开始端,抢答开始,随便按下一个按钮,比如按下2号按钮,看数码管是否显示2


(4)若能显示2,再分别按其他7个按钮,看看数码管显示的数是否有变化,如果不变化说明电路成功,如果变化说明不成功


(5)如果不成功分析问题和处理问题。


四、实训总结


两周的电子技术实训已经结束,通过这次实训,我们懂得了如何从理论走向实际,实践才是真知,此次实训我们要做的就是直流稳压电源、自动脉冲计数器和八路数字抢答器,这不仅是简单的元器件的拼装,还包含了多种知识和技能的训练,如电路图识图能力、元器件的功能识别与应用、器件的选型、安装焊接能力、万用表的使用等。给平时只学理论知识的我们有了很好的实践机会,让我们在自己动手的过程中逐渐掌握一些相关的知识,并且同时也提高了我们的动手能力,实训期间所学到的知识远比平时课堂上学到的知识更加深刻,通过实践让我们更透彻的明白了理论知识和平时容易出错的地方。因此非常感谢学校给我们安排了这次实训课程,让我们有了更好的学习机会。


我们做的第一个电路板就是直流稳压电源,它有元件电桥、电阻、电容、稳压器等等,看似简单的电路图,而实则并不是想象的那么简单,这当中存在电烙铁的使用,如何连接,如何焊接等等诸多问题,因此在开始焊接的时候,老师就介绍了电烙铁的使用方法和如何焊接。下面就是手工焊接的几个步骤:


(1)准备焊接:清洁被焊元器件处的积尘污,焊接新的元器件时,应对元器件的引线镀锡。


(2)加热焊接:将沾有少许焊锡和松香的电烙铁头接触被焊元器件约几秒钟。


(3)清理焊接面:若所焊部分焊锡过多,可将焊烙铁头上的焊锡甩掉(注意不要烫伤皮肤,也不要甩到印刷电路板上!)。


(4)检查焊点:看焊点是否圆润、光亮、牢固、是否与周围元器件连焊。


电路焊接完成后,紧接着最为重要的是对焊接好的电路的测试,对于电路板的测试我们遇到了各种问题。电路的连接出错、元器件的管脚接错、出现短路现象等等,都需要用万用表一步步检测,经过一次又一次的反复修改和我们的坚持不懈的努力,终于熟悉了方法和掌握了技巧,同时也成功的完成了第一块电路板,当接通电源后,打开开关,LED灯亮,通过万用表测出输出电压,当时成功的喜悦,激励了我们,并且让我们更加有信心做好接下来的项目。因此实训的过程是经过我们一次次实践,反复探究,从而获得了更多的知识。


通过本次的实训课程,我学会了元器件的应用和电路板的焊接,是要理论为基础的。而实践操作是完成实验的关键,而创新能力决定了一个电路的价值。一个电路的焊接不是简单地按图操作,而是我们要通过器件参数的计算,需要我们的理论为基础。它考验了我们电路的基本操作,提高了我们的实践能力。总之,这次的电路焊接提高了我们对数电的理解和应用。

7. 单片机定时器与计数器的区别

在51单片机的学习过程中,我们经常会发现中断、计数器/定时器、串口是学习单片机的难点,两者的区别是什么呢?下面就跟着我一起来看看吧。

单片机计数器与定时器的区别
计数器和定时器的本质是相同的,他们都是对单片机中产生的脉冲进行计数,只不过计数器是单片机外部触发的脉冲,定时器是单片机内部在晶振的触发下产生的脉冲。当他们的脉冲间隔相同的时候,计数器和定时器就是一个概念。

在定时器和计数器中都有一个溢出的概念,那什么是溢出了。呵呵,我们可以从一个生活小常识得到答案,当一个碗放在水龙头下接水的时候,过了一会儿,碗的水满了,就发生溢出。同样的道理,假设水龙头的水是一滴滴的往碗里滴,那么总有一滴水是导致碗中的水溢出的。在碗中溢出的水就浪费了,但是在单片机的定时计数器中溢出将导致一次中断,至于什么是中断我们下次再讲,这里只是初步的提下概念,中断就是能够打断系统正常运行,而去运行中断服务程序的过程,当服务程序运行完以后又自动回到被打断的地方继续运行。

在定时器计数器中,我们有个概念叫容量,就是最大计数量。方式0是2的13次方,方式1是2的13次方,方式2是2的8次方,方式3是2的8次方。把水滴比喻成脉冲,那么导致碗中水溢出的最后一滴水的就是定时计数器的溢出的最后一个脉冲。

在各种单片机书本中,在介绍定时计数器时都讲到一个计数初值,那什么是计数初值呢?在这里我们还是假设水滴碗。假设第一百滴水能够使碗中的水溢出,我们就知道这个碗的容量是100。问题1,我如何才能使碗接到10滴水就溢出呢?呵呵,我可以想象,如果拿一个空碗去接水,那么还是得要100滴水才能溢出,但是如果我们拿一个已经装有水的碗拿去接,那就不用100滴了。到此我们可以算出,要使10滴水让碗中的水溢出,那么碗中就先要装90滴水。

在定时计数器中,这90滴水就是我们所谓的初始值。问题2,在一个车间我们如何利用单片机对100件产品进行计件,并进行自动包装呢?

我们可以利用计数器计数100,在中断中执行一个自动包装的动作就可以了。

在这里计数初值有3个,假设有方式0:计数初值=8912(2的13次方)—100=8812。方式1:计数初值=65536(2的16次方)—100=65436。方式0:计数初值=256(2的8次方)—100=156。

根据所得的初始值,再将其转换为16进制或者2进制,就可以进行计数或者定时了。当然要让程序完全的运行起来还需要相应的寄存器进行设置。这些可以从各种单片机教程中找到。
单片机中定时器与计数器的区别
定时器实际上也是计数器,只是计数的是固定周期的脉冲

定时/计数器很容易理解的啊

定时器实际上也是工作在计数方式下,只是计数的是固定周期的脉冲,由于脉冲周期固定,由计数值可以计算时间,有定时功能

定时和计数只是触发来源不同(时钟信号和外部脉冲)其他方面是一样的。

单片机里的寄存器可以看成一个个电子开关,用来切换不同的功能、信号。

51里通过TMOD里的T/C 位切换计数信号的来源

当T/C工作在定时器时,对振荡源12分频的脉冲计数,即每个机器周期计数值加1,计数频率为1/12fosc,当晶振频率6MHZ时,计数频率为500KHz,每2us计数值加1;晶振12MHZ就是每1us加1 了。

当T/C工作在计数器是,计数脉冲来自外部脉冲输入管脚T0(P3.4)或T1(P3.5),当T0或T1脚上负跳变时计数值加1 ,识别管脚负跳变需要2个机器周期,即24个振荡周期。所以T0或T1脚输入的可计数的外部脉冲的最高频率为1/24fosc,当晶振12MHZ时,最高计数频率为500KHz,高于此频率将计数出错。

至于赋初值就是杯子原理了,由于51只能加计数,且只能在杯子刚刚满的那一刻发出中断,触发中断程序,所以我们就往杯子里先放好一定的豆子,再来相应数量的豆子就满了,然后中断程序就自动工作了。

注意:

定时和计数只是触发来源不同(时钟信号和外部脉冲)其他方面是一样的。

假设我们要定时一定时间(100个机器周期),我们就置初值为(溢出值-100)就行了,假设我们要计件100个,实际上也是置初值为(溢出值-100),然后将输入脉冲设为外部输入就可以了

所以说:定时和计数只是触发来源不同(时钟信号和外部脉冲)其他方面是一样的。

在中断里置初值是为下一个循环作准备,没什么好说的,看需要定了。

由于定时计数器的值也可以随时读出来,所以我们也可以从0开始计数,从而计算一段时间或一定脉冲的数量哦,这是照样可以打开中断,中断时就说明已经又计数了(定时器溢出值)个脉冲哦,在中断里进行溢出处理,就可以计算出远远大于(定时器溢出值)的数字了

此时也要注意一点:51读数时除了T/C2的捕捉功能,直接读TH和TL可是不断变化的哦,具体的还是看书。当你理解了定时计数器后,我们甚至还可以将计数值置为(溢出值-1),从而实现自动单步(定时模式)或作为外部中断(计数模式)用哦,仔细想想吧,呵呵;-)

至于中断中的需要保护现场的原因,是为了防止不小心修改了别的程序的参数,从而影响别的程序的运行,所以要且只要保护中断程序自己动过的数据,将动过的那些存储器在退出中断时恢复到进入时的状态,就不会影响被中断的程序了。

汇编需要自己保存现场,反正程序就是自己编的嘛,一切尽在掌握中;

C的话编译器会自动进行覆盖分析,自动保存需要保存的变量,一般应用时尽可放心,当然,如果你很了解编译器做了什么,也可以嵌入汇编天马行空自由发挥啊,但新手可不建议这样哦,还是交给编译器吧。

其实这些可以说都是基础知识啊,如果不明白肯定是你的书看的不够仔细哦.

猜你喜欢

1. 单片机的硬件结构是什么

2. 10秒定时器电路设计

3. 单片机技术论文

4. 单片机的发声原理

5. 单片机开题报告范文

6. 电子实习报告单片机

7. 单片机实训报告范文3篇

8. 51单片机毕业论文结束语怎么写

[1] 单片机控制电子喷油泵试验台的研究 寇雪芹 西北农林科技大学 [2] MCS-51单片机构建机器人的实践研究 张兵 华中师范大学 2006-05-01 [3] 单片机控制多功能信号发生器 江明 吉林大学 2004-09-01 硕士 [4] 基于单片机和CPLD的粗光栅位移测量系统研究 王荣秀 重庆大学 [5] 基于单片机井下纠斜控制系统的研究 郑登科 武汉科技大学 [6] 基于M68HC08 MCU通用编程器的设计与实现 王艳春 合肥工业大学 2005-09-01 硕士 [7]基于ADμC841单片机的防爆软起动综合控制器的研究 牛鑫 重庆大学 2006-04-04 硕士 [8] 单片机控制技术在谷物干燥中的应用研究 王保利 西北农林科技大学 2003-05-01 硕士 [9] 阀控液压电梯单片机速度控制系统的研究 应秀华 浙江大学 2002-03-01 硕士 [10] 变频调速液压电梯单片机控制器的研究 苑海涛 浙江大学 2006-05-01 硕士

阅读全文

与51单片机实习报告docx相关的资料

热点内容
如何关闭手机dhcp服务器 浏览:979
php免费ide 浏览:200
程序员词句 浏览:976
服务器如何禁止某个ip段 浏览:329
便签手机文件夹 浏览:768
gameloft的java游戏 浏览:110
神佑释放怎么转服务器 浏览:735
洋葱app软件怎么登录 浏览:788
两相电空气压缩机 浏览:396
基于51单片机的智能语音密码锁设计 浏览:845
mac如何用ssh登录服务器 浏览:446
appstore怎么设置 浏览:954
在哪个app买韩国女装 浏览:111
php写入文件换行 浏览:749
dsp实现fft算法 浏览:485
棋牌源码转让交易手续费 浏览:293
云上服务器贵州 浏览:647
qq三国怎么使用云服务器 浏览:303
一键加密字体怎么设置 浏览:145
majority算法 浏览:822