c51学习第一天

    科技2022-08-03  112

    知识点总结

    1.1中断

    1.11中断函数写法 void 函数名() [interrupt n] [using n] 1:无参、无返回值 2:interrupt后面的n值为0-4,表单片机的外中断 0、定时器中断。 0、外中断 1、定时器中断 1 和串口中断。 3:using专门用来选择 51 单片机中不同的工作寄存器组。0-3。

    1.12中断结构 PS:单片机写程序的时候所有变量定义在最前面,不然报错

    1.2数码管字形码

    单片机LED共阳极bai段码表【0-F】du [0-7] 0c0H,0f9H,0a4H,0b0H,99H,92H,82H,0f8H [8-F] 80H,90H,88H,83H,0c6H,0a1H,86H,8eH 单片zhi机LED共阴极段码表【dao0-F】 [0-7] 3FH,06H,5BH,4FH,66H,6DH,7DH,07H [8-F] 7FH,6FH ,77H,7CH,39H,5EH,79H,71H,76H

    1.3计数和定时

    1.31基本概念 计数:对外部事件发生时产生的输入脉冲计数 定时:通过计数器的计数实现,只是脉冲来自内部,每个机器周期产生一个计数脉冲(每个机器周期计数器加一) 外部计数器的两个引脚:TO(T1)P3.4(P3.5) 一个机器周期等于 12 个振荡脉冲周期,因此计数频率为振荡频率的 l/12。如果单片机采用 12MHz 晶体,则计数频率为 1MHz,即每微秒计数器加 1。

    1.32定时/计数的组成 定时/计数器主要由几个特殊功能寄存器 TH0、TL0、TH1、TL1 以及 TMOD、TCON 组成。TH0(高 8 位)、TL0(低 8 位)构成 16 位定时/计数器 T0,TH1(高 8 位)、TL1(低 8 位)构成 16 位定时/计数器 T1;TMOD 用来控制两个定时/计数器的工作方式,TCON 用作中断溢出标志并控制定时/计数器的启停。

    T1和T0与CPU是并行的,只有计数溢出等事件才会影响CPU 定时时间计算:(工作方式1:即16位计数) 初始值为X,2^16=65536,计数器满65536溢出 定时时间=(2^16-X)机械周期 机器周期=12晶振周期=12*(1/晶振频率) 所以定时时间 = (2^16-X)*(12/晶振频率) 在设置定时时间时,如果晶振是12MHz(一微秒记一次数),记满65536需要65.536ms,如果要计数5ms(5000微妙)也就是计数满5000时计数器满,就需要先在计数器填入65536-5000=60536个数

    设初值为X,晶振是12MHz 5000 = (2^16-X)*(12/12)得X=60536

    PS:每次溢出后计数值回到0,需要马上把计数初值填入

    Processed: 0.011, SQL: 8