文档库 最新最全的文档下载
当前位置:文档库 › 基于51单片机密码锁课程设计报告

基于51单片机密码锁课程设计报告

基于51单片机密码锁课程设计报告
基于51单片机密码锁课程设计报告

基于51单片机密码锁课程设计报告

一.设计目的

在日常的生活和工作中,住宅与部门的安全防范、单位的文件档案、财务报表以及一些个人资料的保存多以加锁的办法来解决。若使用传统的机械式钥匙开锁,人们常需要携带多把钥匙,使用极不方便,且钥匙丢失后安全性即大打折扣。随着科学技术的不断发展,人们对日常生活中的安全保险器件的要求越来越高。为了满足人们对锁的使用要求,增加其安全性,用密码代替钥匙的密码锁应运而生。密码锁具有安全性高、成本低、功耗低、易操作等优点。

在安全技术防范领域,具有防盗报警功能的电子密码锁逐渐代替传统的机械式密码锁,克服了机械式密码锁密码量少,安全性能差的缺点,使密码锁无论在技术上还是在性能上都大大提高一步。随着大规模集成电路技术的发展,特别是单片机的问世,出现了带微处理器的只能密码锁,它除了具有电子密码锁的功能外,还引入了智能化管理、专家分析系统等功能,从而使密码锁具有很高的安全性、可靠性,应用日益广泛。

本设计采用单片机为主控芯片,结合外围电路,组成电子密码锁,用户想要打开锁,必先通过提供的键盘输入正确的密码才能将锁打开,密码输入错误就有提示,为了提高安全性,当密码输入错误次将报警。密码可以由用户自己修改设定,锁开后才能修改密码。修改密码前必须再次输入密码,在输入新密码时候需要二次确认,以防止误操作。

二.设计要求和方案选择

1、方案:用AT89C52设计的多功能密码锁。以单片机作为微控制器,可以实现

基于以上优点,按键有效指示、输入错误、控制开锁、错误报警、密码修改等功能,工作稳定可靠,保密性高,实用性强。

2、电子密码锁总体设计

三.硬件部分

AT89C52简介:

单片机AT89C52简介

AT89C52是美国ATMEL公司生产的低电压,高性能CMOS 8位单片机,片内含4K bytes的可反复擦写的只读程序存储器(EPROM)和128bytes的随机存取数据序存器(RAM),器件采用ATMEL公司的高密度/非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器(CPU)和FLASH存储单元,AT89C52

单片机为许多嵌入式控制系统提供了一种灵活行高且价廉的方案。

主要特性:

?与MCS-51 兼容

? 4K字节可编程FLASH存储器(寿命:1000写/ 擦循环)

?全静态工作:0Hz-24KHz

?三级程序存储器保密锁定

? 128*8位内部RAM

? 32条可编程I/O线

?两个16位定时器/计数器

? 5个中断源

?可编程串行通道

?低功耗的闲置和掉电模式

?片内振荡器和时钟电路

1.总电路图

AT89

按键与家庭电话式的按键方式3.复位电路

4.晶振电路

显示容量芯片工作电压工作电流字符尺寸6.报警电路

当输入密码错误次数大于等于3次时,会发出声响报警。

四.软件设计1.程序设计流程图

2.程序代码

#include

#include

#define LCM_Data P0

#define uchar unsigned char

#define uint unsignedint

#define w 6 //定义密码位数

sbit lcd1602_rs=P2^5;

sbit lcd1602_rw=P2^6;

sbit lcd1602_en=P2^7;

sbitScl=P3^4; //24C02串行时钟

sbitSda=P3^5; //24C02串行数据

sbit ALAM = P2^1; //报警

sbit KEY = P2^0; //开锁

sbitopen_led=P2^2; //开锁指示灯

bit operation=0; //操作标志位

bit pass=0; //密码正确标志

bit ReInputEn=0; //重置输入充许标志

bit s3_keydown=0; //3秒按键标志位

bit key_disable=0; //锁定键盘标志

unsigned char countt0,second; //t0中断计数器,秒计数器

void Delay5Ms(void);

unsigned char code a[]={0xFE,0xFD,0xFB,0xF7}; //控盘扫描控制表unsigned char code b[]={"0123456789"};

unsigned char code start_line[] = {"password: "};

unsigned char code name[] = {"===Coded Lock==="}; //显示名称

unsigned char code Correct[] = {" correct "}; //输入正确

unsigned char code Error[] = {" error "}; //输入错误

unsigned char code codepass[] = {" pass "};

unsigned char code LockOpen[] = {" open "}; //OPEN unsigned char code SetNew[] = {"SetNewWordEnable"};

unsigned char code Input[] = {"input: "};

//INPUT

unsigned char code ResetOK[] = {"ResetPasswordOK "};

unsigned char code initword[] = {"Init password..."};

unsigned char code Er_try[] = {"error,try again!"};

unsigned char code again[] = {"input again "};

unsigned char InputData[6]; //输入密码暂存区unsigned char CurrentPassword[6]={1,3,1,4,2,0};

//当前密码值

unsigned char TempPassword[6];

unsigned char N=0; //密码输入位数记数

unsigned char ErrorCont; //错误次数计数

unsigned char CorrectCont; //正确输入计数

unsigned char ReInputCont; //重新输入计数

unsigned char code initpassword[6]={0,0,0,0,0,0};

//=====================5ms延时==============================

void Delay5Ms(void)

{

unsignedintTempCyc = 5552;

while(TempCyc--);

}

//===================400ms延时==============================

void Delay400Ms(void)

{

unsigned char TempCycA = 5;

unsignedintTempCycB;

while(TempCycA--)

{

TempCycB=7269;

while(TempCycB--);

}

}

//================================24C02============================= =========

void mDelay(uint t) //延时

{

uchari;

while(t--)

{

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

{;}

}

}

void Nop(void) //空操作

{

_nop_();

_nop_();

_nop_();

_nop_();

}

/*起始条件*/

void Start(void)

{

Sda=1;

Scl=1;

Nop();

Sda=0;

Nop();

}

/*停止条件*/

void Stop(void)

{

Sda=0;

Scl=1;

Nop();

Sda=1;

Nop();

}

/*应答位*/

voidAck(void)

{

Sda=0;

Nop();

Scl=1;

Nop();

Scl=0;

}

/*反向应答位*/

voidNoAck(void)

{

Sda=1;

Nop();

Scl=1;

Nop();

Scl=0;

}

/*发送数据子程序,Data为要求发送的数据*/ void Send(uchar Data)

{

ucharBitCounter=8;

uchar temp;

do

{

temp=Data;

Scl=0;

Nop();

if((temp&0x80)==0x80)

Sda=1;

else

Sda=0;

Scl=1;

temp=Data<<1;

Data=temp;

BitCounter--;

}

while(BitCounter);

Scl=0;

}

/*读一字节的数据,并返回该字节值*/

uchar Read(void)

{

uchar temp=0;

uchar temp1=0;

ucharBitCounter=8;

Sda=1;

do{

Scl=0;

Nop();

Scl=1;

Nop();

if(Sda)

temp=temp|0x01;

else

temp=temp&0xfe;

if(BitCounter-1)

{

temp1=temp<<1;

temp=temp1;

}

BitCounter--;

}

while(BitCounter);

return(temp);

}

