Chinaunix首页 | 论坛 | 博客
  • 博客访问: 76176
  • 博文数量: 26
  • 博客积分: 1410
  • 博客等级: 上尉
  • 技术积分: 270
  • 用 户 组: 普通用户
  • 注册时间: 2008-07-19 08:55
文章分类

全部博文(26)

文章存档

2011年(1)

2009年(10)

2008年(15)

我的朋友
最近访客

分类:

2009-01-23 14:06:57

c51单片机第二课笔记


1震荡周期:就是晶振震荡一次所用的时间。也叫做时钟周期
机器周期:单片机完成一次独立的操作需要的时间。是震荡周期的12倍。
指令周期:cpu完成一次完整的操作需要的所有时间,有单周期指令,双周期指令等。
2   用循环左移,循环右移指令 实现流水灯。
  int temp;
  temp=0xfe;
  P1=temp;
  temp=_crol_(temp,1);
 有关循环指令包含在intrins.h头文件中。
3 对蜂鸣器的操作,类似与对led的操作,对相应端口输出第电平。关于蜂鸣器的数据有待补充。
4 共阴极led显示器16进制编码表
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71
从左到有,分别为 0到f的编码。
5led数码管的位选,段选。用2个锁存器配合,实现6个led数码管。先锁存位选信号再锁存段选信号。
                具体操作。        打开锁存器1
                                          输出位选信号。
                                         关闭锁存器1
                                          打开锁存器2
                                          输出段选信号。
                                         关闭锁存器。
具体例程。
#include
sbit dula=P2^6;
sbit wela=P2^7;

void main()
{
    wela=1;
    P0=0xc0;
    wela=0; 
    dula=1;
    P0=0x06;
    dula=0;
    while(1);
}


6锁存器的真值表。
7中断
与中断有关的几个寄存器。
A  IE中断允许控制寄存器。其中包括EA EX0 EX1 ET0 ET1 ES
    EA(IE.7)CPU中断运行总控制位。
    ES(IE.5)串行口中断允许控制位。
    ET1和ET0(IE.3,IE.1)定时器1和定时器0中断允许控制位。
    EX1和EX0(IE.2,IE.0)外部中断1和外部中断0允许控制位。
    8051采用两级中断控制方法。比如要开启定时器0的中断 要分别 在EA 和 ET0 两位置1.
B TCON 外部中断0,1 定时器0,1终端控制寄存器。
    TCON包括 TF1, TR1, TF0, TR0, IE1, IT1, IE0, IT0
    TF1,TF0(TCON7,TCON5)定时器T1,T0的计数溢出标志。
    IE1,IE0(TCON,3,TCON.1)外部中断1,0的中断请求标志位
    以上4位 由硬件检测到中断信号后自动置1.
    IT1,IT0(TCON,2,TCON.0)外部中断信号的触发方式选择位
    为0时,是低电平触发 为1时,是下降沿脉冲触发方式。
C IP中断优先级控制寄存器。
8c语言中中断程序的编写
     格式 void 函数名() interrupt    中断编码{函数体}
 其中 中断编码分别为
外部中断0                0
定时器0                    1
外部中断1                 2
定时器1                    3
串口发送接收           4
中断函数不用事先声明。编写中断函数要注意开中断。
9 定时器及相关寄存器
定时器的工作原理 16位的加一计数器。
相关寄存器
T0,T1的控制寄存器TCON
TF1,TF0  (TCON7,TCON5)定时器T1,T0的计数溢出标志。
TR1,TR0(CON6,TCON4)定时器运行控制器
0时停止工作,1时启动。
T0,T1的方式控制寄存器TMOD
TMOD高4位控制T1 低4位控制T0
其中 GATE 门控位 等于0时
                              等于1时
C/T 定时或计数功能选择位 等于0时 定时功能,计数脉冲由内部提供
                                          等于1时 计数功能,对外部事件(脉冲)进行计数
M1和M0:T1和T0操作方式选择位

计数初值与计数个数的关系   计数个数=2的16次方-计数初值.
10定时器的应用.
幻灯片 41
初始化程序应完成如下工作:
§TMOD赋值,以确定T0T1的工作方式。
§计算初值,并将其写入TH0TL0TH1TL1
§中断方式时,则对IE赋值,开放中断。
启动定时器

TMOD=0x01;//设置定时器0的工作方式1
    TH0=(65536-50000)/256;
    TL0=(65536-50000)%256;
    EA=1;  //开总中断
    ET0=1;//开定时器0中断
    TR0=1;//启动定时器0

阅读(994) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~