你好!我在学单片机,有很多问题不懂,想请教你。谢谢!1.共阴极LED数码管显示字符“2”的段码是( )
1.允许通信双方的数据同时在两个方向上传送的方式是 (C )
A.单工方式 B.半双工方式 C.全双工方式
2.十进制数17等价于下面哪一种表示 (A)
A. 00010001B B. 00010110B C. 17H D. 28H
3.共阴极数码管要点亮,其公共端应该接什么信号 (A)
A. 低电平 B. 高电平 C. +5V
4.89C51单片机有几个并行I/O口: (D)
A. 1 B. 2 C. 3 D. 4
5.下列哪项不属于89C51的中断入口地址 (B)
A. 0003H B. 0000H C. 000BH D. 0023H
6.下列哪一个不是89C51单片机的中断源: (B)
A. 定时中断T0 B. 看门狗中断
C. 串口中断 D. 外部中断1
7. 下列哪条语句属于寄存器间接寻址方式 (A)
A. MOV A, @R0 B. MOV R0, 40H
C. MOV A, #30H D. MOV A, 40H
8.R7的初始值是18H,执行语句DJNZ R7, NEXT后,R7的值是 (C)
A. 19H B. 18H C. 17H D. 16H
9. 单片机中断系统能处理的问题有 (D)
A. 中断嵌套控制 B. 中断优先级控制
C. 中断响应 D. 以上皆对
10.定时器T0设定为工作方式1时可实现如下功能 ( C)
A. 13位定时/计数器 B. 8位定时/计数器
C. 16位定时/计数器 D. 波特率发生器
二.填空题
1. 写出执行下列语句后寄存器、地址单元存放的数值
MOV 35H, #0100 0111B ; ( 35H ) = 0100 0111B
MOV 36H, #1101 1010B
MOV A, 36H ; ( A ) = 1101 1010B
PUSH ACC
MOV R0, #35H ; ( R0 ) = 35JH
MOV A, @R0 ; ( A ) = 0100 0111B
POP ACC ; ( A ) = 1101 1010B
2. 写出执行下列语句后的运行结果
MOV 30H, #0101 0111B ; ( 30H ) =57 H
MOV 31H, #0FEH
MOV R0, #30H
MOV A, @R0 ; ( R0 ) = 30 H
MOV 30H, 31H ; ( 30H ) = 57 H
INC R0 ; ( R0 ) = 31 H
MOV A, @R0 ; ( A ) = 0FE H
解释如下
#include "reg52.h" //调用52内码
void delay(void); //声明延迟
void main() //主函数
{
unsigned char i; //定义i为无符号字符型,即8位长度
while(1) // 一直循环下面{}内的内容
{
for(i=0;i<8;i++) //8次
{
P0 = ~(1<<i); //将1向左边移动i位,并取反,PS:这里与你选用的数码管的类型有关,这里他用的是共阴级的
P2 |= 0xE0; //P2的前3位置位,即P2.5~P2.7都为1
P2 &= 0x9F; //P2的内容与1001 1111进行位的与运算,并赋值给P2
delay(); //调用延迟子程序
}
}
}
//软件延时程序
void delay(void)
{
unsigned char i,j,k; //定义i,j,k为无符号数
for(i=20;i>0;i--) //空操作20次
for(j=20;j>0;j--)//空操作20次
for(k=248;k>0;k--);//空操作248次
}
个人认为写程序的人有点糊涂,char可以设置到255,不用20,20的加
都接上正电源,其它引脚悬空,此时数码管将显示“2”。
明白这个图应该就会算了,这个需要你仔细的琢磨琢磨。
要看你是怎么接的,包括数码管大概有3种常见引脚排列,而且还有共阴和共阳的,都不一样。
只要知道引脚的排列和对应的意义就可了。 方法有:
1 不知道你的数码管是几位的,不过多位可以当作1位的, 用google 搜图片 得
这下会了吧
2 最死的方法是用万用表一个引脚一个引脚量一下就可以了。
iかf师lеvァ
大家好,我想问下,我是大三的学生,现在想学单片机,毕业后能有什么发展...
呵呵,我是实习生,我可以很负责的告诉你,学单片机前途还是很大的,但是有三个前提:一:你最好是电子信息专业领域的,因为学单片机要有数电模电等一些基础 二:单片机一般有两个就业方向,单片机硬件工程师和单片机软件工程师,偏硬的你一定要要会自己设计电路,对硬件有很深的了解,能分析硬件故障等;...
我一名自动化学生,正在学习单片机,听说linux比较有优势,所以也正在学 ...
3.都是一样的原理,没有太大的区别。4.linux只是一个内核,有些发行版支持实时的,其实也没有太大的区别。5.GTK是linux下的图形开发SDK。对于从事底层开发的人为说,没有必要。6.单片机开发会标准的C语言就可以了。既然你是学生,除了你的专业要学好以外,其它的东西只要知其然(知道有这个东西,...
求好的51单片机学习网站
1. 推荐一:小刚之家 (网址:bes.8u8.com)。这是一个资源丰富的网站,提供从经济实惠的编程器到汉化的KILE,再到众多免费的学习和应用软件与资料。站长的用心可见一斑。我在这里购买的编程器使用体验非常良好!2. 推荐二:单片机爱好者 (网址:\/\/www.mcufan.com)。3. 推荐三:单片机学习网 (网址...
单片机学习怎么入门?
正确使用USART接口,需要学习通信协议,PC机的RS232接口编程等等知识。试想,单片机实验板上的数据显示在PC机监视器上,而PC机的键盘信号可以在单片机实验板上得到显示,将是多么有意思的事情啊!第五步:学会A\/D转换 MAP430单片机带有多通道12位A\/D转换器,通过这些A\/D转换器可以使单片机操作模拟量,显示...
单片机的学习方法
第三步(项目实战的阶段):学习单片机的时候,虽然也编写了一些程序,但是那些都是一些很小的模块程序,并没有起到综合应用的目的,所以在这之后,我和另外一个学习硬件的同学一起组成了一个小的团队,进行项目实践开发,那时候,实验室的条件比价好,有很多的器件可以自己使用。所以,我们就设计了我们的...
学单片机有什么用处?
单片机具有以下特点:1、有优异的性能价格比 目前国内市场上,有些单片机的芯片只有人民币几元,加上少量外围元件,就能构成一台功能相当丰富的智能化控制装置。2、集成度高,体积小,可靠性好 单片机把各功能部件集成在一块芯片上,内部采用总线结构,减少了各芯片之间的连线,大大提高了单片机的可靠性与...
如何学习好单片机编程设计
相反,基础不好,这个看不懂那个也弄不明白,越学问题越多,越学越没有信心。如果你觉得单片机很难,那就应该先放下单片机教材,去重温数字电路,搞清楚触发器、寄存器、门电路、COMS电路、时序逻辑和时序图、进制转换等理论知识。理解了这些知识之后再去看看单片机的结构和原理,我想你会大彻大悟,信心...
单片机学好
学习的过程 学习单片机最终要的是当然是练,我所说的学习跟课堂上的单片机学习不同,我以前也看过一些单片机教材,有些教材讲的是单片机的工作原理和内部结构,这些东西对于我们暂时并不需要,等以后开课的时候在学习好了。现在要学习的是暂时抛开内部结构原理不谈,如何能用单片机写一些简单的小程序,是...
单片机工作总结
下面是我帮大家整理的单片机工作总结,希望对大家有所帮助。 单片机工作总结1 单片机是一门应用性和综合性很强的学科,它综合了电子技术中的模拟电路和数字电路方面的知识,特别是数字电路,因为数字电路在里面的应用很多。学习单片机最好先从汇编语言入手,虽然汇编语言是低级语言 ,编程效率低,但它比C语言占用内存小,执行...
怎样学好单片机?
我自己的经验是多动手制作,多多尝试。不必抱着书本死肯。下面是前辈给的学习步骤与重点,希望对你有帮助 学习单片机的八大步骤 学习使用单片机就是理解单片机硬件结构,在汇编或C语言中学会各种功能的初始化设置,以及实现各种功能的程序编制。第一步:数字I\/O的使用 使用按钮输入信号,发光二极管显示输...
叱干卷甘露: 不要有压力哦,其实很简单的问题,一旦在心理上复杂化了,就变成了一种心理负担,造成太多的神秘感,从而变得愈发难以理解.其实单片机很简单的,说白了就是一个数字电路,就那么几部分,程序、记忆单元、微电脑芯片、输入输出等等,也就是给他个程序指令,把输入的信号及时地转化为正确的输出指令也就达到要求了,当然编程序还是得有些经验和敲门的,技术无难事,关键在于熟能生巧.要看开,学技术要会总结,会归类,循序渐进,相信你一定能成功的.
赛罕区18330771692: 单片机 我学不懂 对于编程这种 我很是不理解 有什么办法吗? - ?
叱干卷甘露: 建议你直接从C语言开始学.如果从汇编开始学,容易产生对汇编的依赖,以后再学C语言就会觉得很别扭.而且,就算你从汇编开始,还是会有很多东西不懂,等到你反复做实验和看别人的程序,才会理解.C语言是未来的发展方向,学好C发展空间更大些.建议你买一个开发板,或者用proteus仿真也可以.先编写一个简单的程序,运行一下,理解几条程序的功能和实现方法;然后一点一点增加程序,理解其他程序的功能和寄存器的使用方法.网上有一些简单的实验教程可以用.建议你找一个老师(不一定是真正的老师),有问题可以很快帮你讲解,可以节省你很多时间.如果你不懂,在前期学习的时候就理解错了,以后会很麻烦.
赛罕区18330771692: 我现在上的是单片机,上课我完全听不懂,他讲的什么寄存器,什么位,什么始终频率等等.专业术语很多,我 - ?
叱干卷甘露: 不知道楼主具体学习的什么单片机.大概说一下: 1. 芯片的运算是由晶振来驱动.通常会有芯片内部晶振,和芯片外部晶振之分.然后把晶振的频率通过倍频提升到一个较高的频率.然后根据芯片内核、UART、SPI、等外设的需求进行分频. ...
赛罕区18330771692: 新手如何学习单片机? 我是一个新手,很想学习单片机,但不知道如何入门,请有经验的人指导一下.谢谢! - ?
叱干卷甘露: 想学好单片机其实并不困难,单片机是一门实践性非常强的的学科,学习时要理论与实践并重量,现在网上学习单片机的资料比较多,你可到有关单片机的论坛上找找,再次就是有准备必要的学习单片机的一些基本的装备,电脑你肯定有,哪就...
赛罕区18330771692: 怎么学习单片机?我看了很长时间一直搞不懂 - ?
叱干卷甘露: 不需要刻意去背.先看一下课本前面对单片机的叙述,还有对结构要有了解.然后看一下指令(暂时还不要背).知道如何应用指令来编程后就看书本上的例题.多看多写写例题就能自然而然记住指令.一般国内大学用的都是51单片机教学,...
赛罕区18330771692: 学单片机开发在学习中会出现很多问题那对我们初学者来说需要怎么学习呢??
叱干卷甘露: 卓跃教育认为在学习中出现的问题向初学者提几个建议: 1、多看书,尤其是单片机基础的书,了解单片机原理才能更好的使用它,国内51系列推广了很多年,资料最为丰富. 2、多上网查资料,大家的力量是伟大的,单片机是外国人发明的,我们一般要先学会它的语言再使用它,所以多出了很多步骤,很多人对单片机的理解层次也不同,写程序的风格也各异.这个都没有关系,一个问题查的资料多了,自己就能分析出他的道理来. 3、多调试.程序无论如何分析,不去调试,结果仍旧不能肯定.一般的单片机可以反复烧写上万次,好的数十万次,开发板就是帮助我们学习开发的工具!
赛罕区18330771692: 想学习单片机,自学的话怎么学好呢?现在一点都不懂 - ?
叱干卷甘露: 在有数模电、二进制知识的基础上 首先找本单片机教材看(以最简单、常用的MCS--51为模板吧);了解51单片机硬件资源方面的知识;掌握其寻址方式及指令系统;(初学者还是先搞清汇编语言,不要直接去弄C51,这样有利于掌握单片机资源的的工作原理) 配以用keil 、 protues仿真练习,很快就能慢慢悟出其中的奥妙了 当然,有条件的话,买上一块开发板(不贵的,1、2百元钱),进行实际操练,效果更好.
赛罕区18330771692: 单片机这门课程怎么学啊?一点也看不懂!请高手帮忙! - ?
叱干卷甘露: 单片机就三部分内容,IO口,定时/计数器,中断.如果你不是为了应付考试,而是想短时间内对单片机知识迅速了解,及时上手,可以听我的建议: 首先,现在学校购置的教材通常是汇编版的,不是说学汇编不好,只是这样会走很多弯路.你可以先把教材的前两章大致看看,看到寻址方式之前,因为寻址方式是只有考试才会用到的东东,后面就要讲汇编了,跳过.如果你C语言学的好,接下来就可以看一些实例的书,增加阅历.有人说读懂2W行代码单片机就学通了,这个量是很巨大的.个人认为,下苦功,一个月,单片机,搞定.
赛罕区18330771692: 怎样学好单片机教程?我是单片机爱好者,很想学好单片机,但是不知道 ?
叱干卷甘露: 单片机已经无处不在,与我们生活更加相关并渗透入生活的方方面面.单片机的特点是小,也就是其集成的特性,其内部的结构是普通的计算机系统的简化.在增加一些外...
赛罕区18330771692: 怎样才能学好单片机 - ?
叱干卷甘露: 你好,我学习单片机已经两年多了,尝试回答一下你的问题: 第一,在大学里学习,首先要注意的一点是切忌浮躁.不要看人家好像什么都很强就希望自已能一夜之间熬成高手,合抱之木,生于寸苗.如果你是大二的话,由于有了一定的计算机...