北邮密码锁小学期报告

北邮密码锁小学期报告
北邮密码锁小学期报告

北京邮电大学

电路综合实验报告

实验题目:

学生姓名:

班级:

小班学号:

同组姓名:

E-MAIL:

目录

一.设计目的、用途、功能二.硬件设计

三、软件设计

四、实验器材

五、实验过程

六、分工情况

七、实验总结和心得体会

八、参考文献

九、代码

摘要:本项目是做一个基于ATMega 16单片机的电子密码锁,通过4×4键盘和LCD液晶显示,实现了密码锁的密码验证、重新设置、输入错误后报警直到复位后启动倒计时功能,在倒计时内键盘自动锁死,倒计时结束后恢复所有功能等一些基本功能,通过LCD的巧妙使用实现友好的人机界面功能,更具人性化,除此之外还创新性的实现了LCD的开锁功能和键盘的重新定义。通过LCD的开锁功能和对键盘的重新定义以及倒计时功能可以有效地防止密码被盗,同时也降低了成本,便于携带安装。

关键字:ATMega16 单片机、密码锁、键盘、 LCD 、开锁、倒计时

一.设计目的、用途、功能

1.设计目的

随着科技的发展,安全问题越来越受到人们重视,不仅居家安全受到重视,出门在外行李物品的安全问题也受到了很多关注,在此基础上各种安全产品相继问世,如指纹防盗,红外防盗等,虽然这类产品的安全性较高,但其成本也同样较高,并且携带安装不方便,这种种缺点限制了其发展。本设计的目的就是为了在保证高安全性的前提下,实现降低成本,方便携带安装的功能,真正服务于人民。

当然对于密码锁,我们接触最多的就是取款机了,我们设计的这个密码锁,与众不同的地方就是我们可以让我们的液晶显示屏无限循环的显示操作指南,只有当你按下键盘上的任意一个键的时候才可以终止这种循环。还有一点,就是我们的密码锁加了倒计时这个功能,当输入错误次数超过三次的时候,就不能再输入了,更加安全。

2. 设计用途

由于本设计成本较低且安全性能稳定,可适用于家庭防盗、行李箱、车载行李箱等一些安全性能要求不高且需要便携的产品上,其安全性能远远优于同等成本的安全性。其中输入密码错误无限报警和自动锁死的功能能提高用户的警觉性,降低失窃率。更重要的是本设计的键盘重新定义的思想可移植到自动提款机、公共场合的提款装置等,可以防止用户输入密码时被别人偷看、窃取等,增加用户提款时的安全性。LCD具有良好的人机友好界面,在未开锁之前显示“welcome”,并且只有知道如何开锁才能使用密码锁,进一步提高了安全性能。

3.设计功能

(1)系统功能:

1、密码键盘的输入:包括0-9数字输入、A-F为功能键。

键盘默认如下:

1 2 3 4

5678

90AB

CDEF

其中A代表reset(复位),B代表*,C代表关锁,D 代表clear(删除),E代表change (修改),F代表#。

2、液晶显示:主要用于液晶显示屏将具体输入数字用*号代替,便于用户看到自己是

否输入六位。最开始显示“Welcome”字样,然后显示操作指南

“A=reset,B=*,C=close,D=del,E=change,F=#,”密码输入正确显示“right”,密码输入

错误显示“wrong”。

(2)处理技术:

1、密码正误信息输出:“确认”输入后,扫描键盘,与EEPROM中的内置密码相比较,

若相同,进入“密码重置”功能;否则,在三次提示输入错误后蜂鸣器鸣响报警。

2、密码重置:密码正确后,提示是否修改密码,修改按“g”。两次输入一致后修改内

置密码并液晶屏文字提示。否则进入“开锁功能”。

(3)扩展功能:

倒计时功能:密码三次输入错误后需间隔1分钟(或更久)后才能再次输入,需两位数码管进入倒计时。

液晶显示变幻:可实现闪烁,无限滚动等效果(利用C语言编程实现)。

基本原理:

二.硬件设计

1.系统硬件设计思路

系统以Atmega16单片机为控制核心,4*4键盘作为输入模块,1602液晶显示屏作为显示模块实现密码锁的各项功能。

(1)系统硬件方框图如下:

(2)系统工作的流程图如下

2.电路连接原理

(1)键盘电路:4*4键盘采用行列式键盘,使用单片机的8个I/O端口就可以控制16个按键。键盘的8个引脚分别接在PORTB的8个端口。对键盘进行扫描时,可以采用查询扫描的方法:先对一行进行扫描,再对列进行扫描,直至将每行每列都扫描一次,通过单片机端口电平的变化,判断哪个按键被按下。

(2)LCD液晶显示电路:1602液晶主要用于与用户交互,提示密码输入状态和显示结果。其中LCD的7~14号引脚分别连结单片机的PORTA各端口,用于数据的并行传输。4~6号引脚与PC0,PC1,PC7相连,分别控制RS(数据/指令寄存器选择)、RW(读写选择引脚)、E(读写使能引脚)。相关功能,我们参照1602的数据手册。

(3)蜂鸣器电路:蜂鸣器电路用于报警。当密码输入错误时,单片机的PD1端口便会输出高电平,蜂鸣器即发出报警声。

(4)开锁电路:在此,用指示灯模拟继电器。当密码输入正确时,单片机的PD0端口便会输出高电平,此时发光二极管发光。如果二极管亮,说明锁已开;如果不亮,则锁未打开。3.电路原理图

三、软件设计

1.程序设计思想

(1)键盘扫描:键盘扫描程序的流程图如下图所示。对键盘进行查询扫描,确定有键按下后,读取键值,进行延时去抖,再次读取键值,若两次键值相等则返回键值。

一般情况下,我们运用软件进行延时去抖,通常用delay_ms(10),在此期间CPU不能进行其它工作。

(2)LCD显示程序:根据1602的数据手册,我们可以针对其各引脚的定义和内部结构,定义显示字符函数、显示字符串函数、清屏函数和初始化函数,在后续程序中调用即可。(3)整体流程:此程序通过设置多个全局变量把各部分的程序统一成为整体。其中input_sign 用于标记是否有键按下,当其为1时代表有键按下;state用于标记功能,state=0代表输入密码,state=1代表密码输入成功,state=2代表改密码,state=3代表修改键盘,state=4代表功能选择;数组password[]用于存储密码;数组key[][]用于存储键值。运用if语句即可实现

各种功能。

五、实验过程

1.实验历程

(1)9月22日确定设计方案

(2)9月23日-25日上午第一实验周期

9月23日,上午进行视频学习,下午完成电路的一些基本的连接。

9月24日上午,检查硬件和管脚。观看关于键盘和液晶显示的所有视频。有一个初步的想法。完成所有电路的连线和布局。

9月24日下午,确定原设计方案下管脚不够。更改设计方案:取消数码管,准备将倒计时功能模块置于液晶屏上显示。此时出现芯片无法写入的情况。

9月25日上午,和同组同学经过多方排除故障原因,最终更换芯片解决问题。编写扫描键盘和在液晶显示屏上两个大函数。

(3)9月25日中午-9月27日上午第二实验周期

9月25日中午,完成线路重新设计及布局。进入单步功能实现及测试。

9月25日下午,按照设计思想编写代码,主要是写键盘控制状态的那个功能函数,主要解决键盘控制不了显示屏的问题

9月26日上午,解决了键盘的控制问题。然后检测并实现了前边写的LED双行显示功能。

9月26日下午,编好了显示屏和键盘的所有函数,并调试成功。

(3)9月26日晚至9月27日上午

26日晚调试基本功能成功。并经过十几次的测试,解决了好多细小的问题。和同伴编写了倒计时的代码。

27日上午,在其基础上添加显示指南代码,进行整体功能调试。并请老师验收了实验。

2.系统测试过程和结果(截图)

(1)欢迎界面(2)操作指南无限循环

(3)当任意按一个键,进入键盘解锁界面(4)进入输入密码界面

(5)输入六位密码(6)判断正误(左边正确,右边错误)

(7)如果正确,进入判断是否修改密码界面(8)修改密码,输入两次确认

