0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

C51全局初始化及精确延时程序,51单片机精确延时程序

454398 2018-09-20 19:42 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

C51全局初始化及精确延时程序,51单片机精确延时程序

关键字:单片机延时程序

/*********************************************************************************************************
* Initialization Program
* QiZhao,2007
* All Rights Reserved
* File : initial.h
* By : QiZhao
* Contact :
zq1987731@163.com
*
* Version : V2.1 γ
* Corrector : QiZhao
* Date : 2008.2.1 (Last modified)
*
* Remarks : Common set of macro definitions keyword, and by setting controlled
* crystal oscillator frequency precision delay subroutine.
*
*********************************************************************************************************/
#ifndef _initial_h_
#define _initial_h_
/*********************************************************************************************************
*
* Global macro definitions
*
*********************************************************************************************************/
#include // AT89S52
#include // Absolute address access
#include // Related to the string
#include // Related to Assembly Language
#include // Unicode conversion
#include // Mathematics functions packet
#include // Standard input or output
#include // Memory Management
#define TRUE 1
#define FALSE 0
#define bool bit // Boolean variable
#define uchar unsigned char
#define uint unsigned int
#define ulong unsigned long
#define FOSC 12000000UL // The frequency of crystal
#define NOP _nop_();
/*********************************************************************************************************
*
* Accurate delay(5us,10us)
*
*********************************************************************************************************/
void delay10us (void) // FOSC->12000000
{
NOP
NOP
NOP
NOP
NOP
NOP
}
void delay5us (void) // FOSC->12000000
{
NOP
}
/*********************************************************************************************************
*
* Accurate delay(1ms~255ms)
*
*********************************************************************************************************/
#define WAITE_HI (FOSC / 2 / 12 / 1000 >> 8 )
#define WAITE_LOW (FOSC / 2 / 12 / 1000 & 0xFF)
void delayms (uchar time)
{
do
{
uchar j;
#if WAITE_HI != 0
j = 0;
{
uchar i;
for(i = WAITE_HI; i > 0; i--)
{
while (--j);
}
}
#endif
#if WAITE_LOW != 0
j = WAITE_LOW;
while (--j);
#endif
}while (--time);
}
/*********************************************************************************************************
*
* Includes not repeat
*
*********************************************************************************************************/
#endif
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    使用系统定时器SysTick来实现精确延时微秒和毫秒函数

    */return (0UL);/* Function successful */}通过后面的注释也可以看出,这是对SysTick定时器进行初始化,配置初始计数值,使能中断,使能定时器等。对应的中断函数为
    发表于 11-20 07:12

    C语言和单片机C语言有什么差异

    区别是由编译器决的,只能参考对应的编译手册,即使同种平台不同的编译器对C的扩展也有不同。 3、单片机c语言编程是基于C语言的单片机编程。
    发表于 11-14 07:55

    单片机怎么烧程序

    单片机程序是将编写好的程序代码写入单片机内部存储单元,让单片机按照预设逻辑工作的过程,是单片机
    的头像 发表于 07-23 11:47 658次阅读

    AT89C51 单片机中文资料

    电子发烧友网站提供《AT89C51 单片机中文资料.pdf》资料免费下载
    发表于 06-24 15:29 1次下载

    单片机原理及应用

    本书全面系统地介绍了 MCS-51 系列单片机的基本结构、工作原理及应用技术。主要内容包括:微型计算机的基础知识、MCS-51 单片机的基本结构、汇编语言和
    发表于 06-16 16:58

    2.4寸TFT彩屏配套测试程序-51单片机

    如题,2.4寸TFT彩屏配套测试程序-51单片机
    发表于 06-04 16:26 0次下载

    C51单片机C语言知识点必备秘籍

    单片机关键知识点一览: 系列一 1:单片机简叙 2:单片机引脚介绍 3:单片机存储器结构 4:第一个单片机
    发表于 05-15 14:00

    新概念51单片机C语言教程入门、提高、开发、拓展全攻略

    1.6 单片机C51基础知识介绍 1.6.1 利用C语言开发单片机的优点 1.6.2 C51中的基本数据类型 1.6.3
    发表于 04-15 13:57

    51单片机C语言学习笔记

    c51语言快速入门
    发表于 03-24 14:04 3次下载

    51单片机模块编程设计与实例要点分析

    51单片机模块化开发教程
    发表于 02-24 16:40 4次下载

    单片机学习—C51源代码和Proteus仿真文件

    单片机学习—C51源代码和Proteus仿真文件.zip, 有各种例子
    发表于 02-10 13:46 2次下载

    LDC1000是否需要在初始化之后延时才会开始测量呢?

    想向您请教一个问题,LDC1000是什么时候开始测量呢,是初始化完成之后还是只要上电成功就行,或者是需要某些特殊的设置,是否需要在初始化之后延时才会开始测量呢?
    发表于 01-13 06:19

    51单片机pwm和spwm

    51单片机pwm
    发表于 01-08 15:54 3次下载

    51单片机核心板原理图

    51单片机核心板原理图
    发表于 12-16 11:30 4次下载

    如何通过总线来初始化ADS1256的寄存器?

    我用STC89C52来驱动ADS1256时,发现需要用到SPI协议,单片机需要用IO口模拟SPI总线与ADS1256通信,但是我不知道如何通过总线来初始化ADS1256的寄存器,希望大家能给我提供一些代码支持,
    发表于 12-16 06:47