voidWrToROM(uchar Data[],ucharAddress,ucharNum) {

uchari;

uchar *PData;

PData=Data;

for(i=0;i

{

Start();

Send(0xa0);

Ack();

Send(Address+i);

Ack();

Send(*(PData+i));

Ack();

Stop();

mDelay(20);

}

}

voidRdFromROM(uchar Data[],ucharAddress,ucharNum)

{

uchari;

uchar *PData;

PData=Data;

for(i=0;i

{

Start();

Send(0xa0);

Ack();

Send(Address+i);

Ack();

Start();

Send(0xa1);

Ack();

*(PData+i)=Read();

Scl=0;

NoAck();

Stop();

}

}

//=======================================LCD1602==================== =========

#define yi 0x80

//LCD第一行的初始位置,因为LCD1602字符地址首位D7恒定为1(100000000=80)

#define er 0x80+0x40

//LCD第二行初始位置(因为第二行第一个字符位置地址是0x40)

//----------------延时函数,后面经常调用----------------------

void delay(uintxms)//延时函数,有参函数

{

uintx,y;

for(x=xms;x>0;x--)

for(y=110;y>0;y--);

}

//--------------------------写指令---------------------------

write_1602com(uchar com)//****液晶写入指令函数****

{

lcd1602_rs=0;//数据/指令选择置为指令 ......

lcd1602_rw=0; //读写选择置为写

P0=com;//送入数据

delay(1);

lcd1602_en=1;//拉高使能端,为制造有效的下降沿做准备

delay(1);

lcd1602_en=0;//en由高变低,产生下降沿,液晶执行命令

}

//-------------------------写数据-----------------------------

write_1602dat(uchardat)//***液晶写入数据函数****

{

lcd1602_rs=1;//数据/指令选择置为数据

lcd1602_rw=0; //读写选择置为写

P0=dat;//送入数据

delay(1);

lcd1602_en=1; //en置高电平,为制造下降沿做准备

delay(1);

lcd1602_en=0; //en由高变低,产生下降沿,液晶执行命令

}

//-------------------------初始化-------------------------

voidlcd_init(void)

{

write_1602com(0x38);//设置液晶工作模式,意思:16*2行显示,5*7点阵,8位数据

write_1602com(0x0c);//开显示不显示光标

write_1602com(0x06);//整屏不移动,光标自动右移

write_1602com(0x01);//清显示

}

//==============将按键值编码为数值=========================

unsigned char coding(unsigned char m)

{

unsigned char k;

switch(m)

{

case (0x18): k=1;break;

case (0x28): k=2;break;

case (0x48): k=3;break;

case (0x88): k='A';break;

case (0x14): k=4;break;

case (0x24): k=5;break;

case (0x44): k=6;break;

case (0x84): k='B';break;

case (0x12): k=7;break;

case (0x22): k=8;break;

case (0x42): k=9;break;

case (0x82): k='C';break;

case (0x11): k='*';break;

case (0x21): k=0;break;

case (0x41): k='#';break;

case (0x81): k='D';break;

}

return(k);

}

//=====================按键检测并返回按键值===============================

unsigned char keynum(void)

{

unsigned char row,col,i;

P1=0xf0;

if((P1&0xf0)!=0xf0)

{

Delay5Ms();

Delay5Ms();

if((P1&0xf0)!=0xf0)

{

row=P1^0xf0; //确定行线

i=0;

P1=a[i]; //精确定位

while(i<4)

{

if((P1&0xf0)!=0xf0)

{

col=~(P1&0xff); //确定列线

break; //已定位后提前退出

}

else

{

i++;

P1=a[i];

}

}

}

else

{

return 0;

}

while((P1&0xf0)!=0xf0);

return (row|col); //行线与列线组合后返回

}

else return 0; //无键按下时返回0

}

//=======================一声提示音,表示有效输入========================

voidOneAlam(void)

{

ALAM=0;

Delay5Ms();

ALAM=1;

}

//========================二声提示音,表示操作成功========================

voidTwoAlam(void)

{

ALAM=0;

Delay5Ms();

ALAM=1;

Delay5Ms();

ALAM=0;

Delay5Ms();

ALAM=1;

}

//========================三声提示音,表示错误========================

voidThreeAlam(void)

{

ALAM=0;

Delay5Ms();

ALAM=1;

Delay5Ms();

ALAM=0;

Delay5Ms();

ALAM=1;

Delay5Ms();

ALAM=0;

Delay5Ms();

ALAM=1;

}

//=====================显示输入的N个数字,用H代替以便隐藏============================

voidDisplayOne(void)

{

// DisplayOneChar(9+N,1,'*');

write_1602com(yi+5+N);

write_1602dat('*');

}

//=======================显示提示输入========================= voidDisplayChar(void)

{

unsigned char i;

if(pass==1)

{

//DisplayListChar(0,1,LockOpen);

write_1602com(er);

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

{

write_1602dat(LockOpen[i]);

}

}

else

{

if(N==0)

{

//DisplayListChar(0,1,Error);

write_1602com(er);

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

{

write_1602dat(Error[i]);

}

}

else

{

//DisplayListChar(0,1,start_line);

write_1602com(er);

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

{

write_1602dat(start_line[i]);

}

}

}

}

voidDisplayInput(void)

{

unsigned char i;

if(CorrectCont==1)

{

//DisplayListChar(0,0,Input);

write_1602com(er);

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

{

write_1602dat(Input[i]);

}

}

}

//========================重置密码==================================================

//================================================================== ================

voidResetPassword(void)

{

unsigned char i;

unsigned char j;

if(pass==0)

{

pass=0;

DisplayChar();

ThreeAlam();

}

else

{

if(ReInputEn==1)

{

if(N==6)

{

ReInputCont++;

if(ReInputCont==2)

{

for(i=0;i<6;)

{

if(TempPassword[i]==InputData[i]) //将两次输入的新密码作对比

i++;

else

{

//DisplayListChar(0,1,Error);

write_1602com(er);

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

{

write_1602dat(Error[j]);

}

ThreeAlam(); //错误提示

pass=0;

ReInputEn=0; //关闭重置功能,

ReInputCont=0;

DisplayChar();

break;

}

}

if(i==6)

{

//DisplayListChar(0,1,ResetOK);

write_1602com(er);

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

{

write_1602dat(ResetOK[j]);

}

TwoAlam(); //操作成功提示

WrToROM(TempPassword,0,6); //将新密码写入24C02存储

ReInputEn=0;

}

ReInputCont=0;

CorrectCont=0;

}

else

{

OneAlam();

//DisplayListChar(0, 1, again); //显示再次输入一次

write_1602com(er);

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

{

write_1602dat(again[j]);

}

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

{

TempPassword[i]=InputData[i];//将第一次输入的数据暂存起来

}

}

N=0; //输入数据位数计数器清零 }

}

}

}

//=======================输入密码错误超过三过,报警并锁死键盘======================

voidAlam_KeyUnable(void)

{

P1=0x00;

{

ALAM=~ALAM;

Delay5Ms();

}

}

//=======================取消所有操作============================================

void Cancel(void)

{

unsigned char i;

unsigned char j;

//DisplayListChar(0, 1, start_line);

write_1602com(er);

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

{

write_1602dat(start_line[j]);

}

TwoAlam(); //提示音

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

{

InputData[i]=0;

}

KEY=1; //关闭锁

ALAM=1; //报警关

operation=0; //操作标志位清零

pass=0; //密码正确标志清零

ReInputEn=0; //重置输入充许标志清零

ErrorCont=0; //密码错误输入次数清零

CorrectCont=0; //密码正确输入次数清零

ReInputCont=0; //重置密码输入次数清零

open_led=1;

s3_keydown=0;

key_disable=0;

N=0; //输入位数计数器清零

}

//==========================确认键,并通过相应标志位执行相应功能===============================

void Ensure(void)

{

unsigned char i,j;

RdFromROM(CurrentPassword,0,6); //从24C02里读出存储密码if(N==6)

{

if(ReInputEn==0) //重置密码功能未开启{

for(i=0;i<6;)

{

if(CurrentPassword[i]==InputData[i])

{

i++;

}

else

{

ErrorCont++;

if(ErrorCont==3) //错误输入计数达三次时,报警并锁定键盘

{

write_1602com(er);

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

{

write_1602dat(Error[i]);

}

do

Alam_KeyUnable();

while(1);

}

else

{

TR0=1; //开启定时

key_disable=1; //锁定键盘

pass=0;

break;

}

物流与配送考试试题

《物流与配送》试题(A卷)06级电子商务班适用(2007-2008学年第二学期期末考试) 注:答案必须写在答题纸上,否则无效! 一、填空题(22分,每空2分) 1、物流学是(时间)发展起来的一门实践性很强的综合性交叉学科,物流最早是在(国家)形成的。 2、合理运输的“五要素”是、运输环节、运输工具、运输时间和。 3、实现配送经济要考虑的因素是和。 4、GPS包括三个子系统:、和用户系统。 5、自动化立体仓库的构成包括、和 。 二、选择题(20分,每题2分) 1、()是电子商务中实现以“顾客为中心”理念的最终保证。 A物流B资金C信息D商品 2、根据物流作用的分类包括()。 A供应物流B生产物流C社会物流D企业物流 3、配货作业的方式有()。 A环绕式B跨越式C拣选式D播种式 4、运量巨大且成本最低的运输方式是()。 A公路B铁路C水运D飞机 5、活性系数最低的搬运形态是()。 A装托盘B地上散放C传送带D装箱 6、自动化立体仓库按建筑形式分为()。 A整体式B托盘单元式C分离式D箱盒式 7、包装的功能有()。 A展示B保护C方便D促销 8、物流条码的类型有()。 A通用商品条码B交插二五码 C UPC码D贸易单元128码9、配送渠道的特点有()。

A复杂性B创新性C动态性D紧密性 10、供应链的本质包括()。 A物料链B资金链C信息链D增值链 三、判断题(10分,每题1分) 1、分货式工艺适用于用户数量少的情况。() 2、共同配送是为提高物流效率对许多企业一起进行配送。() 3、物流的基本功能要素有运输、仓储、搬运装卸、包装。() 4、供应链中的核心企业可以是产品制造企业,也可以是大型零售企业,或者是运输公司或服务公司。() 5、渠道联盟的出现是为了适应现代社会中用户对产品和服务不断提高的要求和市场竞争日益激烈的需要。() 6、我国物流信息系统的建设以供应链管理为主。() 7、目前使用最为广泛的商品条码是ISBN、ISSN码。() 8、无人搬运车系统根据导引方式的不同,可分为:料斗式、辊道输送式、链条输送式、垂直升降式、叉车式。() 9、A类库存是企业中数量最多的,所以要严格进行管理。() 10、集装箱可以节省包装费用,简化检货手续。()四、名词解释(12分,每个3分) 1、供应链 2、物流 3、配送 4、物流EDI技术 五、简答题(25分,每题5分) 1、新型物流配送是信息化、现代化、社会化的物流配送,具有什么特点? 2、什么是GPS?有哪些特点? 3、要实现运输合理化,具体措施有哪些? 4、配送中心的选址要考虑哪些因素? 5、简述配送渠道两大类参与者的特征。 六、论述题(10分) 试运用所学过的电子商务知识和物流配送知识,论述物流在电子商务中的地位和作用。

基于-89C51单片机的秒表课程设计汇本

《单片机技术》 课程设计报告 题目:基于MCU-51单片机的秒表设计班级: 学号: 姓名: 同组人员: 指导教师:王瑞瑛、汪淳 2014年6月17日

目录 1课程设计的目的 (3) 2 课程设计题目描述和要求 (3) 2.1实验题目 (4) 2.2设计指标 (4) 2.3设计要求 (4) 2.4增加功能 (4) 2.5课程设计的难点 (4) 2.6课程设计容提要 (4) 3 课程设计报告容 (5) 3.1设计思路 (5) 3.2设计过程 (6) 3.3 程序流程及实验效果 (7) 3.4 实验效果 (16) 4 心得体会 (17)

基于MCS-51单片机的秒表设计 摘要:单片机控制秒表是集于单片机技术、模拟电子技术、数字技术为一体的机电一体化高科技产品,具有功耗低,安全性高,使用方便等优点。本次设计容为以8051 单片机为核心的秒表,它采用键盘输入,单片机技术控制。设计容以硬件电路设计,软件设计和PCB 板制作三部分来设计。利用单片机的定时器/计数器定时和计数的原理,用集成电路芯片、LED 数码管以及按键来设计计时器。将软、硬件有机地结合起来,使他拥有正确的计时、暂停、清零、并同时可以用数码管显示,在现实生中应用广泛。 关键词:秒表;8051;定时器;计数器 1 课程设计的目的 《单片机应用基础》课程设计是学好本门课程的又一重要实践性教学环节,课程设计的目的就是配合本课程的教学和平时实验,以达到巩固消化课程的容,进一步加强综合应用能力及单片机应用系统开发和设计能力的训练,启发创新思维,使之具有独立单片机产品和科研的基本技能,是以培养学生综合运用所学知识的过程,是知识转化为能力和能力转化为工程素质的重要阶段。 2 课程设计题目描述和要求

基于51单片机课程设计

基于51单片机课程设计报告 院系:电子通信工程 团组:电子设计大赛1组 姓名: 指导老师:

目录 一、摘要 (3) 二、系统方案的设计 (3) 三、硬件资源 (5) 四、硬件总体电路搭建 (13) 五、程序流程图 (14) 六、设计感想 (14) 七、参考文献 (16) 附录 (17) 附录 1 程序代码 (17)

一、摘要 本设计以STC89C51单片机为核心的温度控制系统的工作原理和设计方法。温度信号由温度芯片DS18B20采集,并以数字信号的方式传送给单片机。文中介绍了该控制系统的硬件部分,包括:温度检测电路、温度控制电路。单片机通过对信号进行相应处理,从而实现温度控制的目的。文中还着重介绍了软件设计部分,在这里采用模块化结构,主要模块有:数码管显示程序、键盘扫描及按键处理程序、温度信号处理程序、led控制程序、超温报警程序。 关键词:STC89C51单片机 DS18B20温度芯片温度控制 ,LED报警提示. 二、系统方案的设计 1、设计要求 基本功能: 不加热时实时显示时间,并可手动设置时间; 设定加热水温功能。人工设定热水器烧水的温度,范围在20~70度之间,打开开关后,根据设定温度与水温确定是否加热,及何时停止加热,可实时显示温度; 设定加热时间功能。限定烧水时间,加热时间内超过温度上限或低于温度下限报警,并可实时显示温度。 2、系统设计的框架

本课题设计的是一种以STC89C51单片机为主控制单元,以DS18B20为温度传感器的温度控制系统。该控制系统可以实时存储相关的温度数据并记录当前的时间。其主要包括:电源模块、温度测量及调理电路、键盘、数码管显示、指示灯、报警、继电器及单片机最小系统。 图1 系统设计框架 3 工作原理 温度传感器 DS18B20 从设备环境的不同位置采集温度,单片机STC8951获取采集的温度值,经处理后得到当前环境中一个比较稳定的温度值,再根据当前设定的温度上下限值,通过加热和降温对当前温度进行调整。当采集的温度经处理后超过设定温度的上限时,单片机通过三极管驱动继电器开启降温设备(压缩制冷器) ,当采集的温度经处理后低于设定温度的下时 , 单片机通过三极管驱动继电器开启升温设备 (加热器) ,这里采用通过LED1和LED2取代!!! 当由于环境温度变化太剧烈或由于加热或降温设备出现故障,或者温度传感头出现故障导致在一段时间内不能将环境温度调整到规定的温度限内的时候,单片机通过三极管驱动扬声器发出警笛声,这里采用HLLED提示。

51单片机密码锁制作的程序和流程图

51单片码锁制作的程序和流程图(很详细) 一、基本组成: 单片机小系统+4*4矩阵键盘+1602显示+DC电机 基本电路: 键盘和和显示 键盘接P1口,液晶的电源的开、关通过P2.7口控制 电机(控制口P2.4) 二、基本功能描述: 1.验证密码、修改密码 a)锁的初始密码是123456(密码最长为10位,最短为1位)。 2.恢复初始密码 a)系统可以恢复初始密码,否则一旦忘记密码而又不能恢复初始密码,该锁就永远打不开。但是又不能让用户自行修改密码,否则其他人也可以恢复该初始密码,使得锁的安全性大大下降。

3.使系统进入低功耗状态 a)在实际使用中,锁只有在开门时才被使用。因而在大多数的时间里,应该让锁进入休眠状态、以降低功耗,这使系统进入掉电状态,可以大大降低系统功耗。 b)同时将LCD背光灯关闭 4.DC电机模拟开锁动作。 a)DC电机启动时解除开锁把手的锁定,允许通过把手开锁。DC电机不直接开锁,使得DC电机的功率不用太大,系统的组成和维护将变得简单,功耗也降了下来。 三、密码锁特点说明: 1.0 输入将被以字符形式输入,最长为10位。 超过10位时系统将自动截取前10位、但不作密码长度溢出提示。 2.0 开锁10秒后不允许更改密码、并提示修改超时_进入初始态,需要重新输入密码方可再次修改密码。 3.0 系统未使用存储器存储密码故掉电后密码自动恢复为初始密码。 4.0 若2分钟无任何操作,系统自动进入省电模式运行,同时关闭液晶显示,以节省电力。 5.0 输入密码正确后、电机允许开锁时间为5秒, 5秒后需要再次输入密码才可以再次开锁。 6.0 修改密码键和恢复初始密码键最好置于室。 这是Proteus仿真结果: 输入密码123456: 显示结果: 密码正确时电机启动、电机将持续5秒:

基于51单片机简易电子琴的课程设计

基于51单片机简易电子琴 1 课题背景 单片微型计算机室大规模集成电路技术发展的产物,属于第四代电子计算机它具有高性能、高速度、体积小、价格低廉、稳定可靠、应用广泛的特点。他的应用必定导致传统的控制技术从根本上发生变革。因此,单片机的开发应用已成为高科技和工程领域的一项重大课题。 电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器。它在现代音乐扮演重要的角色,单片机具有强大的控制功能和灵活的编程实现特性,它已经溶入现代人们的生活中,成为不可替代的一部分。本文的主要内容是用AT89S52单片机为核心控制元件,设计一个电子琴。以单片机作为主控核心,与键盘扬声器等模块组成核心主控制模块,在主控模块上设有8个按键,和一个复位按键。 主要对使用单片机设计简易电子琴进行了分析,并介绍了基于单片机电子琴硬件的组成。利用单片机产生不同频率来获得我们要求的音阶,最终可随意弹奏要表达的音符。并且分别从原理图,主要芯片,个模块原理及各莫奎的程序的调试来详细阐述。 一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,构成我们想演奏的那首曲目。当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的定时/计数器T0来产生这样的方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系编写正确就可以达到我们想要的曲目。 2 任务要求与总体设计方案 2.1 设计任务与要求 利用所给键盘的1,2,3,4,5,6,7,8八个键,能够发出7个不同的音调,而且有一个按键可以自动播放歌曲,要求按键按下时发声,松开延时一小段时间,中间再按别的键则发另外一音调的声音,当系统扫描到键盘按下,则快速检测出是哪一个按键被按下,然后单片机的定时器启动,发出一定频率的脉冲,该频率的脉冲经喇叭驱动电路放大滤波后,就会发出相应的音调。如果在前一个按下的键发声的同时有另一个按键被按下,则启动中断系统。前面的发音停止,转到后按的键的发音程序。发出后按的键的音调。 2.2 设计方案 2.2.1 播放模块 播放模块是由喇叭构成,它几乎不存在噪声,音响效果较好,而且由于所需驱动功率较小,且价格低廉,所以,被广泛应用。 2.2.2 按键控制模块

电商期末复习题

单选题:11题 1. 现在人们所指的电子商务是在( B )网络上进行的,这种网络是电子商务活动的 基础框架。 A. Intranet B. Internet C. Extranet D. Arpanet 2. 电子商务的物流服务内容分为( D ) A.传统物流服务、现代物流服务 B.一般物流服务、特殊物流服务 C.基本物流服务、基础物流服务 D.传统物流服务、增值性物流服务 3. 下列不属于交易的不可否认性范畴的是( B )。 A. 源点不可否认 B. 地点不可否认 C. 接收不可否认 D. 回执不可否认 4. 电子邮件地址格式为:username@hostname,其中hostname为( C )。 A. 用户地址名 B. 某公司名 C. ISP某台主机的域名 D. 某国家名 5. 在电子商务下,物流的运作是以( A )为核心的。 A. 信息 B. 商品 C. 企业 D. 客户配送 6. 在配送的组织方式中,服务水平最高的配送方式是( A ) A.即时配送 B.定时配送 C.定时定量配送 D.定时定路线配送 7. 配送企业之间开展共同配送需要解决好的关键问题是( D ) A.合理选择客户 B.合理安排时间 C.合理装配车辆 D.合理分配收益 8. 配送中心规划的主要内容是确定配送中心的( A ) A.规模、数量、地点 B.类型、规模、数量 C.功能、数量、结构 D.功能、结构、地点 9. 在电子商务中,为进行商务活动交易双方之间利用的是( A ) A.现代信息技术和计算机网络 B.现代物流技术和计算机网络 C.现代管理技术和通信网络 D.现代科学技术和通信网络 10. 以下关于电子商务企业降低物流成本的基本思路的论述,不正确的是( C ) A.正确选择物流运作方式 B.完善物流网络 C.实行物流总代理制度 D.调整服务政策、谋求规模效益 11.DES算法是( C )的一个运用。 A.RSA公开密钥加密(非对称) B. 硬件加密 C. 对称密钥加密 D. 非对称密钥加密 12.电子商务发展中存在的问题不包括( B )。 A.网络基础设施建设问题 B. 网站种类过于繁多 C. 安全问题 D. 商家信誉问题

基于51单片机电子密码锁设计讲解

一、设计目的 1.1课题简介 如何实现防盗是很多人关心的问题,传统的机械锁由于其构造简单,被撬的事件屡见不鲜,使人们的人身及财产安全受到很大威胁。电子密码锁是一种依靠电子电路来控制电磁锁的开与闭的装置,开锁需要输入正确密码,若密码泄露, 用户可以随时更改密码。因此其保密性高,使用灵活性好,安全系数高,可以满 足广大用户的需要,现在广泛使用的有红外遥控电子密码锁,声控密码锁,按键密码锁等。 1.2课题研究目的 本设计是一种基于单片机的密码锁方案,根据基本要求规划单片机密码锁的 硬件电路和软件程序,同时对单片机的型号选择、硬件设计、软件流程图、单片 机存储单元的分配等都有注释。现在很多地方都需要密码锁,电子密码锁的性能和安全性大大超过了机械锁,为了提高密码的保密性,必须可以经常更改密码, 以便密码被盗时可以修改密码。 本次设计的密码锁具备的功能:LED数码管显示初始状态“——————”,用户通过键盘输入密码,每输入一位密码,LED数码管相应有一位变为“P”,若想重新输入密码,只需按下“CLR”键。密码输入完毕后按确认键“#”,密码锁控制芯片将输入的密码与密码锁控制芯片中存储的密码相比,若密码错误, 则不开锁,会有红灯亮提示,同时显示“Error”。若正确,则开锁,会有绿灯 亮提示,同时显示“PASS”。用户可以根据实际情况随意改变密码值或密码长度,密码输入正确后可以按下“CHG”修改密码,输入新密码时每输入一位新 密码相应有一位变为“H”,以便提示用户此时输入的是新密码,修改新密码 时若想重新输入新密码只需按下“CLR”键即可。输入新密码后按确认键即修 改成功,新密码写入单片机内部RAM中,以便以后用来确认密码的正确性。按 下复位键,系统恢复初始状态,密码也恢复初始密码,本设计中初始密码是“096168”。 本次设计中硬件主要由我完成,软件主要由张振完成。

基于51单片机的电子琴设计课程设计

目录 前言 (2) 第1章基于51单片机的电子琴设计 (3) 1.1 电子琴的设计要求 (3) 1.2 电子琴设计所用设备及软件 (3) 1.3 总体设计方案 (3) 第2章系统硬件设计 (5) 2.1 琴键控制电路 (5) 2.2 音频功放电路 (6) 2.3 时钟-复位电路 (6) 2.4 LED显示电路 (6) 2.5 整体电路 (6) 第3章电子琴系统软件设计 (7) 3.1 系统硬件接口定义 (7) 3.2 主函数 (8) 3.2.1 主函数程序 (8) 3.3 按键扫描及LED显示函数 (9) 3.3.1 键盘去抖及LED显示子程序 (10) 3.4 中断函数 (11) 3.4.1 中断程序 (12) 第4章电子琴和调试 (12) 4.1 调试工具 (12) 4.2 调试结果 (13) 4.3 电子琴设计中的问题及解决方法 (14) 第5章电子琴设计总结 (15) 参考文献 (16) 附录 (17)

前言 音乐教育是学校美育的主要途径和最重要内容,它在陶冶情操、提高素养、开发智力,特别是在培养学生创新精神和实践能力方面发挥着独特的作用。近年来,我国音乐教育在理论与实践上都取得了有目共睹的成绩,探索并形成了具有中国特色的、较为完整的音乐教育教学体系。但我国音乐教育的改革力度离素质教育发展的要求还存在一定距离。如今,电子琴作为电子时代的新产物以其独特的功能和巨大的兼容性被人们广泛的接受和推崇。而在课堂教学方面,它拥有其它乐器无法比拟的两个瞬间:瞬间多元素思维的特殊的弹奏方法;瞬间多声部(包括多音色)展示的乐队音响效果的特点。结合电子琴自身强大的功能及独特的优点来进行音乐教育的实施,这样就应该大力推广电子琴进入音乐教室,让电子琴教学在音乐教育中发挥巨大的作用。现代乐器中,电子琴是高新科技在音乐领域的一个代表,体现了人类电子技术和艺术的完美结合。电子琴自动伴奏的稳定性、准确性,以及鲜明的强弱规律、随人设置的速度要求,都更便于人们由易到难、深入浅出的准确掌握歌曲节奏和乐曲风格,对其节奏的稳定性和准确性训练能起到非常大的作用。电子琴所包含的巨量的音乐信息和强大的音乐表现力可以帮助音乐教学更好地贯彻和落实素质教育,更有效地提高人们的音乐素质和能力。目前,市场上的电子琴可谓琳琅满目,功能也是越来越完备。以单片机作为主控核心,设计并制作的电子琴系统运行稳定,其优点是硬件电路简单、软件功能完善、控制系统可靠、性价比较高等,具有一定的实用与参考价值。这就为电子琴的普及提供了方便。 二、电子琴设计要求本设计主要是用AT89C51单片机为核心控制元件,设计一台电子琴。以单片机作为主控核心,与键盘、扬声器等模块组成核心主控制模块,在主控模块上设有7个按键和1个复位按键。本系统主要是完成2大功能:音乐自动播放、电子琴弹奏。关于声音的处理,使用单片机C语言,利用定时器来控制频率,而每个音符的符号只是存在自定义的表中。

电子商务环境下的物流配送有哪些特点

1 物流配送信息化 物流配送信息化表现为物流配送信息的商品化、信息收集的数据库化和代码化、信息处理的电子化和计算机化、信息传递的标准化和实时化、信息存储的数字化等。条码技术(Bar Code)、数据库技术(Database)、电子定货系统(EOS : Electronic Ordering System)、电子数据交换(Electronic Data Interchange,EDI)、快速反应( Quick Response,QR)及有效的客户反映(Effective Customer Response,ECR)、企业资源计划(Enterprise Resource Planning,ERP)等在物流管理中得到广泛应用。没有物流的信息化,任何先进的技术设备都不可能应用于物流领域,信息技术在物流中的应用将会彻底改变世界物流的面貌。 2 物流配送自动化 自动化的基础是信息化,自动化的核心是机电一体化,自动化的外在表现是无人化,自动化的效果是省力化,另外还可以扩大物流作业能力、提高劳动生产率、减少物流作业的差错等。物流自动化有:条码/语音/射频自动识别系统、自动分拣系统、自动存取系统、自动导向车、货物自动跟踪系统等。这些设施在发达国家已普遍用于物流作业流程中,而在我国由于物流业起步晚,发展水平低,自动化技术的普及还需相当长的时间。 3 物流配送网络化 物流领域网络化的基础也是信息化,这里指的网络化有两层含义:一是物流配送系统的计算机通信网络,包括物流配送中心与供应商或制造商的联系要通过计算机网络,另外与下游顾客的联系也要通过计算机网络通信,比如配送中心向供应商提出订单这个过程,就可以使用计算机通信方式,借助于增值网(Value- Added Network,VAN)上的电子定货系统(EOS)和电子数据交换技术(EDI)来自动实现,物流配送中心https://www.wendangku.net/doc/4a12245346.html,通过计算机网络收集下游客户的订货的过程也可以自动完成:二是组织网络化及所谓的企业内部网(Intranet)。如台湾电脑业90年代创造的"全球运筹式产销模式",其基本点是按照客户定单组织生产,生产采取分散形式,将全世界的电脑资源都利用起来,采取外包的形式将一台电脑的所有零部件、元器件、芯片外包给世界各地的制造商去生产,然后通过全球的物流网络将这些零部件、元器件和芯片发往同一个物流配送中心进行组装,由该物流配送中心将组装的电脑迅速发给订户。 物流配送的网络化石物流信息化的必然,是电子商务下物流配送活动的主要特征之一。全球网络资源的可用性及网络技术的普及为物流的网络化提供了良好的外部环境,物流网络化不可阻挡。 4 物流配送智能化 这是物流配送自动化信息化的一种高层次应用。物流配送作业过程大量的运筹和决策,如库存水平的确定、运输搬运路径的选择、自动导向车的运行轨迹和作业控制、自动分拣机的运行、物流配送中心经营管理的决策支持等问题都需要借助于大量的只是来解决。在物流自动化的进程中,物流智能化是不可回避的技术难题。目前专家系统、机器人等相关技术在国际上已经有比较成熟的研究成果,物流智能化已经成为电子商务下物流发展的一个新趋势。

51单片机红绿灯课程设计

1 电源提供方案 为使模块稳定工作,须有可靠电源。因此考虑了两种电源方案:方案一:采用独立的稳压电源。此方案的优点是稳定可靠,且有各种成熟电路可供选用;缺点是各模块都采用独立电源,会使系统复杂,且可能影响电路电平。 方案二:采用单片机控制模块提供电源。改方案的优点是系统简明扼要,节约成本;缺点是输出功率不高。综上所述,选择方案二。 2 显示界面方案 该系统要求完成倒计时功能。基于上述原因,我考虑了二种方案:方案一:采用数码管显示。这种方案只显示有限的符号和数码字符,简单,方便。方案二:采用点阵式LED 显示。这种方案虽然功能强大,并可方便的显示各种英文字符,汉字,图形等,但实现复杂,成本较高。 综上所述,选择方案一。 3 输入方案: 设计要求系统能调节灯亮时间,并可处理紧急情况,我研究了两种方案:方案一:采用8155扩展I/O 口及键盘,显示等。 该方案的优点是:使用灵活可编程,并且有RAM,及计数器。若用该方案,可提供较多I/O 口,但操作起来稍显复杂。 方案二:直接在I/O口线上接上按键开关。 由于该系统对于交通灯及数码管的控制,只用单片机本身的I/O 口就可实现,且本身的计数器及RAM已经够用。

综上所述,选择方案二。 3.1单片机交通控制系统的通行方案设计 设在十字路口,分为东西向和南北向,在任一时刻只有一个方向通行,另一方向禁行,持续一定时间,经过短暂的过渡时间,将通行禁行方向对换。其具体状态如下图所示。说明:黑色表示亮,白色表示灭。交通状态从状态1开始变换,直至状态6然后循环至状态1,周而复始,即如图2.1所示: 图1 交通状态 本系统采用MSC-51系列单片机AT89C51作为中心器件来设计交通灯控制器。实现以下功能:

基于51单片机的智能密码锁

单片机的电子密码锁 目录 第一章绪论......................................................... . (2) 1.1电子密码锁简介......................................................... .. (2) 1.2电子密码锁设计的背景及意 义............................................................................. . (3) 第2章总体设计............................................................................. . (3) 2.1设计分析............................................................................. (3) 2.2系统结构............................................................................. (4) 第3章硬件电路设计............................................................................. (5) 3.1单片机最小系统设计............................................................................. . (5) 3.1.1时钟电路............................................................................. (5) 3.1.2 复位电 路 ............................................................................ . (6) 3.1.3 最小系 统 ............................................................................

单片机课程设计——基于51单片机的温度监控系统设计

单片机课程设计报告 题目:温度监控系统设计 学院:能源与动力工程学院 专业:测控技术与仪器专业 班级: 2班 成员:魏振杰 二〇一五年十二月

一、引言 温度是工业控制中主要的被控参数之一,特别是在冶金、化工、建材、食品、机械、石油等工业中,具有举足重轻的作用。对于不同场所、不同工艺、所需温度高低范围不同、精度不同,则采用的测温元件、测方法以及对温度的控制方法也将不同;产品工艺不同、控制温度的精度不同、时效不同,则对数据采集的精度和采用的控制算法也不同,因而,对温度的测控方法多种多样。 随着电子技术和微型计算机的迅速发展,微机测量和控制技术也得到了迅速的发展和广泛的应用。利用微机对温度进行测控的技术,也便随之而生,并得到日益发展和完善,越来越显示出其优越性。 作为获取信息的手段——传感器技术得到了显著的进步,其应用领域较广泛。传感器技术已成为衡量一个国家科学技术发展水平的重要标志之一。因此,了解并掌握各类传感器的基本结构、工作原理及特性是非常重要的。 为了提高对传感器的认识和了解,尤其是对温度传感器的深入研究以及其用法与用途,基于实用、广泛和典型的原则而设计了本系统。本系统利用传感器与单片机相结合,应用性比较强,本系统可以作为仓库温度监控系统,如果稍微改装可以做热水器温度调节系统、实验室温度监控系统,以及构成智能电饭煲等等。课题主要任务是完成环境温度监测,利用单片机实现温度监测并通过报警信号提示温度异常。本设计具有操作方便,控制灵活等优点。 本设计系统包括单片机,温度采集模块,显示模块,按键控制模块,报警和指示模块五个部分。文中对每个部分功能、实现过程作了详细介绍。整个系统的核心是进行温度监控,完成了课题所有要求。 二、实验目的和要求 2.1学习DS18B20温度传感芯片的结构和工作原理。 2.2掌握LED数码管显示的原理及编程方法。 2.3掌握独立式键盘的原理及使用方法。 2.4掌握51系列单片机数据采集及处理的方法。 三、方案设计

新型物流模式

新型物流模式——虚拟物流中心 导读:虚拟物流中心建立了新型物流模式,发挥虚拟物流中心优势必须与企业拓展的ERP系统相结合,实现信息链对企业内外供应链流程的整体有效监控,才能发挥其虚拟物流、网络物流、高效物流的优势,为企业创造价值。 虚拟物流中心使物流与供应链过程虚拟化,拓展了现代物流的内涵与外延,促进了企业生产与物流运作机制的改变,使企业与其供应商、销售代理、客户之间建立统一的供应链联系,形成一种相对稳定、利益共享的合作伙伴关系。虚拟物流中心的功能包括沟通供应商、沟通客户,进行商品目录管理、在途跟踪以及产品库存、运输的信息化管理,并可通过网上拍卖、网上采购与销售、网上中介市场、网上分销中心等方式促进物流合作。笔者认为虚拟物流中心建立了新型物流模式,发挥虚拟物流中心优势必须与企业拓展的ERP系统相结合,实现信息链对企业内外供应链流程的整体有效监控,才能发挥其虚拟物流、网络物流、高效物流的优势,为企业创造价值。 一、虚拟物流中心的供应链整合型物流模式 互联网的出现是计算机与通信技术高度融合的结果,不仅使通信和计算机的功能倍增,而且使之达到智能化的高度。这些构成了虚拟物流中心的技术基础,也是虚拟物流中心超越传统实体物流中心的优势所在。

传统商业的经营模式、物流手段都已经不适应全球化大生产的需要,无法面对全球商贸集团化、连锁化、国际化的挑战。虚拟物流中心为传统物流向现代物流转化提供了捷径。现代化物流是一个全方位的概念,它包括物流作业环节采购、销售、储存、运输全过程的虚拟化、网络化、高效化,包括物流设施与技术装备的自动化,更包含了新型的物流管理模式及运作机制,实现供应链的整合创新。包含了科学的物流管理手段、标准的规范以及核算方式的改革。尤其是在进入信息时代的今天,尤其要将物流的信息化放在首位,实现信息资源的开发、利用和充分共享。 虚拟物流中心不仅仅是用电子数码通讯代替传统的纸张单证,而且是由相关行业的内在综合而使组织内部与组织之间的业务高度同步,达到物流的根本变革,完成供应链的整体创新。现代物流的一个主要特征是经营模式和观念的根本转变,传统物流企业几乎是清一色的运输企业,经营策略是以运输为中心,现代物流要求以客户为中心,向大型化、网络化、集团化、虚拟化方向发展。虚拟物流中心实行实时控制、柔性管理,实现包装、销售、存储、调运、付款等物流环节的电子化处理。这种物流方式不受地理位置、储运渠道所有权的限制,物流范围可以包括各产业、各方面,利用虚拟物流中心,生产企业可以做到运输管理、库存管理、财务管理、采购管理、信息管理的高度协调与一致,实现商品选配、商品储运、会计核算的自动化与网络化,集多种功能于一体,谋求供应链整体效益。

51单片机课程设计

课程设计说明书
课程设计名称






学生姓名
指导教师
单片机原理及应用课程设计 电子信息工程 140405 20141329 李延琦 胡黄水
2016 年 12 月 26 日

课程设计任务书
课程设计 题目
酒精测试仪
起止日期
2016 年 12 月 26 日— 2017 年 1 月 6 日
设计地点
计算机科学与工程学 院单片机实验室 3409
设计任务及日程安排: 设计任务:分两部分: (一)、设计实现类:进行软、硬件设计,并上机编程、联线、调试、 实现; 1.电子钟的设计 2.交通灯的设计 3.温度计的设计 4.点阵显示 5.电机调速 6.电子音乐发声(自己选曲) 7.键盘液晶显示系统 (二)、应用系统设计类:不须上机,查资料完成软、硬件设计画图。 查资料选定题目。 说明:第 1--7 题任选其二即可。(二)里题目自拟。 日程安排: 本次设计共二周时间,日程安排如下: 第 1 天:查阅资料,确定题目。 第 2--4 天:进实验室做实验,连接硬件并编写程序作相关的模块实验。 第 5--7 天:编写程序,并调试通过。观察及总结硬件实验现象和结果。 第 8--9 天:整理资料,撰写课程设计报告,准备答辩。 第 10 天:上交课程设计报告,答辩。 设计报告要求:
1. 设计报告里有两个内容,自选题目内容+附录(实验内容),每 位同学独立完成。 2. 自选题目不须上机实现,要求能正确完成硬件电路和软件程序 设计。内容包括: 1) 设计题目、任务与要求 2)硬件框图与电路图 3) 软件及流程图 (a)主要模块流程图 (b)源程序清单与注释 4) 总结 5) 参考资料 6)附录 实验上机调试内容
注:此任务书由指导教师在课程设计前填写,发给学生做为本门课程设计 的依据。

