网站模板库
  • 首页
  • web前端工具
    • HTML/JS转换工具
    • JS/HTML格式化工具
    • 字母/英文大小写转换工具
    • robots.txt文件生成工具
    • Js压缩/格式化工具
    • Css在线压缩工具_代码格式化
  • 关于我们
    • 免责声明
    • 联系我们
    • 广告服务
    • 服务项目
    • 关于我们
    • 网站轮播
    • 公告
    • 成都优优科技专用
    • 按行业分类
  • web学院
    • 服务器教程
    • 学习资料
      • 基础书籍
      • 交互书籍
      • 入门教程
      • 特效分类
    • 案例分享
    • web资讯
  • 网页特效
    • 图片特效
    • 导航特效
    • 滑动按钮
    • 表单特效
    • 文字特效
    • 弹窗特效
    • 其他特效
  • 织梦模板
    • 科技/电子/数码/通信
    • 文化/艺术/广告/传媒
    • 装修/设计/家居/家具
    • 基建/施工/地产/物业
    • 餐饮/酒店/旅游/票务
    • 食品/果蔬/饮料/日用
    • 服饰/珠宝/礼品/玩具
    • 摄影/婚庆/家政/生活
    • 运动/健身/体育/器材
    • 学校/教育/培训/科研
    • 美容/保健/医院/医疗
    • 金融/财税/咨询/法律
    • 政府/组织/集团/协会
    • 汽车/物流/交通/搬运
    • 机械/设备/制造/仪器
    • 化工/环保/能源/材料
    • 农业/畜牧/养殖/宠物
    • 其他模版
    • IT/软件/信息/互联网
  • 手机模板
    • 手机APP模板
    • 微信小程序模板
    • wap
  • 网站模板
    • joomla模板
    • Drupal模板
    • z-blog模板
    • EyouCms模板
    • Bootstrap模板
    • 帝国cms模板
    • CmsEasy模板
    • MetInfo模板
    • 购物商城模板
      • Shopify主题
      • PrestaShop主题
    • 后台模板
    • 纯HTML模板
    • ecshop模板
    • phpwind模板
    • pbootcms模板
    • phpcms模板
    • wordpress模板
    • discuz模板
  • 教程
    • 织梦教程
    • Discuz教程
    • WordPress教程
    • Phpcms教程
    • Phpwind教程
    • ECShop教程
    • Joomla教程
    • Drupal教程
    • zblog教程
    • EyouCMS教程
    • 帝国cms教程
    • MetInfo教程
    • CmsEasy教程
登录
当前位置:网站模板库 > web学院 > 服务器教程 > 单片机指令问题
商业源码 服务器教程 2024-02-07 11:44:01

单片机指令问题

单片机指令问题,第1张

TMOD和TCON的内部定时器的控制字节

THO是内部定时器TO的高8位

TLO是内部定时器TO的低8位

意思是

TMOD赋值为1;(T0选择工作模式1:16位定时/计数模式)

TCON赋值为1;(TR0=1:TO开始计数)

THO赋值为3CH;

TLO赋值为AFH;(也就是TO赋初值为3CAFH=15535)

如果还不懂 就去百度搜索 51单片机内部定时器 的文档来看看 就明白了

自己算一下:一个指令周期=时钟周期/12

定时时长 = 200指令周期

————————————————

为什么除以256比较难讲明白,这样想把,当你把TH1和TL1合在一起看的时候它就是一个16位的整型数,取值范围就是0-0xFFFF 也就是0-65535共65536个数,也就是256256。

所以当你再把这16位看成两位每位由8个bit组成的数的时候,这个两位数就是256进制的了。

对于一个256进制的数来说:

取它的最低位就是用模256,也就是 '%256' 。

要取高一位的话就是对256取商,也就是 '/256'

要求编写延时子程序,就不要使用定时器;

也不要用C语言,因为C语言的执行时间,并不确定。

用汇编语言,是最简单、准确的。

51单片机的程序如下:

DL1000:

MOV R7,#248

DJNZ R7,$

MOV R7,#250

DJNZ R7,$

RET

正好1000个机器周期。

R7,是8位寄存器,其最大数值是255,不能直接存入500。

#define uchar unsigned char

uchar bdata BITS;//位变量声明

bit TEST = BITS^0;

//

/主函数/

//

main()

{

SCON=0X50; //设置为工作方式1

TMOD=0X21; //设置计数器T1工作于方式2,T0工作于方式1

PCON=0X80; //波特率加倍

TH1=0XF3; //计数器T1初始值设置,注意波特率是4800的

TL1=0XF3;

TH0=0x4c; //预置T0计数初值

TL0=0x00;

ET0=1; //允许定时器T0中断

TR0=1; //T0开始计数

TR1=1; //T1开始计数

// ES = 1;

EA=1; //打开总中断

TEST = 0; //清0位变量

while(1)

{

if(TEST)//如果T0计数中断次数达到21

{

TEST = 0;//清0该标志

if(P3==127)//如果p37低电平

{

second=second+1;

SBUF=second;//将接收到的数据放入到发送寄存器

while(!TI); //等待发送数据完成

TI=0;

}

else{

second=second;

SBUF=second;//将接收到的数据放入到发送寄存器

while(!TI); //等待发送数据完成

TI=0;

}

}

display(); //显示时间

}

}

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

void timer0(void) interrupt 1 using 0 //定时器0方式1,50ms中断一次

