有关单片机最小系统的问题

还是关于80C51单片机的问题!程序如下:我想知道运行出来的结果以及我的那些疑问!在这里先说句谢谢了……_百度知道
还是关于80C51单片机的问题!程序如下:我想知道运行出来的结果以及我的那些疑问!在这里先说句谢谢了……
觉得这个课程不好学,我知道这样的问题可能是很简单的?老师说的我有点脸红?)
A,为什么都等着老师呢,所以我不想再这样下去了,但是他对我说?) MAIN, SUBF (传送数据给累加器A)
P2!:你觉得什么知识是有用的呢。他说只要你用心去学了,A
(再将A中的数据给 P2 口 ) 这是一个什么样的过程呢?)
(0040H 是怎么确定的:
(不知道这是在干什么)
(中断总开关置1)
(对中断开关置1 )
END今天上课老师对我说了很多ORG
(跳转到 MAIN 这个程序段)
(确定了串行口的工作方式)
怎么才能确定,#5FH
(为什么要设置堆栈指针呢 作用又是什么呢?
(对 RI 进行清零 但作用是什么呢。我一直都在迷茫,#20H
(这是什么意思,一定会有收获的,不要闲少啊,但是我还是希望得到答案,说学习是自己?这样的学习态度都是不对的,#0FDH
(电源控制寄存器 复位?)
SCON,而且我以前还学文的,#0FDH
PCON。其实是我一直总觉得这些没有用?原因是什么)
(对TR1 置1设置 原因是?)
TMOD!谢谢了……还有我没有那么高的悬赏能力……就这么点
提问者采纳
(为什么要设置堆栈指针呢 作用又是什么呢,#0FDH
(同上 &#47。就是先让你对单片机的片内结构有个认识;去看寄存器的使用方法)
SCON?)&#47,偏硬件一些;这里的40H是程序人工的定位到ROM里40H开始的地址单元处?原因是什么/同上)
(电源控制寄存器 复位;这里不是确定了串行口的工作方式? &#47。ORG
(跳转到 MAIN 这个程序段)
(确定了串行口的工作方式)
怎么才能确定,也是寄存器操作)
(对TR1 置1设置 原因是,#50H
(不知道这是在干什么 &#47? &#47,然后是《单片机C51程序设计》马忠梅版的;&#47,偏软件设计一些;作用是手动清除接收中断标志位)
A?&#47,程序员不用关心, SUBF (传送数据给累加器A)
P2;&#47,是确定了串口中断的地址映射入口
&#47?&#47,然后再说程序的事情;TMOD是寄存器)
TH1;/&#47,是设置串口波特率是否翻倍的?&#47,设置堆栈指针的作用是避免数据对冲了)
TMOD,作用是保存环境变量的;同上)
(同上 /这里不能理解为复位:
SP?///这个过程是单片机自己完成的,A
(再将A中的数据给 P2 口 ) 这是一个什么样的过程呢;//从这开始到MAIN前面是中断子程序
(对 RI 进行清零 但作用是什么呢;&#47,首先是《微机原理》,#20H
(这是什么意思;&#47,你也可以定义在其他有效范围内 MAIN,是通过数据总线走的
(0040H 是怎么确定的,里面有将单片机部分的;&#47建议你先去看几本书;/单片机一般都有一个堆栈
提问者评价
谢谢你了……真的很感谢诶,不过我想知道这个程序实现的是什么结果?
其他类似问题
按默认排序
其他3条回答
再从A输出到P2口显示SUBF-A-P2 ORG
0040H主程序应该在中断入口程序以后,#5FH
堆栈指针这个程序好像没用到,一般0030H以后就可以具体看你的中断程序用了多少空间MOV
接收的数据送到A,#50H 串行口工作方式其实所有内容书上都有0023H 串行口中断入口地址,#20H 计时器工作模式MOV
TH1,#0FDH 计时器初始值SETB
TR1开始计时MOV
SCON,设置谁防止用堆栈的时候把原来的数据覆盖掉,所以堆栈应该放到一个用不到的地方MOV
TMOD,串行口中断时从此地址开始执行程序 CLR
清除接收中断MOV
程序虽然简短,涉及面较广,在书里面,涵盖三~四章的内容。开始觉得难,慢慢学,不用急。下面的简单说明一下,楼主还是应该看书.
H是开机复位后起始地址,这是固定的.
MAIN跳转到 MAIN 程序段.;-------------------------------
H是串行口中断的入口地址,这也是固定的.
下面写的就是串行口中断程序.
RIRI=1才发生的串口中断,必须清零,否则中断就没有个完了.
A, SUBF取出串口收到的数据.
P2,A送到P2口,外接LED就能显示.
RETI中断程序结束,返回主程序.;-------------------------------以上几行是串口中断程序.
H 是怎么确定的?,离开0023H几十字节即可.MAIN:MOV
SP,#5FH设置堆栈指针,为中断过程准备存储地址的空间.;-------------------------------
TMOD,#20H这是什么意思?这三条,是设置定时器的工作方式.
TH1,#0FDH(同上)
用来控制波特率.
TL1,#0FDH(同上).
TR1对TR1置1,即为启动定时器.;-------------------------------以上四行,是针对定时器的.
SCON,#50H设置串行口的工作方式.
在这里指定了用定时器1,控制波特率.
PCON,#00H这也是用来控制波特率的.;-------------------------------以上二行,是针对串行口的.
EA中断总开关置1,即开放总中断.
ES串口中断开关置1,即开放串口中断.;-------------------------------以上二行,是针对中断系统的.
$等待中断的发生.
如果串口收到数据,立即转到0023H.
在0023H执行时,遇到RETI,就返回到这里.
跳转到 MAIN 这个程序段
串行中断入口地址
接收中断标志清零
从串口缓冲sbuf读数据
把读到的数据送到p2口
这个地址没特殊要求30H也可以 MAIN:
设置堆栈指针,因为sp初始化时指向07H,与工作寄存器组重合
定时器1工作方式1,设置串行通信波特率
smod位设成0,波特率不加倍
开定时器1中断
串行口工作方式1,10位异步
开串行中断
END程序功能就是从串口接收数据,放到p2口上。建议楼主好好看看课本....
单片机的相关知识
为您推荐:
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁您还未登陆,请登录后操作!
定时器问题
可以设置定时器的。如果您觉得正确或者采纳的话,麻烦给我好评哦,谢谢。
笔记本怎么会这样?
您的举报已经提交成功,我们将尽快处理,谢谢!
百度 MSC-51 输出方波
大家还关注关于8051单片机的问题_百度知道
关于8051单片机的问题
8051的定时/计数器定时和计数时,其计数脉冲由谁提供?
内部时钟或者外部脉冲。定时的时候选择内部时钟;计数时用的是外部脉冲可以选择的
其他类似问题
按默认排序
其他3条回答
定时的时候选择内部时钟;计数时用的是外部脉冲;看工作方式。
定时器计数脉冲是时钟的12分频,计数器是外部提供的时钟。
和定时器的设置有关。看一下数据手册就能明白了。
您可能关注的推广
8051单片机的相关知识
为您推荐:
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁关于单片机的问题
pic单片机换成2051可以吗
以下pic是什么型号(如图)_百度知道
关于单片机的问题
pic单片机换成2051可以吗
以下pic是什么型号(如图)
于单片机的问题
pic单片机换成2051可以吗
以下pic是什么型号,各个部份的用途可以的话帮我解释下(无法上图图在下面的网址上)http://circuit://circuit
打算吧图中的单片机换成AT89C2051那该如何办
再自己用块洞洞板搭个电路试试,做个仿真,驱动电平第二,时钟各个部分的用途也可以自己先去研究下,驱动电流第三单片机互换问题第一
其他类似问题
您可能关注的推广
pic单片机的相关知识
其他3条回答
这个PIC单片机不能换成2051.因为2051没有专门的PWM输出端口。
你给的图的单片机不是PIC单片机,应该是一个51单片机如果是把PIC换成2051的话,可以用PIC单片机替换。图中的2051只用到7个IO引脚,两个电源引脚,两个时钟电路引脚,一个复位引脚,所以推荐用14引脚的PIC16F616替换即可。如果要把这个单片机换成51系列单片机,可以用STC的20引脚单片机,STC的51单片机带PWM输出的
首先是pic的pic的型号可以是:PIC16F627PIC16F627APIC16F628PIC16F628A管脚都兼容P5.4脚虽然有pwm功能,但没有用,这里是做普通IO口用的所以可以用2051替换,但要注意第一,驱动电平第二,驱动电流第三,时钟
为您推荐:
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁关于51单片机位定义的问题_EEWorld电子工程世界搜索中心
搜索范围:
一周以内&&&&
搜索到约<span style="color:#项结果
line4=P1^3;
而是直接在程序中使用P1^0~P1^3,结果程序就运行不正常,苦思良久,未果,望请各位前辈高手们指点指点。
[[i] 本帖最后由 若如 于
20:03 编辑 [/i]] 若如 346727 关于51单片机位定义的问题 把位定义提到宏定义下面试试。程序中不能P1^0这样用吧? 谢谢分享 333785
我发上来的程序是正确的,我编写...
.cn/thread--1.html 发布时间:
&oxfffff7ff 会等于0xffff0030
或是51单片机构架的问题
yling 522698 关于51单片机位运算的一个问题 建议你可以试下stringtest3=stringtest2&stringtest1;再看下结果 sint27 432119
[quote][size=2][url=forum.php?mod=redirect&goto=findpost&pid...
.cn/thread--1.html 发布时间:
][/color][/font]
程序应该如何写?DH为16位的数据。。。
494151 PIC单片机位操作 你的数据口,引脚定义太乱,不连续,数据传送效率极其低下。 xuyiyi 470561
几乎只能一位一位传送~~~
LCD_DataPortH9 = (DH>>14) & 1;
//你的位地址编号是否正确???
LCD_DataPortH8 = (DH>>13...
.cn/thread--1.html 发布时间:
51单片机关资料,
51入门 天枫01 92795 51单片机关资料 太贵了,也不知道,你是怎么想的 guangod 399075
.cn/thread-.html 发布时间:
的要求; 呱呱 43137 怎样解决51单片机上电的时候,I/O所接的继电器会吸合一下的问题呢? 直接用光耦也可以的,用低电平使继电器吸合~~~~~~~~~ huchuan987 20241 回复:怎样解决51单片机上电的时候,I/O所接的继电器会吸合一下的问题呢? 单片机初始为高电平。 56y 47709 回复:怎样解决51单片机上电的时候,I/O所接的继电器会吸合一下的问题呢? 低电平控制...
.cn/thread-.html 发布时间:
51的单片机变量是怎么个定义法。全局变量,局部变量都放在什么存储器里的,还有如果我想定义个变量放在用户RAM里地址为0x32,定义变量放在位寻址区那(如0X22)有怎么定义呢?bdata unsigned char ss=0x22;这样定义了下 如果在程序里给它赋值,在memory window 处D:0X22 没看到有值。各位大神来个解释下 谢谢了,俺初次用这个51单片机...
.cn/thread--1.html 发布时间:
了,对于串口发过的数据没有响应了,我把驱动电机的代码改成驱动LED就没有问题,不会死机.0---9的数据能正确的接收.我想问题还是出在电机的部分,我把调速的功能去掉,改成按下按钮就驱动不按就停,但一直按着就可以转几圈,然后死机,只按一次可以走4步,再按第二次就没响应了,还是死机.
请有经验的朋友给指点一下,谢谢了. fsao 51307 游戏杆->PC机->串口->51单片->步进电机,死机的问题...
.cn/thread--1.html 发布时间:
我写了一个程序,用51单片机,用定时器方式产生PWM波形,同时用串口方式改变占空比,问题来了,在初始化中,都有对TMOD赋予初始值,可是我即使让TMOD成为同一个数,最后的程序,&还是不对,串口发送数据接收不到,请大家指教该如何处理呢? yl210 关于定义TMOD的问题 TMOD和串口没关系呀 huo_hu 362416
我用串口初始化的时候,得定义TMOD...
.cn/thread--1.html 发布时间:
字符串如何定义到FLASH中去呢?
以前用KEIL 51 只需在字符串前面加code关键字就行了!
STM32 mdk 下该怎么定义呢? wanliinthesky 50752 字符串定义到FLASH中去问题!
const debiao668 54017
谢谢! lhy705 53338
静态变量 daijun
.cn/thread--1.html 发布时间:
问一下51单片机是现在的主流吗? w11h11j11 53524 大家现在用的是51单片机器吗? 现在是万马奔腾。51、PIC、AVR、MSP430、费斯卡尔、ARM...多的一塌糊涂。 a 50585
那你们用哪种 zhouzhuzhu 53049
项目需求不一样,芯片选型也不一样.
gsypuma 43329
[quote]引用 3 楼...
.cn/thread--1.html 发布时间:
#define DR_ADDRESS
((uint32_t)0x4001244C) //ADC1 DR
在ADC.C里定义了,我看其它的例程中 mian函数里还要定义呢 yangyi 宏定义问题 你想表达什么呢,,这一般都是库定义好的 xinjitmzy 390026
换个更适合的名字 huo_hu 362416
.cn/thread--1.html 发布时间:
求高手给与指点!!
& 森马111 344705 如何把51单片机的交通灯c程序在pic16f877单片机上仿真? 程序需要移植, tiankai001 139222
需要对硬件相关的部分作修改, kata 120358
程序需要移植
对应端口定义改成PIC的定义方式,头文件
改 岳达 562433
对应端口定义改成PIC的定义方式, 请问如何改如中断,捕捉,定时。谢了...
.cn/thread--1.html 发布时间:
uchar bdata AlmS
定义的这个变量初始值是0还是0
365779 变量定义问题? 一般是0吧,如果你对这个变量的初始值有要求的话,最好自己初始化一下 jishuaihu 265249
好,知道了。
.cn/thread--1.html 发布时间:
像51中,对于变量的访问方式有data、idata、xdata、code;
那在IAR下的STM8的访问关键字是哪些呢?这个在51代码移植到STM8下遇到了这个
问题,虚心请教大家。
我在手册中看到四个寻址指针定义
分别是tiny、near、far、huge,那我如果快速访问前256字节区间使用tiny,是不是访问而外的768的区间就需要定义变量为near...
.cn/thread--1.html 发布时间:
stm32运算寄存器是32位的,是不是意味着处理一个int型数据就更快点呢?
定义变量样式1:
定义变量样式2:
问题1:样式2定义...
.cn/thread--1.html 发布时间:
#define Data P0
sbit BF=Data^7;
这样宏定义目的是什么?为何不直接用P0? wrlsohu 306510 宏定义问题请教 提高代码的可读性和可维护性。
必需的,不解释。 zch_genius 128627
谢谢 wrlsohu 306510
.cn/thread--1.html 发布时间:
就是定义一个地址变量,以一个地址为起始地址然后随着存储数据的增加而增加地址,等到下次用的时候不能从起始地址开始而是要从上次用到的地址后面开始使用,请问这个地址变量应该怎样定义好呢?初学者,对于这样定义很不了解,请各位大虾多多帮忙! fjmcss 53581 定义地址变量的问题 使用绝对地址指针。
之后再操作这个指针即可。。
p = (int *)0x00001...
.cn/thread--1.html 发布时间:
多个工程文件,如果用extern在头文件中定义一个变量,还要在C文件中同样还要定义一个全局变量。
请问有没有不用定义的方法?
zmsxhy 276685 外部定义变量的问题 不要在。h文件中定义变量 zca123 352293
使用全局变量,确实是架构没做好。。你想使用变量,还不想定义,头次听说。 lcofjp 367757
在c文件中定义变量,在h文件中外部声明变量 眼大5子...
.cn/thread--1.html 发布时间:
我使用IAR编译的时候,包含了iostm8s103f3.h,定义管脚时使用的是_Bool
@PB_ODR:5;为什么提示我——Bool未定义 沉淀淀 598250 stm8的管脚定义问题 直接用PB_ODR_bit.ODR5这样可以操作PB5。
不过IAR-EWSTM8位操作效率不够好。 gwdong 552285
#define LED PB_ODR_bit.ODR5...
.cn/thread--1.html 发布时间:
455225 问个wire定义问题 verilog规定wire[MSB:LSB] or reg[MSB:LSB],这样可以理解吗
楼上说的很清楚!
wire是这样定义的,即wire [ 最高位:最低位] Crazy_HUA 451863
谢谢能理解了 edgarwei 455225
.cn/thread--1.html 发布时间:
相关结果约71,579个

我要回帖

更多关于 单片机最小系统 的文章

 

随机推荐