单片机课程设计——基于C51简易计算器

单片机双字节十六进制减法实验设计 摘要 本设计是基于51系列的单片机进行的双字节十六进制减法设计,可以完成计 算器的键盘输入,进行加、减、3位无符号数字的简单运算,并在LED上相应的显示结果。 设计过程在硬件与软件方面进行同步设计。硬件方面从功能考虑,首先选择内部存储资源丰富的AT89C51单片机,输入采用5个键盘。显示采用3位7段共阴极LED动态显示。软件方面从分析计算器功能、流程图设计,再到程序的编写进行系统设计。编程语言方面从程序总体设计以及高效性和功能性对C语言和汇编语言进行比较分析,针对计算器四则运算算法特别是乘法和除法运算的实现,最终选用KEIL公司的μVision3软件,采用汇编语言进行编程,并用proteus 仿真。 引言 十六进制减法计算器的原理与设计是单片机课程设计课题中的一个。在完成理论学习和必要的实验后,我们掌握了单片机的基本原理以及编程和各种基本功能的应用,但对单片机的硬件实际应用设计和单片机完整的用户程序设计还不清楚,实际动手能力不够,因此对该课程进行一次课程设计是有必要的。 单片机课程设计既要让学生巩固课本学到的理论,还要让学生学习单片机硬件电路设计和用户程序设计,使所学的知识更深一层的理解,十进制加法计算器原理与硬软件的课程设计主要是通过学生独立设计方案并自己动手用计算机电路设计软件,编写和调试,最后仿真用户程序,来加深对单片机的认识,充分发挥学生的个人创新能力,并提高学生对单片机的兴趣,同时学习查阅资料、参考资料的方法。 关键词:单片机、计算器、AT89C51芯片、汇编语言、数码管、加减