{

mstcnt+---------+-------%%;

if(mstcnt == 21000000)

{

mstcnt = 0;//清0计数器

TEST = 1;//置位mst

MOV TMOD,#01H,请说出该条指令有包含哪些含义( )。

A 可看出是定时器/计数器T0工作。

B T0工作在定时状态

C T0工作在计数状态。

D (T0)工作在方式1

答案:选 B、D。

TF1是定时器1溢出标志位,$是取地址。JNB TF1,$ 实现的功能是查询定时器1溢出标志位,如果为0,跳转到本条指令继续执行(即继续查询)直到定时时间到,TF1置位,才执行下一条指令。

给你注释一下:

MOV TMOD,#10H //设置定时器工作方式(定时器1,工作方式2)

SETB TR1 //开启定时器1

LOOP: MOV TH1,#0D8H //装初值D8F0H 即55536,定时10mS(晶振12M)时间随晶振改变

MOV TL1,#0F0H

JNB TF1,$ //查询等待定时器1中断

CLR TF1 //定时器溢出标志位清0(定时时间到后硬件自动给TF1置位,需软件清0)

CPL P11 //P11取反

SJMP LOOP //跳到LOOP处循环(是个死循环)

该段程序实现的功能是:每隔10mS对P11取反一次。(10mS当然是晶振为12M的情况下)

mov tmod, #61h;将61h这个数赋给tmod寄存器,具体什么模式你把它拆成16进制数对着寄存器看吧,好吧,刚帮你查了下,是:仅由TR0,TR1置位分别启动定时器T0、T1,T0为计数功能,T1为定时功能。T1是自动重装8位计数器,T0是16位计数器。

mov dptr, #15536 ;令dptr(记得是数据指针)的值为15536

mov tl0,dpl ;让dptr的低8位的值给定时器t0的低8位

mov th0, dph ;把dptr的高8位的值给定时器t0的高8位

mov tl1, #236 ;让t1的值为236

setb tr0;开启t0

setb tr1;开启t1

loop: jnb tf0,$; 表示测试tf0的值,如果不为1(为0)则程序继续执行本条指令($表示当前位置),如果为1则顺序执行下一条指令。 这里就是说当定时器T0溢出时进入下面的指令

clr tf0 ;清零tf0并进入下面的程序

mov dptr, #15536 ;与上面的意思一样

mov tl0, dpl

mov th0, dph

clr p35 ;使35口为0

setb p35 ;使35口为1

jnb tf1 ,loop ;还是检测,这次检测tf1位的值,如果不为1则继续本指令

clr tf1;令tf1为0,即低电平

大概就记得这些了 给你个参考吧

定时器 指令 寄存器 工作 值为
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 单片机指令问题

商业源码 钻石

分享到:
上一篇
对两台服务器做了双机热备份,设置了一个虚拟IP对外连接。如何设置?
下一篇
服务器标准电源有多大功率?

相关推荐

对CPU的认识

对CPU的认识

LiteOS通信模组教程02-AT指令玩转2G通信

LiteOS通信模组教程02-AT指令玩转2G通信

腐蚀rust 跟朋友一起玩 在一个服务器内怎么样最快速找到对方

腐蚀rust 跟朋友一起玩 在一个服务器内怎么样最快速找到对方

五一去哪玩好?

五一去哪玩好?

0条评论

发表评论 取消回复

要发表评论,您必须先登录。

提供最优质的资源集合

立即查看 了解详情
网站模板库

主题/付费下载/查看/余额管理/自定义积分,集成支付,卡密,推广奖励等。

本站导航
  • 链接标题
友情链接
  • 链接标题
快速搜索
本站由钛宇宙强力驱动
友情链接:
    商业源码网蜀ICP备2023005044号
    网站模板库
    • 登录
    • 注册
    网站模板库
    • 首页
    • web前端工具►
      • HTML/JS转换工具
      • JS/HTML格式化工具
      • 字母/英文大小写转换工具
      • robots.txt文件生成工具
      • Js压缩/格式化工具
      • Css在线压缩工具_代码格式化
    • 关于我们►
      • 免责声明
      • 联系我们
      • 广告服务
      • 服务项目
      • 关于我们
      • 网站轮播
      • 公告
      • 成都优优科技专用
      • 按行业分类
    • web学院►
      • 服务器教程
      • 学习资料►
        • 基础书籍
        • 交互书籍
        • 入门教程
        • 特效分类
      • 案例分享
      • web资讯
    • 网页特效►
      • 图片特效
      • 导航特效
      • 滑动按钮
      • 表单特效
      • 文字特效
      • 弹窗特效
      • 其他特效
    • 织梦模板►
      • 科技/电子/数码/通信
      • 文化/艺术/广告/传媒
      • 装修/设计/家居/家具
      • 基建/施工/地产/物业
      • 餐饮/酒店/旅游/票务
      • 食品/果蔬/饮料/日用
      • 服饰/珠宝/礼品/玩具
      • 摄影/婚庆/家政/生活
      • 运动/健身/体育/器材
      • 学校/教育/培训/科研
      • 美容/保健/医院/医疗
      • 金融/财税/咨询/法律
      • 政府/组织/集团/协会
      • 汽车/物流/交通/搬运
      • 机械/设备/制造/仪器
      • 化工/环保/能源/材料
      • 农业/畜牧/养殖/宠物
      • 其他模版
      • IT/软件/信息/互联网
    • 手机模板►
      • 手机APP模板
      • 微信小程序模板
      • wap
    • 网站模板►
      • joomla模板
      • Drupal模板
      • z-blog模板
      • EyouCms模板
      • Bootstrap模板
      • 帝国cms模板
      • CmsEasy模板
      • MetInfo模板
      • 购物商城模板►
        • Shopify主题
        • PrestaShop主题
      • 后台模板
      • 纯HTML模板
      • ecshop模板
      • phpwind模板
      • pbootcms模板
      • phpcms模板
      • wordpress模板
      • discuz模板
    • 教程►
      • 织梦教程
      • Discuz教程
      • WordPress教程
      • Phpcms教程
      • Phpwind教程
      • ECShop教程
      • Joomla教程
      • Drupal教程
      • zblog教程
      • EyouCMS教程
      • 帝国cms教程
      • MetInfo教程
      • CmsEasy教程

      弹窗标题

      这是一条网站公告,可在后台开启或关闭,可自定义背景颜色,标题,内容,用户首次打开关闭后不再重复弹出,此处可使用html标签...