(9)如果输入错误达到三次,进入倒计时(10)倒计时结束,恢复到初始状态

六、分工情况

(1)分工:

李向前:在第一次实验周期中解决电路连接中管脚不够,芯片无法写入的问题,确定解决方案。负责LED显示屏代码的编写和原理研究,编程实现双行滚动显示的功能段代码,并在最后实验调试中发挥了较大作用。

闫圆圆:负责两次实验周期中的布线工作。认真研究键盘原理,实现键盘模块功能,编写了键盘的扫描函数和键盘相应状态控制函数,当然也完成了其它一些小函数的编写。

在最后实验调试中提出了很多宝贵意见。

(2)合作:倒计时部分代码由双方讨论决定。两人一起完善出了最终的代码。在遇到没有预期的功能时,两个人总是携手一起解决。

七、实验总结和心得体会

(1)实验总结

①概括这次实验

本项目是做一个基于ATMega 16单片机的电子密码锁,通过4×4键盘和LCD液晶显示,实现了密码锁的相应功能。

我们的出发点是设计出既安全又成本低的密码锁。我们的密码锁有如下功能:密码验证、修改密码、输入错误后鸣笛等基本功能,当然也有复位后启动倒计时功能、显示操作指南等两个创新功能。

我们收获了很多基础知识,比如说:对键盘进行扫描时,可以采用查询扫描的方法,即先对一行进行扫描,再对列进行扫描,直至将每行每列都扫描一次,通过单片机端口电平的变化,判断哪个按键被按下。当然,我们也掌握了液晶显示屏的各个管脚的左右,也掌握了ATmega16的各个管脚的作用。

自然,我们不仅收获了上面所说的知识,也锻炼了自己的动手能力和解决问题的能力。最重要的是也培养了我们团结协作的能力。

②实验中遇到的问题以及解决方案

有一句话说的好“Man errs so long as he strives”,意思也就是说,人只要奋斗就会犯错误。这次实验真的出现了好多错误,但是最终我们都克服了它们。

1.本身是打算用数码管显示倒计时的,发现它如预期的一样,PC2-PC5管脚不能用,

尝试改变它的熔丝位试一试,结果以失败告终。

2.可能是由于上面修改熔丝位,或者连电路的时候出了一些小问题,我们的液晶显示

屏就是不能用。之后拆了原来辛辛苦苦连的电路,只是往单片机里写一些控制

二极管发光的代码,也写不进去了。最后判断是单片机锁死了,我们换了一个

ATmega16芯片后,终于解决了问题。

3.当然,我的主要工作是键盘模块。我认真的看了视频,但是,当写入代码的时候发

现,不能控制键盘,而且按#键的时候会发生复位问题,当时觉得很奇怪。后来

经过不断地探索,发现是判断按键的那段代码的思路错了,最终可以了,但是

奇怪的是,最右边的那一排,一按就复位了。后来发现是导线错连了一位,有

一根导线,连到了reset引脚。最终解决了这个问题。

4.紧接着就是显示屏的代码问题,会遇到一些字符显示太快,或者是没有达到预期的

结果,但是都通过不断地修改断码来解决问题。距离说一下,就是我要实现的

功能是按了*键之后,显示”press #”,但是每次都显示“press *”,后来发现

是函数里有一个case少了一个break。

5.最后呢是显示倒计时,刚开始显示乱码。最后写了这样一个函数LCD_show(m,n);

利用for循环,把数组里的0,1,2等换成‘0’,‘1’,‘2’才解决了问题。

(2)心得体会

一分耕耘一分收获,这次实验,把这句话展现的淋漓尽致。我想在实验成功的那一刹那,就是对我们这历时两周的忙碌最好的报答。

这次实验还算顺利,在规定日期前就完成了任务。时间呢,可能大部分花费在解决一些不可预知的问题上了,无论是连电路,还是写代码,虽然也会出现问题,整体来说还算顺利。

很喜欢这样的小学期,它不仅可以增长我们的知识,还可以锻炼我们的动手能力,还可以增进同学之间团结互助的感情。这样的小学期,充满了乐趣,探索和收获。

有时候一整天都待在实验室,虽然说累,但是感觉整个人都充满了能力。怀揣着一份新奇,不断尝试,感觉那样的日子很充实,很快乐。

再来说说这次实验,真的是很用心的看视频,然后动手做流水灯,刚开始拿着ATmega16和面包板,真的感觉很新奇,在这之前都没有接触过呢。看着视频,当看到流水灯工作的时候,觉得那是我见过最美的灯了。接着呢,就是用2个数码管做一个秒表计时器,实现按下按键后能中断的功能。感觉中断真的是较难的一个知识了,视频都看了好多编,最后才搞清楚。中间放假三天,然后我们开始着手设计方案,找自己感兴趣的课题,当然也有想过,做一个更复杂的,更好玩的。有想过去做一个游戏机,类似快乐大本营的那个拼音游戏,把它做到一个板子上,玩着更方便。但是后来觉得无法突破判断是否正确的那个环节,所以就结束了那个想法。后来又考虑做一个智能垃圾箱,可以用手的感应去控制垃圾箱的开关,觉得模拟起来对于材料要求较高,所以最终做一个密码锁,即使用,又在我们的能力范围内。

当然对于密码锁,我们接触最多的就是取款机了,我们设计的这个密码锁,与众不同的地方就是我们可以让我们的液晶显示屏无限循环的显示操作指南,只有当你按下键盘上的任意一个键的时候才可以终止这种循环。还有一点,就是我们的密码锁加了倒计时这个功能,当输入错误次数超过三次的时候,就不能再输入了,更加安全。

总之,这次实验真的收获了很多,虽然遇到的问题很多,但是解决问题的过程真的是受益匪浅。

八、参考文献

参考资料:

1、《基于AVR 的单片嵌入式系统原理与实践应用》华东师范大学电子科学技术系马潮

2、《avr单片机原理及测控工程应用》

代码

#include

#include

#define uchar unsigned char

#define uint unsigned int

unsigned char key_stime_ok;

unsigned char key_temp=0;

unsigned char error=0, number=0;

unsigned char key_stime_counter;

unsigned char animation_state=0;

unsigned char code_number[6], temp1[6],temp2[6];

int password[6]={6,6,6,6,6,6};

uchar time_show[]={'0','1','2','3','4','5','6','7','8','9',':'};

uchar instr[]="A=reset,B=*,C=close,D=del,E=change,F=#,";

void xianshi(uchar a[]);

#define No_key 255

#define K1_1 1

#define K1_2 2

#define K1_3 3

#define K1_4 4

#define K2_1 5

#define K2_2 6

#define K2_3 7

#define K2_4 8

#define K3_1 9

#define K3_2 0

#define K3_3 'r'

#define K3_4 '*'

#define K4_1 's'

#define K4_2 'c'

#define K4_3 'g'

#define K4_4 '#'

#define Key_mask 0b00001111

void delay(uint ms)//延时函数

{

uint i,j;

for(i=0;i

{

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

}

}

void write_com(uchar com)//写指令

{

PORTC &= ~0x01;

PORTC &= ~0x02;

PORTA = com;

PORTC |= 0x80;

delay(1);

PORTC &= ~0x80;

}

void write_dat(uchar dat)//写数据

{

PORTC |= 0x01;

PORTC &= ~0x02;

PORTA = dat;

PORTC |= 0x80;

delay(1);

PORTC &= ~0x80;

}

void LCD_show(int x, int y)//显示倒计时{

write_com(0x80+3);

delay(5);

write_dat(time_show[x]);

write_com(0x80+4);

delay(5);

write_dat(time_show[y]);

//delay(35);

delay(1);

}

void show(uchar j)//显示屏

