2017.11.20 定时器与数码管

&& : 逻辑与,都为真则真

||: 逻辑或,一个为真则为真

!:逻辑非,

&:按位与

|:按位或

~:按位取反

^:按位异或,相异为1.例如A=0b11001100,B=0b11110000,F=A^B=0b00111100

时钟周期:晶振就是时钟源,就是晶振分之一。

机器周期:完成一个操作的最短时间。一个机器周期是12个时钟周期。

定时器:打开定时器后,定时器“存储寄存器”的值经过一个机器周期自动加1,也就是说,机器周期是定时器的计数周期。

定时器存储寄存器    sfr地址    复位值

TH0  定时器  0x8C  0x00

TL0          0x8A  

TH1         0x8D

TL1               0x8B

TCON 定时器控制寄存器的位分配

TMOD 定时器模式寄存器的位分配

#include<reg52.h>

sbit LED=P0^0;

sbit ADDR0=P1^0;

sbit ADDR1=P1^1;

sbit ADDR2=P1^2;

sbit ADDR3=P1^3;

sbit ENLED=P1^4;

void main()

{

ADDR0=0;

ADDR1=1;

ADDR2=1;

ADDR3=1;

ENLED=0;

TMOD=0x01;

TH0= 0xb8;

TL0=0x00;

TR0=1;

unsigned char cnt=0;

while(1)

{  /*

  定时器使用方法

1.设置特殊功能寄存器TMOD,配置好工作模式。

2.设置计数寄存器TH0和TL0的初值。

3.设置TCON,通过TR0置1让定时器开始计数

4.判断TCON寄存器的TF0位,检测定时器溢出情况

*/

if(TF0==1)

{

/*

晶振是11.0592MHz ,时钟周期是1/11.0592 *1000000=90422。

定时20ms=0.02s

机器周期X  *12/11.0592=0.02

    X=18432;

定时器到65535+1 溢出

T0+X=65536

T0=47104;

*/

  TF0=0;

  TH0=0xb8;

  TL0=0x00;

  cnt++;

  if(cnt>=50)

    {

    cnt=0;

    LED=~LED;

    

    }

}

}

}

#includ<reg52.h>

sbit ADDR0=P1^0;

sbit ADDR1=P1^1;

sbit ADDR2=P1^2;

sbit ADDR3=P1^3;

sbit ENLED=P1^4;

unsigned char code (放入程序存储空间,节省空间)LED[]={0xC0,数码管真值表。}

void main()

{  

  unsigned char cnt=0;

  unsigned char sec=0;

  ENLED =0;

  ADDR3=1;

  ADDR2=0;

  ADDR1=0;

  ADDR0=0;

  TMOD=0x01;

  TH0=0xB8;

  TL0=0x00;

  TR0=1;

 

while(1)

{

  if(TF0==1)

  {

    TF0=0;

    TH0=0xB8;

     TL0=0x00;

    cnt++;

    if(cnt>=50)

      {

        cnt=0;

        P0=LED[sec];

        sec++;

        if(sec>=16)

          sec=0;

      }

  }

}

}

时间: 2024-08-03 23:25:10

2017.11.20 定时器与数码管的相关文章

芝麻软件早报2017.11.20

2017年11月20日星期一 [国内资讯]1.世界第一例人类头部移植手术成功实施,地点在中国,用时18小时2.百度首度披露金融版图全景,未来将加速AI商业化3.支付宝与越南"银联"签约,拓展在越出境游业务4.腾讯信用分终于开始启用了:高于630分免押金骑摩拜5.腾讯<光荣使命>手游本周二开启测试,预约人数突破2500万6.中国奢侈品电商报告发布,寺库领跑中国奢侈品电商7.三季度趣店佣金收入增15倍,宜人贷股权激励拖累净利8.银行联手房企布局广东租赁市场,万亿投资在路上9.黑

Java 2017.11.20 杨浩宁作业