目录 摘要 (01) 引言 (01) 一、设计任务和要求............................. 1、1 设计要求 1、2 性能指标 1、3 设计方案的确定 二、单片机简要原理............................. 2、1 AT89C51的介绍 2、2 单片机最小系统 2、3 七段共阴极数码管 三、硬件设计................................... 3、1 键盘电路的设计 3、2 显示电路的设计 四、软件设计................................... 4、1 系统设计 4、2 显示电路的设计 五、调试与仿真................................. 5、1 Keil C51单片机软件开发系统 5、2 proteus的操作 六、心得体会.................................... 参考文献......................................... 附录1 系统硬件电路图............................ 附录2 程序清单.................................. 一、设计任务和要求

51单片机课程设计 AD转换

课程设计报告 华中师范大学武汉传媒学院 传媒技术学院 电子信息工程2011 仅发布百度文库,版权所有.

AD转换 要求: A.使用单片机实现AD转换 B.可以实现一位AD转换,并显示(保留4位数字)设计框图:

方案设计: AD转换时单片机设计比较重要的实验。模数转换芯片种类多,可以满足不同用途和不同精度功耗等。 外部模拟量选择的是简单的电位器,通过控制电位器来改变模拟电压。显示电压值采用一般的四位七段数码管。而AD转换芯片采用使用最广的ADC0809 ADC0809芯片有28条引脚,采用双列直插式封装,如图所示。 下面说明各引脚功能: ?IN0~IN7:8路模拟量输入端。 ?2-1~2-8:8位数字量输出端。 ?ADDA、ADDB、ADDC:3位地址输入线,用于选通8路模拟输入中的一路。?ALE:地址锁存允许信号,输入端,高电平有效。 ?START: A/D转换启动脉冲输入端,输入一个正脉冲(至少100ns宽)使其启动(脉冲上升沿使0809复位,下降沿启动A/D转换)。 ?EOC: A/D转换结束信号,输出端,当A/D转换结束时,此端输出一个高电平(转换期间一直为低电平)。 ?OE:数据输出允许信号,输入端,高电平有效。当A/D转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量。 ?CLK:时钟脉冲输入端。要求时钟频率不高于640KHz。