{

uchar i;

write_com(0x0c);

delay(5);

write_com(0x06);

delay(5);

write_com(0x80+0);

delay(5);

switch(j)

{

case 0:

{

write_com(0x01);

delay(5);

write_com(0x80+9);

delay(5);

uchar table[] = "Welcome!";//显示welcome

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

{

write_dat(table[i]);

delay(1);

}

delay(10);

for (i=0;i<9;i++)//移动9次

{

write_com(0x18);

delay(10);

}

xianshi(instr);

break;

}

case 1:

{

uchar table1[] = "*";

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

{

write_dat(table1[i]);

delay(1);

}

break;

}

case 2:

{

write_com(0x01);

delay(5);

uchar table2[] = "press #";

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

{

write_dat(table2[i]);

delay(1);

}

break;

}

case 3:

{

write_com(0x01);

delay(5);

uchar table3[] = "press *";

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

{

write_dat(table3[i]);

delay(1);

}

break;

}

case 4:

{

uchar table4[] = "then press #";

write_com(0x80+40);//让字符在第二行显示delay(5);

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

{

write_dat(table4[i]);

delay(1);

}

break;

}

case 5:

{

write_com(0x01);

delay(5);uchar table5[] = "input the code";

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

{

write_dat(table5[i]);

delay(1);

}

break;

}

case 6:

{

write_com(0x01); //先清屏

delay(5);

uchar table6[] = "right";

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

{

write_dat(table6[i]);

delay(1);

}

break;

}

case 7:

{

uchar table7[] = "open";

write_com(0x80+40);//让字符在第二行显示

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

{

write_dat(table7[i]);

delay(1);

}

break;

}

case 8:

{

uchar table8[] = "press g";

write_com(0x80+40);//让字符在第二行显示

delay(5);

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

{

write_dat(table8[i]);

delay(1);

}

break;

}

case 9:

{

write_com(0x01);

delay(5);

uchar table9[] = "wrong";

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

{

write_dat(table9[i]);

delay(1);

}

break;

}

case 10:

{

write_com(0x01);

delay(5);

uchar table10[] = "change code";

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

{

write_dat(table10[i]);

delay(1);

}

break;

}

case 11:

{

write_com(0x01);

delay(5);

uchar table11[] = "input again";

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

{

write_dat(table11[i]);

delay(1);

}

break;

}

case 12:

{

write_com(0x01);

delay(5);

uchar table12[] = "ok";

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

{

write_dat(table12[i]);

delay(1);

}

break;

}

case 13:

{

write_com(0x01);

delay(5);

uchar table13[] = "modify password";

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

{

write_dat(table13[i]);

delay(1);

}

break;

}

case 14:

{

write_com(0x01);

delay(5);

uchar table14[] = "fail";

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

{

write_dat(table14[i]);

delay(1);

}

break;

}

default :

break;

}

}

unsigned char read_keyboard()

