OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 9552|回复: 2

关于C头文件的疑惑,原子哥详细讲解下,书看的不怎么懂

[复制链接]

3

主题

4

帖子

0

精华

新手入门

积分
36
金钱
36
注册时间
2011-11-29
在线时间
0 小时
发表于 2011-12-12 22:13:19 | 显示全部楼层 |阅读模式

dekay的C文件:
#include"delay.h"//为什么要加这句#include"delay.h"?是声明函数定义的???

void delay(uint a )
{
   uint x,y;
   for(x=0;x<a;x++)
  for(y=0;y<121;y++)
     ;
}
delay的H文件:
#ifndef __delay_h
#define __delay_h
#define uint unsigned int
#define uchar unsigned char
void delay(uint a );
#endif
以下为主函数
#include <REG2051.H>
#include "intrins.h"
#include "delay.h"//这里加这个明白
  
#define uint unsigned int
bit a1,b1,b2;
uint i;


/*-------------------------定时器0-----------------------------------------*/
void dingshi()interrupt 1 using 1
{
   static uint x;
   TH0=(65536-50000)/256;
   TL0=(65536-50000)%256;
   if(a1)
   {
      i++;
      if(i==1000)
      {
      i=0;
      a1=0;
   if(b1==0)
      TR0=0;
   }
    }     
  
 if(b1)  
 {   
     x++;
  if(x==300)
     P1_4=1;
  if(x==400)
  {
     P1_5=1;
     x=0;
     TR0=0;
  }
     }

    
}
/*------------------------------------------------------------------------*/
void jiance()
{
   if(P1_7==0)
   {
      delay(20);
   if(P1_7==0)
      {
      a1=1;TR0=1;
   }
   }
   if(a1&(P1_6==0))
   {
      delay(20);
   if(a1&(P1_6==0))
      {
   b1=1;a1=0;i=0;b2=1;
   P1_5=0;
   P1_4=0;
   P1_3=0;
   delay(10);
   P1_3=1;
   }
 }
 if((~P1_6)&(~b2))
 {
    if(b1)
    {
       P1_2=0;
    delay(10);
    P1_2=1;
    b1=0;
    }
 }
 if(P1_6&b2)
 {
    delay(500);
    if(P1_6&b2)
    {
        b2=0;
    }
    }
}

/*------------------------------------------------------------------------*/
void  main()
{
   TH0=(65536-50000)/256;
   TL0=(65536-50000)%256;
   ET0=1;
   TMOD=0x11;
   EA=1;
   while(1)
   {
      jiance();
   }
}

 

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165371
金钱
165371
注册时间
2010-12-1
在线时间
2110 小时
发表于 2011-12-12 23:16:13 | 显示全部楼层
回复【楼主位】dianqiban:
---------------------------------
把函数申明放到头文件.可以使得一个.c文件里面的函数在多个.c里面共用.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

46

主题

1579

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
1970
金钱
1970
注册时间
2011-7-17
在线时间
4 小时
发表于 2011-12-13 08:28:07 | 显示全部楼层
楼主C语言没过关
Time?And?Relative?Dimension?In?Space.
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-2-24 16:45

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表