?REF(+)、REF(-):基准电压。 ?Vcc:电源,单一+5V。 ?GND:地 工作原理: 首先输入3位地址,并使ALE=1,将地址存入地址锁存器中。此地址经译码选通8路模拟输入之一到比较器。START上升沿将逐次逼近寄存器复位。下降沿启动A/D转换,之后EOC输出信号变低,指示转换正在进行。直到A/D转换完成,EOC 变为高电平,指示A/D转换结束,结果数据已存入锁存器,这个信号可用作中断申请。当OE输入高电平时,输出三态门打开,转换结果的数字量输出到数据总线上。 本次实验采用中断方式 把表明转换完成的状态信号(EOC)作为中断请求信号,以中断方式进行数据传送。 不管使用上述哪种方式,只要一旦确定转换完成,即可通过指令进行数据传送。 首先送出口地址并以信号有效时,OE信号即有效,把转换数据送上数据总线,供单片机接受。 采用中断可以减轻单片机负担。并可以使程序有更多的空间作二次开发。

(完整版)基于51单片机的4人抢答器课程设计

基于51单片机的4人抢答器设计 设计要求: 以单片机为核心,设计一个4位竞赛抢答器:同时供4名选手或4个代表队比赛,分别用4个按钮S0~S3表示。 设置一个系统清除和抢答控制开关S,开关由主持人控制。 抢答器具有锁存与显示功能。即选手按按钮,锁存相应的编号,并在优先抢答选手的编号一直保持到主持人将系统清除为止。 抢答器具有定时抢答功能,且一次抢答的时间由主持人设定(如30秒)。 当主持人启动“开始”键后,定时器进行减计时,同时扬声器发出短暂的声响,声响持续的时间为0.5s左右。 参赛选手在设定的时间内进行抢答,抢答有效,定时器停止工作,显示器上显示选手的编号和抢答的时间,并保持到主持人将系统清除为止。 如果定时时间已到,无人抢答,本次抢答无效,系统报警并禁止抢答,定时显示器上显示00。 工作原理: 通过键盘改变抢答的时间,原理与闹钟时间的设定相同,将定时时间的变量置为全局变量后,通过键盘扫描程序使每按下一次按键,时间加1(超过30时置0)。同时单片机不断进行按键扫描,当参赛选手的按键按下时,用于产生时钟信号的定时计数器停止计数,同时将选手编号(按键号)和抢答时间分别显示在LED上。