{

static unsigned char key_state = 0, key_value, key_line;

unsigned char key_return = No_key,i;

switch (key_state)

{

case 0:

key_line = 0b00010000;

for (i=1; i<=4; i++) // 扫描键盘

{

PORTB = ~key_line;

PORTB = ~key_line;

key_value = Key_mask & PINB;

if (key_value == Key_mask)

key_line <<= 1; // 没有按键,继续扫描

else

{

key_state++; // 有按键,停止扫描

break;

}

}

break;

case 1:

if (key_value == (Key_mask & PINB)) // 消抖处理,键盘编码,返回编码值

{

switch (key_line | key_value)

{

case 0b00011110:

key_return = K1_1;

break;

case 0b00101110:

key_return = K1_2;

break;

case 0b01001110:

key_return = K1_3;

break;

case 0b10001110:

key_return = K1_4;

break;

case 0b00011101:

key_return = K2_1;

break;

case 0b00101101:

key_return = K2_2;

break;

case 0b01001101:

key_return = K2_3;

break;

case 0b10001101:

key_return = K2_4;

break;

case 0b00011011:

key_return = K3_1;

break;

case 0b00101011:

key_return = K3_2;

break;

case 0b01001011:

key_return = K3_3;

break;

case 0b10001011:

key_return = K3_4;

break;

case 0b00010111:

key_return = K4_1;

break;

case 0b00100111:

key_return = K4_2;

break;

case 0b01000111:

key_return = K4_3;

break;

case 0b10000111:

key_return = K4_4;

break;

}

key_state++; // 转入等待按键释放状态}

else

key_state--; // 两次行电平不同返回状态0,(消抖处理)

break;

case 2: // 等待按键释放状态

PORTB = 0b00001111; // 列线全部输出低电平

PORTB = 0b00001111; // 重复送一次

if ( (Key_mask & PINB) == Key_mask)

key_state=0; // 行线全部为高电平返回状态0

break;

}

return key_return;

}

void keyboard_states()

{

unsigned char i, j=0;

if(key_temp=='s')// ----关锁

{

number = 0;

error=0;

PORTD = 0x00;

animation_state=0;

}

if(animation_state==0)// -----显示

//只有当用户先按"*",再按"#"键时,密码锁才能进入工作状态。

{

if(key_temp=='*')

{

show(2);

animation_state++;

}

if(key_temp!='*')

{

show(3);

show(4);

delay(5);

}

}

else if(animation_state==1)// -------先按* 后按# 然后才能解锁

{

if(key_temp=='#')

{

show(5);

animation_state++;

}

}

else if(animation_state==2)// ------输入六位密码(除了#和c以外的键){

if(key_temp=='#')

animation_state++;

else if(key_temp=='c')

{

number=0;

show(5);

}

else

{

if(number==0)//输入密码先清屏,然后输入密码(小于6位)

{

write_com(0x01);

delay(5);

}

write_com(0x0c);

delay(5);

write_com(0x06);

delay(5);

write_com(0x80+number);

delay(5);

uchar table1[] = "*";

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

{

write_dat(table1[i]);

delay(1);

}

code_number[number]=key_temp;

number++;

}

}

else if(animation_state==3)

{

if(number==6)

{

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

{

if(code_number[i]==password[i]) //判断密码正误

j++;

北京邮电大学数电实验一实验报告

北京邮电大学数字电路与逻辑 设计实验 学院: 班级: 作者: 学号:

实验一 Quartus II原理图输入法设计 一、实验目的: (1)熟悉Quartus II原理图输入法进行电路设计和仿真 (2)掌握Quartus II 图形模块单元的生成与调 (3)熟悉实验板的使用 二、实验所用器材: (1)计算机 (2)直流稳压电源 (3)数字系统与逻辑设计实验开发板 三、实验任务要求 (1)用逻辑门设计实现一个半加器,仿真验证其功能,并生成新的半加器图形模 块单元。 (2)用(1)中生成的半加器模块和逻辑门设计实现一个全加器,仿真验证其功能, 并下载到实验板测试,要求用拨码开关设定输入信号,发光二极管显示输出信号。 (3)用3线-8线译码器(74LS138)和逻辑门设计实现函数 ,仿真验证其功能,并下载到实验板测试。要求用拨码开关设定输入信号,发光二极管显示输出信号。 四、设计思路和过程 (1)半加器的设计 半加器电路是指对两个输入数据位进行加法,输出一个结果位和进位,不产生进位输入的加法器电路。是实现两个一位二进制数的加法运算电路。数据输入AI被加数、BI加数,数据输出SO和数(半加和)、进位C0。 在数字电路设计中,最基本的方法是不管半加器是一个什么样的电路,按组合数字电路的分析方法和步骤进行。 1.列出真值表 半加器的真值表见下表。表中两个输入是加数A0和B0,输出有一个是和S0,另一个是进位C0。

2 该电路有两个输出端,属于多输出组合数字电路,电路的逻辑表达式如下函数的逻辑表达式为:SO=AI⊕BI CO=AB 所以,可以用一个两输入异或门和一个两输入与门实现。

北邮,单片机,实验报告,电子琴

北邮,单片机,实验报告,电子琴 北邮单片机实验报告简易电子琴 2014年小学期单片机设计实验报告题目:基于单片机的电子音乐发生器 班级:班内序号:实验组号:学生姓名:指导教师: 基于单片机的电子音乐发生器 实验摘要 此次本组制作的基于PIC单片机的电子音乐发生器是具有LCD显示屏提示的音乐简单演奏、播放、存储等功能的演示作品,拥有以下4种功能: 1.按键演奏:即“电子琴”功能,可以用键盘上的“1”到“A”键演奏从低音sol到高音do等11个音; 2.点歌功能:即按动“B”“C”键分别演奏两首乐曲(可以表现准确的音高和音长)。3.存储音乐功能:即按右下角“F存储”键,然后按键演奏并存储,随后按“E”键结束,之后按“D键”就可以播放存储的乐曲了; 4.液晶显示功能:即在开始时显示“hello!”,在点播时分别显示“song b”、“song c”,在存储时显示“saving”。 电子音乐发生器采用以Microchip公司的PIC16F877芯片为核心的简单控制系统,外部电路连接有喇叭、键盘、LCD液晶显示屏以及其他必要系统调节元件。软件设计中涉及PORTB\PORTC\PORTD\PORTE用作普通数字I/O脚功能。本实验用

单片机PORTB\D接收来自键盘输入的指令信息,由此确定LCD液晶屏幕显示以及喇叭播放内容,再通过PORTC\D\E输出声音或字幕信息。 关键字 单片机——microcontroller芯片——CMOS chip 音乐发生器——music generator 分频——fractional frequency 一、实验论证与比较 本设计的核心器件是单片机芯片和音频功放芯片。单片机采用以Microchip公司的PIC16F87X系列中的PIC16F877芯片为核心构建简单控制系统,它完全可以满足本设计功能的需要。此音乐发生器设计利用单片机的输入输出功能,当按下播放功能键时,单片机的输出功能使外部电路连接的喇叭和LCD液晶显示屏同时播放声音及显示文字,从而实现各种复杂音乐播放器的功能。 在嵌入式系统设计中,扬声器等是常用的输出设备,它具有使用方便、价格便宜、电路接口简单等优点,因此,在嵌入式系统中被广泛使用。同时随着单片机的发展,其功能越来越强大,技术也越来越成熟,由此生产的音乐播放器越来越受到人们的喜爱。因此,在技术性操作、社会因素和经济方面都具有良好的可行性。我在实验中负责了全部软件设计,代码的编写,电路图的设计,以及部分硬件焊接。其中,困难的部分在于,理论上认为电子音乐发生器模拟真正乐器的仿真实现方法,与现实电路实现起来有着一定的差别,在长音、乐谱存储播放上,以及存储功能的代码

北邮阶段作业

作业9 一、单项选择题(共5道小题,共5.0分) 1 不属于公钥密码的典型算法是() 1RSA 1DSA 13DES 1DH 知识点:八、信息安全与网络道德 学生答案:[C; ] 标准答 案: C 得分:[1]试题分 值: 1.0 提示: 2 知识产权包括() 1著作权和工业产权 1著作权和专利权 1专利权和商标权 1商标权和著作权 知识点:八、信息安全与网络道德 学生答案:[A; ] 标准答 案: A 得分:[1]试题分 值: 1.0 提示: 3 (错误) 计算机病毒是计算机系统中一类隐藏在()上蓄意破坏的捣乱程序。 1内存 1软盘 1存储介质 1网络 知识点:八、信息安全与网络道德 学生答案:[A; ] 标准答 案: C

得分:[0]试题分 值: 1.0 提示: 4 网络协议的关键成分是() 1硬件、软件与数据 1语法、语义和体系结构 1语法、定时、层次结构 1语法、语义和定时 知识点:八、信息安全与网络道德 学生答案:[D; ] 标准答 案: D 得分:[1]试题分 值: 1.0 提示: 5 技术安全需求集中在对计算机系统、网络系统、应用程序的控制之上,而技术安全控制的主要目的是保护组织信息资产的() 1完整性 1可用性 1机密性 1上面三项都是 知识点:八、信息安全与网络道德 学生答案:[D; ] 标准答 案: D 得分:[1]试题分 值: 1.0 提示: 作业10 一、单项选择题(共5道小题,共5.0分) 6 下面()属于三维动画制作软件工具。 13DS MAX 1Firworks 1Photoshop 1Authorware

学生答案:[A; ] 标准答 案: A 得分:[1]试题分 值: 1.0 提示: 7 下面()不是多媒体创作所必须的硬件设备。 1扫描仪 1数码相机 1彩色打印机 1图形输入板 知识点:九、计算机多媒体技术 学生答案:[C; ] 标准答 案: C 得分:[1]试题分 值: 1.0 提示: 8 下面硬件设备中,哪些不是多媒体硬件系统必须包括的设备。 1计算机最基本的硬件设备 1CD-ROM 1音频输入、输出和处理设备 1多媒体通信传输设备 知识点:九、计算机多媒体技术 学生答案:[D; ] 标准答 案: D 得分:[1]试题分 值: 1.0 提示: 9 下面()不是多媒体计算机中常用的图像输入设备: 1数码照相机 1彩色扫描仪 1条码读写器 1彩色摄象机

北邮2019年秋季多媒体计算机技术阶段作业一、二

阶段作业一 一、判断题(共5道小题,共25.0分) 1. 信息熵编码又称为统计编码,它是根据信源符号出现概率的分布特性而进行的压缩 编码。 A. 正确 B. 错误 2. 光盘存储数据采用EFM编码,即将1字节的8位编码为14位的光轨道位。 A. 正确 B. 错误 3. 凹凸贴图(Bump Mapping)是一种在3D场景中模拟粗糙表面的技术。 A. 正确 B. 错误 4. 视频采集卡一般都配有采集应用程序以控制和操作采集过程。 A. 正确 B. 错误

5. 一般来讲,信杂比大于75分贝的即为甲级摄像机,反之则为乙级摄像机。 A. 正确 B. 错误 二、多项选择题(共5道小题,共25.0分) 1. 前向预测被用于:()。 A. I图像 B. P图像 C. B图像 D. A图像 2. MPEG的系列标准中正式推广的有:()。 A. MPEG-1 B. MPEG-2 C. MPEG-3 D. MPEG-4

3. ()是可逆编码/无失真编码。 A. Huffman编码 B. 预测编码 C. 变换编码 D. 算术编码 4. 如今比较流行的3D音效API有:()。 A. Direct Sound 3D B. DirectX C. A3D D. EAX 5. SVCD/CVD(PAL制式)常用MPEG-2哪个等级的图像分辨率:()。 A. 1/2D1 (352×576) B. 2/3D1 (480×576) C. 3/4D1 (528×576) D. D1(720×576) 三、单项选择题(共10道小题,共50.0分) 1. 多媒体技术最早起源于20世纪()年代中期。

北邮小学期简易密码锁实验报告

简易智能密码锁实验报告 一、实验要求: 设计并实现一个数字密码锁,密码锁有四位数字密码和一个确认开锁按键,密码输入正确,密码锁打开,密码输入错误进行警示。 基本要求: 1、密码设置:通过键盘进行4 位数字密码设定输入,在数码管上 显示所输入数字。通过密码设置确定键(BTN 键)进行锁定。 2、开锁:在闭锁状态下,可以输入密码开锁,且每输入一位密 码,在数码管上显示“-”,提示已输入密码的位数。输入四位核对密码后,按“开锁”键,若密码正确则系统开锁,若密码错误系统仍然处于闭锁状态,并用蜂鸣器或led 闪烁报警。 3、在开锁状态下,可以通过密码复位键(BTN 键)来清除密码, 恢复初始密码“0000”。 闭锁状态下不能清除密码。 4、用点阵显示开锁和闭锁状态。 提高要求: 1、输入密码数字由右向左依次显示,即:每输入一数字显示在 最右边的数码管上,同时将先前输入的所有数字向左移动一位。

2、密码锁的密码位数(4~6 位)可调。 二、系统设计: 1、设计思路:在数字电路设计中,自顶向下设计方法的主要思想是 对数字系统进行划分,将复杂的设计原理简化为相对简单的模块设计,不同的模块用来完成数字系统中某一部分的具体功能。 总体思路:

2、总体框图: 三、仿真波形及波形分析 1、键盘输入模块 图3-1 键盘输入仿真

在上图中,clkjp时钟控制jpcat,jpcat控制kbout从0111到1110变换,然后手动控制kbin来模拟键盘的案件,从jpout就能看到的键入的数字。 2、防抖 图3-2 防抖仿真 上图中可以看见,btn1只在上升沿才有用,而clear会持续到一个周期的最后才会完毕。

北邮操作系统阶段作业1

一、单项选择题(共10道小题,共100.0分) 1. 下面的哪种事件,操作系统不能从进程得到对CPU的控制权 A. 故障中断 B. IO中断 C. 时钟中断 D. 阻塞进程等待的事件发生 2. 考虑到操作系统与用户进程的关系,Windows NT属于哪一类操作进程 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. Office B. Windows XP C. DOS D. Linux 9. 在操作系统的分类中,属于不同分类方法的有 A. 多道批处理操作系统 B. 实时操作系统 C. 分时操作系统 D. 网络操作系统 10.进程的共享性主要体现在()。

北京邮电大学数字电路实验报告

北京邮电大学 数字电路与逻辑设计实验 实验报告 实验名称:QuartusII原理图输入 法设计与实现 学院:北京邮电大学 班级: 姓名: 学号:

一.实验名称和实验任务要求 实验名称:QuartusII原理图输入法设计与实现 实验目的:⑴熟悉用QuartusII原理图输入法进行电路设计和仿真。 ⑵掌握QuartusII图形模块单元的生成与调用; ⑶熟悉实验板的使用。 实验任务要求:⑴掌握QuartusII的基础上,利用QuartusII用逻辑 门设计实现一个半加器,生成新的半加器图像模 块。 ⑵用实验内容(1)中生成的半加器模块以及逻辑门 实现一个全加器,仿真验证其功能,并能下载到实 验板上进行测试,要求用拨码开关设定输入信号, 发光二级管显示输出信号。 ⑶用3线—8线译码器(74L138)和逻辑门实现要求 的函数:CBA F+ C + =,仿真验证其 + B C B A A A B C 功能,,并能下载到实验板上进行测试,要求用拨 码开关设定输入信号,发光二级管显示输出信号。二.设计思路和过程 半加器的设计实现过程:⑴半加器的应有两个输入值,两个输出值。 a表示加数,b表示被加数,s表示半加和, co表示向高位的进位。

⑵由数字电路与逻辑设计理论知识可知 b a s ⊕=;b a co ?= 选择两个逻辑门:异或门和与门。a,b 为异 或门和与门的输入,S 为异或门的输出,C 为与门的输出。 (3)利用QuartusII 仿真实现其逻辑功能, 并生成新的半加器图形模块单元。 (4)下载到电路板,并检验是否正确。 全加器的设计实现过程:⑴全加器可以由两个半加器和一个或门构 成。全加器有三个输入值a,b,ci ,两个输 出值s,co :a 为被加数,b 为加数,ci 为低 位向高位的进位。 ⑵全加器的逻辑表达式为: c b a s ⊕⊕= b a ci b a co ?+?⊕=)( ⑶利用全加器的逻辑表达式和半加器的逻 辑功能,实现全加器。 用3线—8线译码器(74L138)和逻辑门设计实现函数 CBA A B C A B C A B C F +++= 设计实现过程:⑴利用QuartusII 选择译码器(74L138)的图形模块

北京邮电大学电路实验报告-(小彩灯)

北京邮电大学电路实验报告-(小彩灯)

电子电路综合实验报告课题名称:基于运算放大器的彩灯显示电路的设计与实现 姓名:班级:学号: 一、摘要: 运用运算放大器设计一个彩灯显示电路,通过迟滞电压比较器和反向积分器构成方波—三角波发生器,三角波送入比较器与一系列直流电平比较,比较器输出端会分别输出高电平和低电平,从而顺序点亮或熄灭接在比较器输出端的发光管。 关键字: 模拟电路,高低电平,运算放大器,振荡,比较 二、设计任务要求: 利用运算放大器LM324设计一个彩灯显示电路,让排成一排的5个红色发光二极管(R1~R5)重复地依次点亮再依次熄灭(全灭→R1→R1R2→R1R2R3→R1R2R3R4→R1R2R3R4R5→R1R2R3R4→R1R2R3→R1R2→R1→全灭),同时让排成一排的6个绿色发光二极管(G1~G6)单光

三角波振荡电路可以采用如图2-28所示电路,这是一种常见的由集成运算放大器构成的方波和三角波发生器电路,图2-28中运放A1接成迟滞电压比较器,A2接成反相输入式积分器,积分器的输入电压取自迟滞电压比较器的输出,迟滞电压比较器的输入信号来自积分器的输出。假设迟滞电压比较器输出U o1初始值为高电平,该高电平经过积分器在U o2端得到线性下降的输出信号,此线性下降的信号又反馈至迟滞电压比较器的输入端,当其下降至比较器的下门限电压U th-时,比较器的输出发生跳变,由高电平跳变为低电平,该低电平经过积分器在U o2端得到线性上升的输出信号,此线性上升的信号又反馈至迟

滞电压比较器的输入端,当其上升至比较器的上门限电压U th+时,比较器的输出发生跳变,由低电平跳变为高电平,此后,不断重复上述过程,从而在迟滞电压比较器的输出端U o1得到方波信号,在反向积分器的输出端U o2得到三角波信号。假设稳压管反向击穿时的稳定电压为U Z,正向导通电压为U D,由理论分析可知,该电路方波和三角波的输出幅度分别为: 式(5)中R P2为电位器R P动头2端对地电阻,R P1为电位器1端对地的电阻。 由上述各式可知,该电路输出方波的幅度由稳压管的稳压值和正向导通电压决定,三角波的输 出幅度决定于稳压管的稳压值和正向导通电压以及反馈比R1/R f,而振荡频率与稳压管的稳压值和正向导通电压无关,因此,通过调换具有不同稳压值和正向 导通电压的稳压管可以成比例地改变方波和三角波的幅度而不改变振荡频率。 电位器的滑动比R P2/R P1和积分器的积分时间常数R2C的改变只影响振荡频率而 不影响振荡幅度,而反馈比R1/R f的改变会使振荡频率和振荡幅度同时发生变化。因此,一般用改变积分时间常数的方法进行频段的转换,用调节电位器滑动头 的位置来进行频段内的频率调节。

2016年北邮数电实验报告

数字电路与逻辑设计 实验报告 学院:电子工程学院 班级: 姓名: 学号: 班内序号:

目录 (一)实验名称及实验任务要求 (1) (二)模块端口说明及连接图 (2) 1.1实验三(3)模块端口说明 (2) 1.2实验三(3)连接图 (2) 2.1实验四模块端口说明 (2) 2.2实验四连接图 (2) (三)原理图或VHDL代码 (3) 1.实验一(2)原理图 (3) 2.实验三(3)VHDL代码 (4) 3.实验四VHDL代码 (7) (四)仿真波形 (10) 1.实验一(2)仿真波形 (10) 2.实验三(3)仿真波形 (11) 3.实验四仿真波形 (11) (五)仿真波形分析 (11) 1.实验一(2)仿真波形分析 (11) 2.实验三(3)仿真波形分析 (11) 3.实验四仿真波形分析 (11) (六)故障及问题分析 (12) (七)总结和结论 (13)

(一)实验名称及实验任务要求 实验一 名称:QuartusII原理图输入法设计与实现 实验任务要求:EDA基础实验1(1)、(2)、(3)必做,选做VHDL 实现加法器。 实验二 名称:用VHDL设计与实现组合逻辑电路 实验任务要求:四人表决器、8421码转格雷码、数码管译码器(下载测试)。 实验三 名称:用VHDL设计与实现时序逻辑电路 实验任务要求:分频器、8421十进制计数器、将分频器/8421十进制计数器/数码管译码器3个电路进行连接并下载。 实验四 名称:用VHDL设计与实现相关电路 实验任务要求:数码管动态扫描控制器、点阵扫描控制器。

(二)模块端口说明及连接图 1.1实验三(3)模块端口说明 cp:时钟信号输入; rst:8421十进制计数器异步置位; c[6...0]:七段二极管数码管显示; cat[7...0]:数码管显示。 1.2实验三(3)连接图 2.1实验四模块端口说明 cp:时钟信号输入; rst:8421计数器异步复位; lgt[6...0]:七段二极管数码管显示; cat[7...0]:数码管显示。 2.2实验四连接图

北邮小学期电子秤实验报告

2015年小学期单片机设计实验报告 题目:计价电子秤 班级:20 班内序号: 实验组号: 学生姓名: 指导教师:

计价电子秤 ——2013211119班曾霜霜实验摘要 本次我们制作的是基于压力传感器的既可显示重物质量又可输入单价计算总价的计价电子秤。整个系统中,微控制器采用了Microchip公司的PIC16F877A,软件设计中涉及PORTA0作为模拟量输入端;用PORTB作为数字量输入端,连接键盘输入重物的单价;PORTA1-3作为数字输出端口连接液晶屏使能端,PORTC作为数字输出端口连接液晶屏,最终显示重物的种类,单价和总价。 概括的说,本实验是通过压力传感器形变后产生的模拟信号经过数模转换、量化、显示获得重物质量,然后输入单价后进行乘法运算的过程。 A b s t r a c t In this experiment, we made a denominated electronic scale based on the pressure sensor, which can automatically display the weight of the heavy, input the unit price and even calculate the total price of the heavy. Throughout the system, the production of the Microchip cord--PIC16F877A is used as the microcontroller. Software design involves PORTA0 as simulation input port, the analog signal to the microcontroller and digital to analog conversion, as a digital enable output port to control the screen with PORTA1-PORTA3, using PORTB as the digital input port, connect the 4*4 keyboard input weight unit, PORTC as the digital output port is connected with the LCD screen, display the weight categories, unit price and total value. In summary, this experiment was carried out by the analog signal generated by the pressure sensor deformation after digital to analog conversion, quantization to get the weight display quality, and then enter the unit price after the multiplication process.

多媒体计算机技术课后习题答案1

第一章:多媒体计算机技术概述 1、什么是多媒体? 答:多媒体是指信息表示媒体的多样化,常见的多媒体有文本、图形、图像、声音、音乐、视频、动画等多种形式。 2、多媒体的关键特性包刮哪些方面?答:多维化、集成性、交互性、实时性。第二章多媒体计算机系统的组成 1、触摸屏分为几类?简述常见的触摸屏的工作原理。 答:触摸屏根据所用的介质以及工作原理可分为4种:电阻式、电容式、红外线式、声表面波式。 触摸屏的工作原理是:当用户手指或其他设备触摸安装在计算机显示器前面的触摸屏时,所摸到的位置(以坐标形式)被触摸屏控制器检测到,并通过串行口或其它接口送到CPU,从而确定用户所输入的信息。 2、什么是视频捕捉卡?它的主要作用是什么? 答:视频捕捉卡是把输入的模拟视频信号,通过内置芯片提供的捕捉功能转换成数字信号的设备。 3、简述USB设备的的软件、硬件结构。答:硬件:USB结构简单,采用四条电缆,信号定义由2条电源线和2条信号线组成。 软件:USB软件由USB总线接口和USB系统组成。USB总线接口由主控制器事实现。 USB系统有3个组件:(1)住控制器驱动程序;(2)USB驱动程序;(3)USB客户软件。 4、简述CCD和CMOS影像感应器的主要特点。答:CCD(charge coupled device,电荷耦合元件)传感器包含像点,通常以横竖线短阵型式排列,各像点包含一个光电二极管和控制相邻电荷的单元。这种结构可产生低噪音、高性能的成像。 CMOS传感器是用标准硅处理方法加工而成的。与CCD相比有以下优点:地电源消耗、芯片上符合有额外的电路、地系统成本。第三章数字图像处理技术 1、简述数据压缩的必要性和可能性。答:必要性:对多媒体信息进行实时压缩和解压缩是十分必要的。如果没有数据压缩技术的进步,多媒体计算机就难以得到实际的应用; 可能性:能够对多媒体数 据进行压缩的前提是因为数据存在大量的 冗余,尤其是声音和图像。数据压缩的目的就是尽可能的消除这些冗余。 2、常用的数据压缩算法有哪些?

数电实验实验报告

数字电路实验报告

实验一 组合逻辑电路分析 一.试验用集成电路引脚图 74LS00集成电路 74LS20集成电路 四2输入与非门 双4输入与非门 二.实验内容 1.实验一 自拟表格并记录: 2.实验二 密码锁的开锁条件是:拨对密码,钥匙插入锁眼将电源接通,当两个条件同时满足时,开锁信号为“1”,将锁打开。否则,报警信号为“1”,则接通警铃。试分析密码锁的密码ABCD 是什么? X1 2.5 V A B C D 示灯:灯亮表示“1”,灯灭表示“0” ABCD 按逻辑开关,“1”表示高电平,“0”表示低电平

ABCD 接逻辑电平开关。 最简表达式为:X1=AB ’C ’D 密码为: 1001 A B C D X1 X2 A B C D X1 X2 0 0 0 0 0 1 1 0 0 0 0 1 0 0 0 1 0 1 1 0 0 1 1 0 0 0 1 0 0 1 1 0 1 0 0 1 0 0 1 1 0 1 1 0 1 1 0 1 0 1 0 0 0 1 1 1 0 0 0 1 0 1 0 1 0 1 1 1 0 1 0 1 0 1 1 0 0 1 1 1 1 0 0 1 0 1 1 1 1 1 1 1 1 1 三.实验体会: 1.分析组合逻辑电路时,可以通过逻辑表达式,电路图和真值表之间的相互转换来到达实验所要求的目的。 2.这次试验比较简单,熟悉了一些简单的组合逻辑电路和芯片 ,和使用仿真软件来设计和构造逻辑电路来求解。 实验二 组合逻辑实验(一) 半加器和全加器 一.实验目的 1. 熟悉用门电路设计组合电路的原理和方法步骤 二.预习内容 1. 复习用门电路设计组合逻辑电路的原理和方法步骤。 2. 复习二进制数的运算。 3. 用“与非门”设计半加器的逻辑图。 4. 完成用“异或门”、“与或非”门、“与 非”门设计全加器的逻辑图。 5. 完成用“异或”门设计的3变量判奇 电路的原理图。 三.元 件参考 U1A 74LS00D U1B 74LS00D U1C 74LS00D U1D 74LS00D U2A 74LS00D U2B 74LS00D U2C 74LS00D U3A 74LS20D X1 2.5 V X2 2.5 V VCC 5V A B C D

北邮大二下小学期机器狗实习报告

北京邮电大学实习报告

1.焊接工艺 1.1 焊接工艺的基本知识 焊接是使金属连接的一种方法,也称作熔接、镕接,是一种以加热、高温或者高压的方式接合金属或其他热塑性材料如塑料的制造工艺及技术。焊接通过下列三种途径达成接合的目的: 1,、加热欲接合之工件使之局部熔化形成熔池,熔池冷却凝固后便接合,必要时可加入熔填物辅助 2、单独加热熔点较低的焊料,无需熔化工件本身,借焊料的毛细作用连接工件(如软钎焊、硬焊) 3、在相当于或低于工件熔点的温度下辅以高压、叠合挤塑或振动等使两工件间相互渗透接合(如锻焊、固态焊接) 依具体的焊接工艺,焊接可细分为气焊、电阻焊、电弧焊、感应焊接及激光焊接等其他特殊焊接。 焊接的能量来源有很多种,包括气体焰、电弧、激光、电子束、摩擦和超声波等。除了在工厂中使用外,焊接还可以在多种环境下进行,如野外、水下和太空。无论在何处,焊接都可能给操作者带来危险,所以在进行焊接时必须采取适当的防护措施。焊接给人体可能造成的伤害包括烧伤、触电、视力损害、吸入有毒气体、紫外线照射过度等。 它利用加热手段,在两种金属的接触面,通过焊接材料的原子或分子的相互扩散作用,使两种金属间形成一种永久的牢固结合。利用焊接的方法进行连接而形成的接点叫焊点。我们实验中主要是PCB板的焊接。 PCB板焊接工艺从大类上可以分为机器焊接和手工焊接。机器焊接不是我们学习的重点,仅作了解,机器焊接可使用波峰焊机来进行。 1.2 焊接工具、焊料、焊剂的类别与作用 如左下图为手工焊接的基本工具示意图,主要工具和材料是电烙铁、镊子、螺丝刀、钳子等。本实验采用的烙铁为内热式。

如右上图为焊接材料分类示意图,焊接材料分为焊料和焊剂,焊料主要是焊锡(内含助焊剂),焊剂主要是助焊剂和阻焊剂。 下面以列表的形式给出各项材料的作用。 1.3焊接方法 手工焊接方法: 1、准备施焊,检查焊件、焊锡丝、烙铁,保持焊件和烙铁头的干净,并对烙铁进行预热; 2、加热焊件,用烙铁头加热焊件各部分,加热时不要施压; 3、熔化焊料,焊锡丝从烙铁对面接触焊件,将焊丝至于焊点,是焊料融化并润湿焊点; 4、移开焊锡,当融化的焊料在焊点上堆积一定量后,移开锡丝; 5、移开烙铁,当焊锡完全润湿后,迅速移开烙铁,在焊锡凝固前保持焊件为静止状态。 本次实习采用的焊接方法示意图如下:

北邮多媒体计算机技术阶段作业

阶段作业一: 、判断题(共5道小题,共25.0 分) 1.算术编码是不可逆编码。 A.正确 B.错误 2.图像是具有空间性的信息。 A.正确 B.错误 3.激光唱盘的每个扇区的音频数据分为 96帧。 A.正确 B.错误 4.凹凸贴图(Bump Mapping)是一种在3D场景中模拟粗糙表面的技术。 A.正确 B.错误

5.高性能的视频采集卡一般具有一个复合视频接口和一个S—Video接口,以便与模拟视

频设备相连。 A.正确 B.错误 、多项选择题(共5道小题,共25.0分) 1.对于B图像,其宏块有:()。 A. 帧内宏块,简称I块 B. 前向预测宏块,简称F块 C. 后向预测宏块,简称B块 D. 平均宏块,简称A块 2.显像管显示器的标称尺寸:()。 A. 实际上是显像管的尺寸; B. 显示器可视范围比标称尺寸大; C. 显示器可视范围与标称尺寸相等; D. 显示器可视范围比标称尺寸小; 3.SVCD/CVD(PAL制式)常用MPEG —2哪个等级的图像分辨率:()。 A.1/2D1 (352 X 576) B.2/3D1 (480 X 576) C.3/4D1 (528 X 576) D.D1(720 X 576)

1. 可逆编码的压缩比大约在()之间。 A. 1: 1 ?2 : I B. 2: 1 ?5: I C. 5: 1 ?10: I D. 10: 1 ?100 : I 2. ()指感觉媒体和用于通信的电信号相互转换用的物理手段或设备。 A. 表现媒体 B. 表示媒体 C. 传输媒体 5. B. C. 三、单项选择题(共10道小题,共50.0 分) 4.下面关于SVCD 和CVD 说法正确的是:(). 二者是VCD 与DVD 的折衷产品; 二者采用 DVD 的MPEG — 2编码; A.

北邮数电实验报告

北京邮电大学实验报告 实验名称:数字电路与逻辑设计实验报告 学院:信息与通信工程学院 班级: 姓名: 学号: 序号: 日期:

实验三:用VHDL语言设计与实现逻辑电路 一、实验内容 1. 用VHDL语言设计实现一个带异步复位的8421码十进制计数器,仿真验证其功能,并下载到实验版测试。要求用按键设定输入信号,发光二极管显示输出信号; 2.用VHDL语言设计实现一个分频系数为12,分频输出信号占空比为50%的分频器,仿真验证其功能; 3.将(1),(2)和数码管译码器3个电路进行连接,并下载到实验板显示计数结果。 二、模块端口说明及连接图 1.分频器 2. 计数器 clk: 时钟输入信号 clk: 时钟信号输入 clear: 复位信号输入 clear: 复位信号输入 clk_out: 时钟分频后的信号输出 q: 计数器的输出 3.数码管显示 b: 数码管的输入信号 seg: 译码显示输出 onoff: 数码管的输出控制

4.连接图 三、实验分析 1.设计思路 本实验将之前的分频器和计数器以及数码管显示模块组合起来,实现了单个数码管现显示0~9,每隔0.5s切换一次显示内容。 COMPONENT div_12实现了时钟分频,将50MHz的单片机晶振时钟进行分频,输出频率2HZ占空比50%的方波时钟,以此时钟作为内部时钟驱动计数器。 COMPONENT jishuqi是一个十进制计数器,NUM从“0000”到“1001”循环变化,模为10。计数器的输出传递给数码管译码显示电路。 COMPONENT seg7_1是数码管译码显示电路,将收到的信号NUM译码并控制数码管的段锁存来控制数码管的显示。 整体来看,div-12提供了分频后2Hz的时钟,驱动计数器计数,计数的结果作为数码管译码显示模块的输入,根据计数器实时的数进行数码管的显示。综合起来就实现了设计的功能。 在进行电路的连接时,可直接在代码中分成三个进程来实现,也可通过为每个模块建立符号,连接电路图来实现。 2. 具体代码如下: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY fenpinjishu IS PORT( clear2 :IN STD_LOGIC; clk1:IN STD_LOGIC; b1:OUT STD_LOGIC_VECTOR(6 downto 0); CAT:OUT STD_LOGIC_VECTOR(7 downto 0) );

北邮c++小学期实验报告

面向对象程序设计与实践 c++实验总结报告 实验一简单C++程序设计 1.猜价格游戏 编写C++程序完成以下功能: (1)假定有一件商品,程序用随机数指定该商品的价格(1-1000的整数); (2)提示用户猜价格,并输入:若用户猜的价格比商品价格高或低,对用户作出相应的提示; (3)直到猜对为止,并给出提示。 题目1-1总结: 1)本题需要随机生成整数,我开始只使用rand(),即price=rand();来生成随机整数 但这样只是一个伪随机函数,每一次重新打开程序生成的数都是一致的。 因此加入时间随机种子:srand((unsigned)time(NULL)) 2)个人改进1:定义最大值最小值,在每次猜测数字时显示应猜的数字范围,作为提示。 想到这个是因为有一次猜了很多遍都没猜到,一时突然忘记猜到什么范围,然后往前翻猜过的数字和大小感觉相当麻烦,所以就添上了应猜范围,方便再一次猜数。 3)个人改进2:本来有一个判断条件判断生成的随机数是不是1~1000范围内,而后更进为

随机生成整数对1000取余得到0~999整数,再+1得到1~1000的整数。 实验二类与对象 1.矩形 编写C++程序完成以下功能: (1)定义一个Point类,其属性包括点的坐标,提供计算两点之间距离的方法;(2)定义一个矩形类,其属性包括左上角和右下角两个点,提供计算面积的方法;(3)创建一个矩形对象,提示用户输入矩形左上角和右下角的坐标; (4)观察矩形对象以及Point类成员的构造函数与析构函数的调用; (5)计算其面积,并输出。

题目2-1总结: 1)这一题是第一次用到class类的题目,开始并不明白为何要定义class,然后还需要区分 public和private。而后来去图书馆借了书看到c++最大特色就是可以封装,定义私有属性和公有函数,以确保有些函数和参数不会被轻易访问到,降低错误率。