package top.hyself; //斐波那契数列 public class Demo { public static void main(String[] args) { int[] arr = new int [30]; arr[0] = 1; arr[1] = 1; for(int i = 2;i < arr.length;i++) arr[i] = arr[i - 1] + arr[i - 2]; for(int i : arr) System.out.println(i); }

python面试(2017.11.20)

1. 若将一个类定义为字典中的key,该类应实现什么方法,如何实现? 2. python中的浅复制与深复制? 3. python中的sys模块有什么作用?如何获得变量(函数?)所占内存空间? 4. python中的ducking type 5. getattr.setattr.hasattr的功能 6. 什么是高阶函数?举例说明 7. 装饰器作用?举例说明 8. 如何对两个很大的数组进行求交,时间复杂度是怎样的,如何优化?如果数组一大一小呢?

现代软件工程_团队项目_阿尔法阶段_第四次会议记录_2017.11.20

第四次会议记录 会议时间:2017.11.20  12:00-12:15 会议地点:中科大西区第三教学楼一楼讨论区 参会人员:刘荪傲 姜博文 夏铭阳 徐宇飞 张淦霖 [内容一]:前端介绍页面原型v1.0.3 增加: 一.页面简单逻辑判断(没有连接数据库,单纯只是格式判断) 1.登录界面设置唯一的账号和密码,账号不对会提示账号不存在,账号正确密码不对提示密码错误,都正确点击登录连接到首页 2.注册界面设置账号密码昵称为6-16位字符,确认密码需要与密码相同,手机号为11位数字,邮箱后缀名为@mai

2017.11.25【NOIP提高组】模拟赛A组

2017.11.25[NOIP提高组]模拟赛A组 T1 3467. [NOIP2013模拟联考7]最长上升子序列(lis) T2 3468. [NOIP2013模拟联考7]OSU!(osu) T3 3472. [NOIP2013模拟联考8]匹配(match) T1 有转移方程f[i]=max{f[j]}+1,a[j]<a[i] 可以用线段树+离散化维护这个方程,因为涉及以往状态可以用主席树维护 打太丑爆空间了 Code 1 #include<cstdio> 2 #include<c

[LOJ 6249]「CodePlus 2017 11 月赛」汀博尔

Description 有 n 棵树,初始时每棵树的高度为 H_i,第 i 棵树每月都会长高 A_i.现在有个木料长度总量为 S 的订单,客户要求每块木料的长度不能小于 L,而且木料必须是整棵树(即不能为树的一部分).现在问你最少需要等多少个月才能满足订单. Input 第一行 3 个用空格隔开的非负整数 n,S,L,表示树的数量.订单总量和单块木料长度限制.第二行 n 个用空格隔开的非负整数,依次为 H1,H2,…,Hn.第三行 n 个用空格隔开的非负整数,依次为 A1,A2,…,An. Ou

STM32F103的11个定时器详解(转)

源:STM32F103的11个定时器详解 STM32F103系列的单片机一共有11个定时器,其中:2个高级定时器4个普通定时器2个基本定时器2个看门狗定时器1个系统嘀嗒定时器 出去看门狗定时器和系统滴答定时器的八个定时器列表; 8个定时器分成3个组:TIM1和TIM8是高级定时器TIM2-TIM5是通用定时器TIM6和TIM7是基本的定时器这8个定时器都是16位的,它们的计数器的类型除了基本定时器TIM6和TIM7都支持向上,向下,向上/向下这3种计数模式 计数器三种计数模式向上计数模式:从0开

2017/11/07_那么明显的坑你还往里跳 Cannot set property &#39;innerHTML&#39; of null

学习react,使用webpack构建工具 在html引入生成的bundle.js时,写成了这样子: 1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Document</title> 6 <script src="bundle.js"></scri

2017.11.15 String、StringBuffer、StringBuilder的比较

参考来自:http://blog.csdn.net/jeffleo/article/details/52194433 1.速度 一般来说,三者的速度是:StringBuilder > StringBuffer > String. 但是,在String a = "how" + "old" + "are" + "you".这种直接拼接的情况下,String速度最高.这是因为jvm的优化问题,jvm会自动识别,把&quo