#include #define uchar unsigned char #define uint unsigned int uchar num; //定义中断变量,num计满20表示1秒时间到uchar num1; //十秒倒计时显示初始值 uchar flag1,flag2; //清零键及开始键按下标志位 uchar flag3,flag4=0; //定义键盘按下标志位 uchar code table[]={ 0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07, 0x7f,0x6f}; //数码管编码

最新物流配送试题及答案.docx

一、单选 1.目前在我国大中型物流企业中大都普遍采用( B),它的突出特点是各管理层的负责任人自上而下进行垂直领导 ]= A.事业部组织机构 B.直线职能结构 C.职能制形式 D.矩阵式组织机构形式 2.(B)具有运距短和反应速度快的特点 ,能从事多品种、少批量、多用户的配送 A.共同配送中心 B.零售供货配送中心 C.专业配送中心 D.区域性配送中心 3.(B)的补货的原则较适合与分批拣货时间固定、且处理紧急追加订货时 间也固定的情况 A.一次补足 B.定时补足 C.定量补足 D.不定时补足 4.你认为下列有关配送的理解(D)是正确的。 A.配送实质就是送货,和一般送货没有区别 B.配送要完全遵守“按用户要求”,只有这样才能做到配送的合理化 C.配送是物流中一种特殊的、综合的活动形式,与商流是没有关系的 D.配送是“配”和“送”的有机结合,为追求整个配送的优势,分拣、配 货等项工作是必不可少的 5.请问关于配送的功能,下列四个选项中(C)是错误的。 A.有益于物流运动实现合理化 B.有利于合理配置资源 C.只要做好配和送,不需要开发什么新技术 D.可以降低物流成本,可以促进生产快速发展 6.下列的配送中心( C)是按功能角度来分类。 A.零售商型配送中心 B、批发商型配送中心 C、加工配送中心 D、化妆品配送中心 7.配送中心应具备健全的(A)。 A.功能 B.工作 C.作业 D.流程 8.配送中心的配送功能属于(A)。