2017北邮远程互联网基础与应用阶段作业一

2017北邮远程互联网基础与应用阶段作业一 一、单项选择题(共10道小题,共100.0分) 1. 在Internet业务提供商中,为用户提供Internet接入服务是()。 2. 1.ICP 2.ISP 3.IDC https://www.360docs.net/doc/db12478298.html,NIC 3. 远程登录程序Telnet的作用是()。 4. 1.让用户以模拟终端方式向Internet上发布信息 2.让用户以模拟终端方式在Internet上搜索信息 3.用户以模拟终端方式在Internet上下载信息 4.用户以模拟终端的方式登录到网络上或Internet上的一台主机,进而使用该主机的服务 5. 接入Internet并支持FTP协议的两台计算机,对于它们之间的文件传输,下列说法正确的是()。 6. 1.只能传输文本文件

2.不能传输图形文件 3.所有文件均能传输 4.只能传输几种类型的文件 7. 与传统的邮政邮件相比,电子邮件的突出优点是()。 8. 1.实时、方便和快捷 2.方便、快捷和廉价 3.保密、实时和方便 4.保密、实时和廉价 9. 以下统一资源定位符(URL)三部分组成的顺序正确的是()。 10. 1.协议、主机名、路径及文件名 2.路径及文件名、协议、主机名 3.主机名、协议、路径及文件名 4.协议、路径及文件名、主机名 11.

