9、8051 嵌入式 C 编程:函数、指针与模块化开发详解

8051 嵌入式 C 编程:函数、指针与模块化开发详解

1. 定时器 0 配置

在嵌入式系统中,定时器是一个非常重要的组件。以 8051 单片机为例,我们可以将定时器 0 设置为模式 2 的 8 位自动重载定时器。以下是实现该功能的代码:

#include <reg51.h>
void main (void) {
    // Set “00102” mode for Timer 0 for 8-bit timer with auto-reload
    TMOD = 0x02;
    TH0 = 56;
    // Set TH0 to 56, generate one overflow every 200 counts (256-56)
    ET0 = 1;
    // Enable Timer 0 Interrupts
    EA = 1;
    // Enable global interrupt
    TR0 = 1;
    // Run Timer 0
    while (1);
    // infinite loop.
}

在这段代码中, TMOD 是一个 8 位的定时器模式特殊功能寄存器(SFR),低 4 位用于配置定时器 0,高 4 位用于配置定时器 1。 0X02 的低 4 位 0010 表示将定时器 0 设置为模式 2,即 8 位自动重载定时器。 TH0 被设置为 56,这意味着定时器 0 每计数 200 个时钟周期(256 - 56

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值