A.核心功能 B.辅助功能 C.基础功能 D.一般功能 9.随着物流配送系统的计算机网络系统的建立和电子商务的发展,物流配送 中心于供应商、制造商及顾客之间的联系可通过( A)。 A、物流配送系统的计算机通信网络实现 B、打电话实现 C、邮局寄信实现 D、上门服务实 现 10.设置配送中心的规模、确定配送范围、配送中心选址,以及配送中心 内部布局等工作属于( A): A 制定配送中心计划 B 制定配送计划 C 下达配送计划 D 配送店按计划配送 11.确定用户的送达地、货物的品种、规格、数量、送货时间等;确定配 送车辆以及装车货物的比例、配送路线等工作属于:( C) A 制定配送中心计划 B 制定配送计划 C 下达配送计划 D 配送店按计划配送 12.在设计配送系统时,之所以要考虑厂商的信息化程度,是因为厂商的 信息化程度会:( A) A 影响提货或进货成本 B 影响作业成本 C 影响管理成本 D 决定所选车型 13.在设计输配送系统时,之所以要考虑厂商下货点的空间和地理分布这 些因素,是因为这些因素: A 影响提货或进货成本 B 影响作业成本 C 影响管理成本 D 决定所选车型 14.所谓拣选,就是按订单或出库单的要求,从( D),并放置在指定地点的 作业。 A.转运场所选出物品;B.检验场所选出物品; C.加工场所选出物品;D.储存场所选出物品。 15.配送功能的要素为:(B)。