万维网(World Wide Web)是Internet中应用最广泛的领域之一,它又称为()。 12. 1.全球信息网 2.Internet 3.城市网 4.远程网 13. 域名系统(DNS)把整个Internet划分成多个顶级域,其中com、edu、gov、mil分配给()。 14. 1.商业组织、教育机构、政府部门、邮政部门 2.商业组织、教育机构、政府部门、军事部门 3.通信部门、教育机构、政府部门、军事部门 4.商业组织、教育机构、政府部门、铁路部门 15. 关于网络协议下列选项正确的是()。 16. 1.是网民们签订的合同 2.协议,简单地说就是为了网络传递信息共同遵守的约定 3.TCP/IP协议只能用于Internet 4.拨号网络对应的协议是IPX/SPX

北邮多媒体计算机技术第二阶段作业1

一、判断题(共5道小题,共25.0分) 1.在20世纪70年代左右,工作站是最重要的一类计算机。 A.正确 B.错误 2.超文本是由信息结点和表示信息结点间相关性的链构成的一个具有一定逻辑结构和 语义的网络。 A.正确 B.错误 3.超文本和超媒体技术是一种新的多媒体数据管理技术。 A.正确 B.错误 4.XML文件中一个简单的实体名称可以用来代表一大段文本内容。 A.正确 B.错误

5.XML文件的结构包括逻辑结构和物理结构。 A.正确 B.错误 1.上个世纪八十年代推出多媒体计算机系统主要有:()。 A.Amiga MPC B.Macintosh计算机 C.CD-I(compact disc interactive) D.DVI(digital video interactive) 2.常见的三维动画软件中,低端软件有:()。 A.lightwave B.3dsmax C.maya D.softimage(Sumatra) 3.图形根据其用途的不同分为很多种类,常见的有::()。 A.文本 B.图片

C.艺术字 D.表格 4.常见的多媒体合成与制作软件中基于流程图理念的软件是:()。 A.Authorware B.IconAuthor C.Director D.Action 5.基于B/S架构的软件通常利用哪种语言开发? A.JSP B.ASP C.C++ D.PHP 1.对于喜欢自己动手DIY歌曲和专辑的普通音乐爱好者,最适合的多轨录音软件是: ()。 A.Sonar1.3 B.Vegas Video 3.0 C.Sam2496 6.0和Nuendo 1.53 D.Cool Edit

北邮数电实验分析报告-信息

北邮数电实验报告-信息

————————————————————————————————作者:————————————————————————————————日期:

数字电路与逻辑设计实验 姓名*** 学院信息与通信工程学院 专业信息工程 班级*** 学号**** 班内序号***