单片机课程设计——基于C51简易计算器

单片机十进制加法计算器设计 摘要 本设计是基于51系列的单片机进行的十进制计算器系统设计,可以完成计 算器的键盘输入,进行加、减、乘、除3位无符号数字的简单四则运算,并在LED上相应的显示结果。 设计过程在硬件与软件方面进行同步设计。硬件方面从功能考虑,首先选择内部存储资源丰富的AT89C51单片机,输入采用4×4矩阵键盘。显示采用3位7段共阴极LED动态显示。软件方面从分析计算器功能、流程图设计,再到程序的编写进行系统设计。编程语言方面从程序总体设计以及高效性和功能性对C 语言和汇编语言进行比较分析,针对计算器四则运算算法特别是乘法和除法运算的实现,最终选用全球编译效率最高的KEIL公司的μVision3软件,采用汇编语言进行编程,并用proteus仿真。 引言 十进制加法计算器的原理与设计是单片机课程设计课题中的一个。在完成理论学习和必要的实验后,我们掌握了单片机的基本原理以及编程和各种基本功能的应用,但对单片机的硬件实际应用设计和单片机完整的用户程序设计还不清楚,实际动手能力不够,因此对该课程进行一次课程设计是有必要的。 单片机课程设计既要让学生巩固课本学到的理论,还要让学生学习单片机硬件电路设计和用户程序设计,使所学的知识更深一层的理解,十进制加法计算器原理与硬软件的课程设计主要是通过学生独立设计方案并自己动手用计算机电路设计软件,编写和调试,最后仿真用户程序,来加深对单片机的认识,充分发挥学生的个人创新能力,并提高学生对单片机的兴趣,同时学习查阅资料、参考资料的方法。 关键词:单片机、计算器、AT89C51芯片、汇编语言、数码管、加减乘除

目录 摘要 (01) 引言 (01) 一、设计任务和要求............................. 1、1 设计要求 1、2 性能指标 1、3 设计方案的确定 二、单片机简要原理............................. 2、1 AT89C51的介绍 2、2 单片机最小系统 2、3 七段共阳极数码管 三、硬件设计................................... 3、1 键盘电路的设计 3、2 显示电路的设计 四、软件设计................................... 4、1 系统设计 4、2 显示电路的设计 五、调试与仿真................................. 5、1 Keil C51单片机软件开发系统 5、2 proteus的操作 六、心得体会.................................... 参考文献......................................... 附录1 系统硬件电路图............................ 附录2 程序清单..................................

相关文档
相关文档 最新文档