实验一 一、实验名称和实验任务要求 1.实验内容:QuartusII原理图输入法设计与实现。 2.实验目的: (1)熟悉用QuartusII原理图输入法进行电路设计和仿真。 (2)掌握QuartusII图形模块单元的生成与调用。 (3)熟悉实验板的使用。 3.实验任务要求: (1)用逻辑门设计实现一个半加器,仿真验证其功能,并生成新的半加器图像模块。 (2)用实验内容1中生成的半加器模块和逻辑门设计实现一个全加器,仿真验证其功能,并下载到实验板上测试。要求用拨码开关设定输入信 号,发光二极管显示输出信号。 (3)用3线—8线译码器(74LS138)和逻辑门实现函数 F=(/)(/)(/)+(/)(/)+(/)(/)+,仿真验证其功能,并下载到实 验板测试。要求用拨码开关设定输入信号,发光二极管显示输出信号。 二、原理图 半加器模块和逻辑门设计实现的全加器: 三、仿真波形图及分析 电路实现了全加器的功能。全加器是实现两个1位二进制数及低位来的进位相加求得和数及向高位进位的逻辑电路。由其原理可得逻辑表达式:sum=ain⊕bin⊕cin

cout = (ain⊕bin)cin + ain*bin。 列出真值表: 输入输出 ain bin cin cout sum 0 0 0 0 0 0 0 1 0 1 0 1 0 0 1 0 1 1 1 0 1 0 0 0 1 1 0 1 1 0 1 1 0 1 0 1 1 1 1 1 仿真波形对比真值表,可以看出波形图与理论值完全符合。 四、故障及问题分析 1、问题:按照逻辑表达式连接了全加器电路后,仿真波形很乱。 解决方法:思考后知道了应该把输入信号依次设成2的n次方,这样的仿真波形清楚容易分析。 2、问题:把代码下载到板子上的过程中,进行到37%的时候停了,等了2分钟 也没继续下载。 解决方法:再次重连USB尝试下载,手紧握着接线口,下载成功了,分析可能是接线口接触不好。 实验二 一、实验名称和实验任务要求 1.实验内容:用VHDL设计与实现组合逻辑电路。 2.实验目的: (1)熟悉用VHDL语言设计组合逻辑电路的方法。 (2)熟悉用QuartusII文本输入法进行电路设计。 3.实验任务要求: (1)用VHDL语言设计实现一个4位二进制奇校验器,输入奇数个‘1’时,输出为‘1’,否则输出‘0’,仿真验证其功能,并下载到实验板测 试。要求用拨码开关设定输入信号,发光二极管显示输出信号。 (2)用VHDL语言设计实现一个8421码转换为余3码的代码转换器,仿真验证其功能,并下载到实验板测试。要求用拨码开关设定输入信号, 发光二极管显示输出信号。

北邮小学期AVR单片机电子琴实验报告

小学期AVR单片机实验报告实验题目:基于ATmega16L单片机的电子琴设计 学生姓名:学渣 班级:2012XXXXXX 班内序号:XX 学号:2012XXXXXX 日期:2014年9月30日 同组同学:学渣

目录: 一、实验介绍 (3) 1.1实验课题名称 (3) 1.2实验平台 (3) 1.3实验课题关键字..............................3 1.4实验摘要 (3) 二、小组分工 (3) 三、基本题目训练——流水灯与数码管秒表计时器 (3) 3.1实现功能 (3) 3.2程序代码分析 (4) 3.3实验结果图片 (7) 四、有关发声的基础知识 (7) 五、电子琴的设计与测试 (9) 5.1设计过程 (9) 5.2实验所需元器件 (9) 5.3实验程序主要流程图 (10) 5.4实验原理及原理图 (10) 5.4.1实验原理 (10) 5.4.2原理图 (11) 5.5各个模块的设计与讲解 (11) 5.6程序源代码及程序分析 (14) 5.7实验结果..................................... ..24 六、排错过程............................ . (26) 七、心得体会 (29) 八、参考文献 (32) 九、意见与建议 (33)

一、实验介绍: 1.1实验课题名称:基于ATmega16L单片机的电子琴设计 1.2实验平台:本实验所用平台为AVR Studio 4 1.3实验课题关键字: ATmega16L型单片机电子琴键盘按键 LCD液晶显示屏 1.4实验摘要: 本实验设计的电子琴拥有可视化操作界面,能实现即时弹奏音乐、音乐播放、音乐变速、音乐变调,并可以进行任意长度录音(通过按键记录音阶)等功能 二、小组分工: ●XXX负责电路硬件的连接和报告的撰写 ●XXX负责程序代码的编写 ●XXX负责资料的收集整理和查阅 三、基本题目训练——流水灯与数码管秒表计时器 3.1功能:八盏LED二极管按顺序依次循环点亮,实现流水灯的效果,同时两只数码管分别代表秒和十分之一秒,进行秒表计时,配有

相关文档
最新文档