电子开发 | 基础入门 | 电路原理图 | 濠电姵顔栭崰鏍偑閹绢喖鍨傚ù鐓庣摠閸ゅ霉閸忓吋缍戦柣鎰躬閺岀喖顢涢崱妤佸櫤婵犮垺鐗楃换娑㈠箻鐎电ǹ鏆¢梺鐟板殩閹凤拷 | PLC闂傚倷鑳剁涵鍫曞疾閻愭祴鏋嶉柨婵嗩槶閳ь兛绶氶弫鎾绘晸閿燂拷   闂傚倷绶氬ḿ褍螞濡ゅ懏鏅濋柕鍫濐槶閳ь剙鎳撻ˇ鍦偓娈垮枤鏋顏冨嵆瀹曟﹢鍩¢崘褏閽靛┑鐘垫暩閸嬫稑螞鎼淬劌鍨傞柛婵嗗閼板潡鏌熷▓鍨灓闁告纰嶇换娑㈠幢濡吋鍣紓浣插亾濠㈣埖鍔栭崑锝夋煕閵夘喖澧柡渚€浜堕幃妤冨枈婢跺顏� Ctrl+D 闂傚倷绀佺紞濠傖缚瑜旈、鏍川椤旇棄寮块梺鍐叉惈閹冲海绱掗埡鍛厵妞ゆ牗绮岄。鍏笺亜閵夛箑鐏撮柡灞诲妼閳藉螖閸愩劌顬夐梻浣告啞閺屻劑骞婇幇鏉跨妞ゆ劧绠戦~鍛存煃閵夈儱甯犻柟鏌ョ畺濮婂搫效閸パ冾瀳闁诲孩鍑归崣鍐嚕椤愶富鏁嬮柍褜鍓熼悰顕€骞囬鐔奉€撶紒鍓у閿氬ù婊堢畺閺屻劑鎮ら崒娑橆伓婵犵數鍋為崹鍫曞箰閹绢喖纾婚柟鍓х帛閸嬶絿鎲稿澶婂簥闁哄被鍎洪弫鍡涙煟閺傛寧鎲搁柍缁樻礋閺岋絽螣婢剁ǹ鎯堝銈呯箻娴滃爼骞冪涵鍜佹Ь闂佸搫鑻ˇ閬嶅箲閵忕姈鐔哥瑹椤栨稒銆冮梻渚€娼чˇ浠嬪垂瀹曞洨鐭嗗鑸靛姈閻撶喖鏌曡箛瀣偓鏍р槈瑜旈弻锝夊焺閸愵亝鍣у銈嗘穿缂嶄線宕洪埀顒併亜閹烘垵顏╅柣顓燁殜閺岀喓鈧數枪瀛濈紓浣规⒒閸嬫挾鎹㈠☉銏犲耿闁归偊鍓涙导鍥╃磽娴g瓔鍤欐い鎴濐樀閻涱噣宕橀鍏夊亾閿曞倸绠抽柡鍐ㄥ亰缁憋拷.

电子开发网

电子开发网电子设计 | 电子开发网Rss 2.0 会员中心 会员注册

闂備礁鐤囧Λ鍕箠閹版澘鏋侀柛婵勫劜瀹曞銇勯弽銊ㄥ鐟滄澘妫涢埀顒侇問閸犳牜鎹㈤幋鐐存珷婵犲﹤鐗嗙粈鍐偓鍏夊亾閻庯綆鍓涢ˇ顕€姊洪崫鍕闁稿鎹囬弻锟犲磼濞戞﹩妫嗘繝鈷€鍕垫疁濠碘€崇摠缁绘繈宕熼浣圭槑闂佽瀛╃粙鎺楀礉濡ゅ懎鏋侀柛婵勫劜瀹曞銇勯弽銊ㄥ鐟滄澘妫涢埀顒侇問閸犳牜鎹㈠Δ鍜佹晣闁告縿鍎虫稉宥嗕繆閵堝倸浜惧┑鐐叉噺鐢剝淇婄€电硶鍋撻敐鍛暢缂佲偓婢舵劖鐓熸い顐幘缁佺兘鏌i銏㈢暫鐎规洘顨婇、妤呭焵椤掑倹顫曢柨鐔哄Т閽冪喖鏌曟径妯煎帥闁搞倕瀚伴弻鐔兼濞戝崬鍓伴梺鍝ュ剳閹凤拷 闂備焦妞垮鈧紒鎻掝煼閹本銈i崘銊ь槯濡炪倖宸婚崑鎾剁磼閹插纾块柟宄邦儔閺佸秹宕熼鐔哥槗闂備線娼荤徊濠氬礉婵犲洤鐒垫い鎺嶇婵鏌℃担鍛婃喐闁逞屽墯缁嬫帡宕濋幒鏂垮灊闁绘ê纾埢鏃€鎱ㄥ鍡椾簼闁活亙绮欓弻娑樷槈濞咁収浜為幑銏ゅ焵椤掆偓椤法鎹勯悜妯侯槱婵犫拃鍕煉鐎规洘岣挎禒锕傛倻閳轰椒澹曢梺璺ㄥ櫐閹凤拷
闂備礁鐤囧Λ鍕涘Δ鈧悾鐑藉礋椤掆偓缁剁偤鏌嶆潪鎵窗闁告柨鎳庨湁闁稿繗澹堟竟妯尖偓瑙勬礈閸犳牠骞冭瀹曞爼濡搁敂鍓ф闂佽楠稿﹢閬嶅磻濡吋顐介柨鐕傛嫹100 c闂佽崵濮村ù鍌炲矗閳ь剟鏌嶆导娆愬 chm闂備礁鎼粔鍫曞储瑜忓Σ鎰版晸閻樺弬銉╂煕鐏炲墽绠橀柕鍫亰閺岋繝宕掑☉姘櫑闂佸摜鍋涢顓㈠焵椤掆偓濠€閬嶃€佹繝鍥舵晪婵炴垶姘ㄧ壕濂告煕閳藉棗骞樼紒鈧径鎰仭闁哄洨鍋為ˉ鐘崇箾閹绘帪鏀荤紒妤冨枔閳ь剨缍嗘禍鐐哄箺瀹ュ拋鐔嗛柤鍝ユ暩閸熻尙绱掓潏銊х疄鐎规洘锕㈠畷銊╊敇瑜嶉弲锝呂旈悩闈涗哗闁跨喆鍎甸崺鈧い鎺嶇婵鏌℃担鍛婃喐闁逞屽墯缁嬫帡宕濋幒鏂垮灊闁绘ê纾埢鏃€鎱ㄥ鍡椾簼闁活亙绮欓弻娑樷槈濞咁収浜為幑銏ゅ焵椤掆偓椤法鎹勯悜妯侯槱婵犫拃鍕煉鐎规洘岣挎禒锕傛倻閳轰椒澹曢梺璺ㄥ櫐閹凤拷
搜索: 您现在的位置: 电子开发网 >> 电子开发 >> 单片机实例 >> 正文

教你如何高效编程之头文件书写,头文件怎么编程

作者:佚名    文章来源:本站原创    点击数:1360    更新时间:2018/12/19

       在网上查了很长时间关于头文件的资料,但是发现很难找到适合我的。学单片机的朋友知道,很多程序经常要调用相同的函数,如果每写一个程序都把这些函数重新写一遍或者复制过来,那是很浪费时间的,现在我通过学习总结以及别人的经验,跟大家分享,欢迎大家转载学习。

        写程序最好是结构化编程,因为这样的程序看起来就不那么长了,一目了然,可以很快就知道这个程序实现什么功能,而且排错也非常简单。把常用的函数声明、自定义类型、外部变量的声明等写进头文件,与之配对的扩展名为.c的文件就写常用的函数,main.c最好就写一个主函数。之前学的51单片机,现在玩430单片机,就以430单片机为例,其他编程软件道理与这个相同。在IAR下新建工程,包含了main.c、mydefine.cmydefine.hmydefine.c和mydefine.h是一对)三个文件(注:可包含多个配对的头文件和C文件)。先把程序贴出来,再详解其中缘由。以下是单片机c语言编程

main.c内容:
#include "mydefine.h"
void main( void )
{
  // Stop watchdog timer to prevent time out reset
  WDTCTL = WDTPW + WDTHOLD;
  
  SegInitial();      //数码管控制引脚初始化
  
  long m = 0;
  while(1)
  {    
   disp(m);            //显示m的值
    delay(10);
   m++;
   if(m == 1000000)
     m = 0;
  }
}
 
 
mydefine.h的内容
 
#ifndef _MYDEFINE_H
#define _MYDEFINE_H

#include "msp430x14x.h"

typedef  unsigned int uint;
typedef unsigned char uchar;

void write_595(uchar dat);
void SegInitial(void);
void disp(long num);
void delays(uint x);
void delay(uint x);

#endif
 
mydefine.c的内容
 
#include "mydefine.h"
#include "msp430x14x.h"

/*********************************
      流水灯74hc595各引脚定义

*********************************/
#define CLK0 P2OUT &= ~BIT4
#define CLK1 P2OUT |= BIT4
#define STB0 P2OUT &= ~BIT2
#define STB1 P2OUT |= BIT2
#define DS0  P2OUT &= ~BIT5
#define DS1  P2OUT |= BIT5
#define LEDOFF P5OUT = 0x00


uchar dis_num[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,
              0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};    //数码管0~F共阳编码
uchar bitnum[]={0x01,0x02,0x04,0x08,0x10,0x20};         //数码管位选
uchar dispbuf[6];                                                             //数码管显示缓冲区

//以下是延时函数
void delay(uint x)
{
  uint a,b;
  for(a=x;a>0;a--)
    for(b=10000;b>0;b--);
}

//控制流水灯,使用P2.2(STB),P2.4(CLK),P2.5(DS)
void write_595(uchar dat)
{
  uint n;
  for(n = 0;n<8;n++)
  {
    if((dat&0x80) == 0x80)
      DS1;
    else
      DS0;
    dat <<= 1;
    CLK0;   
    CLK1;
  }
  STB1;
  STB0;
}

/*****************************************
            数码管显示初始化函数

*****************************************/
void SegInitial(void)
{
  P5DIR = 0XFF;
  P4DIR = 0XFF;
  P5OUT = 0X00;
  P4OUT = 0X00;
}


/****************************************
          数码管防重影延时函数

*****************************************/
void delays(uint x)
{
  for(;x>0;x--);
}


/*****************************************
            数码管显示函数
            位选 P5.0~P5.5
            段选 P4

*****************************************/
void disp(long num)
{
    uint i;
    dispbuf[0] = num%10;
    dispbuf[1] = num/10%10;
    dispbuf[2] = num/100%10;
    dispbuf[3] = num/1000%10;
    dispbuf[4] = num/10000%10;
    dispbuf[5] = num/100000%10;
    
    for(i=0;i<6;i++)
    {
      P4OUT = dis_num[dispbuf[i]];
      P5OUT = bitnum[i];
      delays(400);
      P5OUT=0X00;
    }
}
 
首先看main.c里面就写了一个主函数,它告诉读者该程序的主要功能。mydefine.h里面包含了一些函数的声明,如果使用到外部变量(或函数),则需要在该变量(或函数)前写extern加以说明其为外部变量(或函数)。写头文件一定要注意:
 
#ifndef XXXX
#define XXXX
        .
        .
        .
        .
        .
        .
#endif
 
其中XXXX习惯大写,名称不要与关键字相同,习惯写法请参照上面的程序,#ifndef XXXX    #define  XXXX   .....   #endif的作用是有些头文件已经在其他文件里包含过了,但是你在这个文件也包含了,如果没有上面那一句,则编译器会报错:重复定义!mydefine.c中用到了mydefine.h中的定义,则需要把mydefine包含进来,包含mydefine.h的意思是mydefine.h替换为mydefine.h的内容,即mydefine.c的完整内容为:
#include "msp430x14x.h"

typedef  unsigned int uint;
typedef unsigned char uchar;

void write_595(uchar dat);
void SegInitial(void);
void disp(long num);
void delays(uint x);
void delay(uint x);
/*********************************
      流水灯74hc595各引脚定义

*********************************/
#define CLK0 P2OUT &= ~BIT4
#define CLK1 P2OUT |= BIT4
#define STB0 P2OUT &= ~BIT2
#define STB1 P2OUT |= BIT2
#define DS0  P2OUT &= ~BIT5
#define DS1  P2OUT |= BIT5


/*********************************
      流水灯74hc595各引脚定义

*********************************/
#define LEDOFF P5OUT = 0x00


uchar dis_num[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,
              0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};
uchar bitnum[]={0x01,0x02,0x04,0x08,0x10,0x20};
uchar dispbuf[6];

//以下是延时函数
void delay(uint x)
{
  uint a,b;
  for(a=x;a>0;a--)
    for(b=10000;b>0;b--);
}

//控制流水灯,使用P2.2(STB),P2.4(CLK),P2.5(DS)
void write_595(uchar dat)
{
  uint n;
  for(n = 0;n<8;n++)
  {
    if((dat&0x80) == 0x80)
      DS1;
    else
      DS0;
    dat <<= 1;
    CLK0;   
    CLK1;
  }
  STB1;
  STB0;
}

/*****************************************
            数码管显示初始化函数

*****************************************/
void SegInitial(void)
{
  P5DIR = 0XFF;
  P4DIR = 0XFF;
  P5OUT = 0X00;
  P4OUT = 0X00;
}


/****************************************
          数码管延时函数

*****************************************/
void delays(uint x)
{
  for(;x>0;x--);
}


/*****************************************
            数码管显示函数
            位选 P5.0~P5.5
            段选 P4

*****************************************/
void disp(long num)
{
    uint i;
    dispbuf[0] = num%10;
    dispbuf[1] = num/10%10;
    dispbuf[2] = num/100%10;
    dispbuf[3] = num/1000%10;
    dispbuf[4] = num/10000%10;
    dispbuf[5] = num/100000%10;
    
    for(i=0;i<6;i++)
    {
      P4OUT = dis_num[dispbuf[i]];
      P5OUT = bitnum[i];
      delays(400);
      P5OUT=0X00;
    }  
}
 
        下面讲一下mydefine.c的功能,一些常用函数都写在里面,一般情况下我们写好头文件后不必对函数的原型进行深究,只需知道函数的功能即可,即头文件里的函数声明,多个C文件编译链接的时候,相当于主函数放在前面,其他函数放在后面,调用函数的时候就必须先对这些函数进行声明,否则编译器不知道你的函数原型是什么,而这些头文件就起到了函数声明的作用,所谓头文件就可以理解为在main函数前面事先要处理的程序(即声明和定义)。
 
        下面把这个结构化编程的等效程序贴出来,以方便大家理解:
 
#include "msp430x14x.h"
typedef  unsigned int uint;
typedef unsigned char uchar;

void write_595(uchar dat);
void SegInitial(void);
void disp(long num);
void delays(uint x);
void delay(uint x);

void main( void )
{
  // Stop watchdog timer to prevent time out reset
  WDTCTL = WDTPW + WDTHOLD;
  
  SegInitial();
  
  long m = 0;
  while(1)
  {
    
   disp(m);
    delay(10);
   m++;
   if(m == 1000000)
     m = 0;
  }

}

/*********************************
      流水灯74hc595各引脚定义

*********************************/
#define CLK0 P2OUT &= ~BIT4
#define CLK1 P2OUT |= BIT4
#define STB0 P2OUT &= ~BIT2
#define STB1 P2OUT |= BIT2
#define DS0  P2OUT &= ~BIT5
#define DS1  P2OUT |= BIT5


/*********************************
      流水灯74hc595各引脚定义

*********************************/
#define LEDOFF P5OUT = 0x00


uchar dis_num[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,
              0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};
uchar bitnum[]={0x01,0x02,0x04,0x08,0x10,0x20};
uchar dispbuf[6];

//以下是延时函数
void delay(uint x)
{
  uint a,b;
  for(a=x;a>0;a--)
    for(b=10000;b>0;b--);
}

//控制流水灯,使用P2.2(STB),P2.4(CLK),P2.5(DS)
void write_595(uchar dat)
{
  uint n;
  for(n = 0;n<8;n++)
  {
    if((dat&0x80) == 0x80)
      DS1;
    else
      DS0;
    dat <<= 1;
    CLK0;   
    CLK1;
  }
  STB1;
  STB0;
}

/*****************************************
            数码管显示初始化函数

*****************************************/
void SegInitial(void)
{
  P5DIR = 0XFF;
  P4DIR = 0XFF;
  P5OUT = 0X00;
  P4OUT = 0X00;
}


/****************************************
          数码管延时函数

*****************************************/
void delays(uint x)
{
  for(;x>0;x--);
}


/*****************************************
            数码管显示函数
            位选 P5.0~P5.5
            段选 P4

*****************************************/
void disp(long num)
{
    uint i;
    dispbuf[0] = num%10;
    dispbuf[1] = num/10%10;
    dispbuf[2] = num/100%10;
    dispbuf[3] = num/1000%10;
    dispbuf[4] = num/10000%10;
    dispbuf[5] = num/100000%10;
    
    for(i=0;i<6;i++)
    {
      P4OUT = dis_num[dispbuf[i]];
      P5OUT = bitnum[i];
      delays(400);
      P5OUT=0X00;
    }    
}
 
希望这些总结能对大家有所帮助,又不能理解的地方,可以互相交流一下。

Tags:单片机编程,头文件,单片机c语言,编程  
责任编辑:admin
请文明参与讨论,禁止漫骂攻击,不要恶意评论、违禁词语。 昵称:
1分 2分 3分 4分 5分

还可以输入 200 个字
[ 查看全部 ] 网友评论
    没有任何评论
闂備焦鐪归崹钘夅缚瑜旈幃鍝勨枎韫囷絽娈ㄩ梺閫炲苯澧寸€规洩缍侀獮瀣偐閻㈡晫褔姊洪幐搴b姇缁炬澘绉归幆鍥亹閹烘挴鎸呴梺绯曞墲閻燂箓宕戦崨瀛樼厱婵﹩鍓涙晶鏇㈡煙椤斿吋宸濋柣姘剁畺閹筹繝濡堕崱妯荤槑闂佽瀛╃粙鎺楀礉閺囥垹鏄ユ俊銈勭劍婵瓨绻濇繛鎯т壕缂備焦顨呴惌鍌炲箖閼恒儲濯撮柛鎰典簽閸炴挳姊洪幖鐐插姎濠⒀嗘閳绘捇骞嬮悩鐢碉紴闂佺懓顕慨鐤亹閺屻儲鐓ユ繛鎴烇供閸炵c闁诲氦顫夐幃鍫曞磿閼碱剚鏆滈柛顐f礀缁狀噣鏌嶈閸撶喎顕i悽鍛婃櫢闁跨噦鎷�,婵犵妲呴崹鐣屾閺囥垹鏋侀柟闂寸閺嬩線鏌熷▓鍨灍闁哄棌鏅犻弻锝夘敇濠婂啫濮ら梺浼欒閹凤拷,闂備礁鎲¢〃鍡椕哄⿰鍕珷闁哄稁鍘肩€氬绱掗垾瀹犲敽A缂傚倷鐒︾粙鎴λ囬柆宥嗗仱闁硅揪闄勯弲顒€霉閿濆牊顥夐柣銈庡櫍閺岋箓鍩€椤掑嫬绀冩い蹇撴噺濮e嫰鏌i悩杈劅闁搞劍婢橀湁婵☆垵鍋愮壕楣冩煙鐎电ǹ啸鐟滄媽灏欑槐鎺楊敊閽樺濮㈤悗瑙勬礃濞茬喖寮鍥︽勃闁艰澹嗛ˇ浼存倵鐟欏嫭鍋犻柛搴㈠▕閸┿垽鎳栭埡鍌涙闂佸壊鍋呯换鍌炴倶閿熺姵鈷戞い鎰╁€曞皬闂佺粯绮犻崹璺虹暦閹邦喚绠旈悶娑掆偓鍏呭闂佺ǹ鏈笟妤呭磻閵娾晛绾ч柍杞扮窔椤庢鏌涘▍璇插暊閺嬫牠鏌曟繛鍨姍缂併劌鍟胯彁闁搞儻绲洪崑鎾诲礃閹绘帞绋诲┑鐐存綑閸氬銆冮崨鑸汗闁秆勵殕閺咁剚鎱ㄥΟ鍧楀摵闁哄棌鏅犻幃妤€鈽夊▎蹇擃潓缂備浇椴搁崹鍨暦閿濆绠i柣妯兼暩鏁堥梻浣瑰閸愬骞忛敓锟�
最新推荐
闂佽崵濮嶉崘顭戜痪闂佸搫顑戠换婵嗙暦閻樿宸濇い鎺戝€婚幉顕€鏌℃径灞藉壋闁瑰嚖鎷�
 [闂傚倸鍊搁崐椋庣矆娓氣偓楠炲鏁撻悩顔瑰亾閸愵喖骞㈡俊鐐存礀閹碱偊銈导鏉戠妞ゆ帊鑳惰ぐ鍧楁⒒娴e憡鎯堢紒瀣╃窔瀹曘垽鎳栭埞鎯т壕婵﹩鍓﹀Σ鎼佹懚閺嶎厽鐓ラ柡鍥ㄦ皑閸斿秶鐥鐐靛煟闁哄本娲熷畷濂割敃椤厼鏋堥梻浣告惈閻鎹㈠┑鍡欐殾闁圭儤顨嗛弲婊堟煢濡警妯堝ù纭锋嫹]闂傚倸鍊搁崐椋庣矆娓氣偓楠炲鏁撻悩鍙傦箓鏌i幇顔芥毄闁活厼妫楅妴鎺戭潩閿濆懍澹曞┑鐘殿暯閳ь剙纾禒娑氣偓鍨緲鐎氼喗绂掗敂鍓х煓濠㈠墎枪椤ユ碍绻濋悽闈涗沪闁搞劎鏁告竟鏇㈩敇閻樻剚娼熼梺瑙勵問閸犳氨澹曟總鍛婄厱婵炲棙鍏庨鍕殼闁糕剝鐟㈤崑鎾舵喆閸曨剛鈹涚紓浣虹帛缁诲倿顢氶敐澶婄妞ゆ棁妫勬禍褰掓倵閻熸澘顥忛柛鐘愁殔琚欓柛顐犲劜閳锋帒霉閿濆懏鍟為柟顖氱墦閺岋絽螖閳ь剙螞濠靛宓侀柡宥庡弾閺佸啴鏌ㄩ弮鍥棄濞寸娀绠栧娲川婵犲啫顦╅梺鍛婃尰閻╊垶骞冮悿顖樹汗闁圭儤鎸鹃崣鍡涙⒑缂佹ɑ绀€闁稿﹤婀遍埀顒佺啲閹凤拷100 c闂傚倸鍊峰ù鍥х暦閸偅鍙忛柡澶嬪殮瑜版帒绀嬫い鏍ㄦ皑椤斿棝姊虹捄銊ユ珢闁瑰嚖鎷�
 [闂傚倸鍊风粈渚€骞栭位鍥焼瀹ュ懐锛熼梺鍦濠㈡﹢宕归崒娑栦簻闁哄秲鍔岄悞褰掓煛鐎n亪鍙勯柡灞炬礉缁犳稓鈧綆浜炴导鍕煟韫囨挾绠抽柡浣割煼瀵濡搁埡鍌氫簽闂佺ǹ鏈粙鎴︻敂閿燂拷]婵犵數濮烽弫鎼佸磻閻愬搫鍨傞柛顐f礀缁犱即鏌熼梻瀵歌箞闁搞儮鏂侀崑鎾诲捶椤撶倫鐐裁瑰⿰鍐╄础缂佽鲸甯¢崺鈧い鎺戝閸婂鏌i銈呪枅婵﹨娅i幏鐘诲箵閹烘繂濡烽梻浣告啞閸旀ê鐣烽悽鍨潟闁圭偓鍓氬ḿ鈺呮煕濡ゅ啫浠滅悮锝夋⒒娴e憡鍟炴繛璇х畵瀹曟粌鈽夐埀顑藉亾閸涘瓨鍊婚柤鎭掑劚娴狀垶姊虹拠鈥冲箺閻㈩垱甯楁穱濠冪鐎n偆鍘遍梺瀹犳〃缁€渚€鍩€椤掆偓閻忔繈顢氶敐澶婇唶闁哄洨鍠庨埀顒€顭烽弻娑㈠焺閸愮偓鐣兼繛瀵稿閸愶絾鏂€闂佺粯鍔曞鍫曟晬瀹ュ鐓涘〒姘川閸橈拷-TR
 [闂傚倸鍊搁崐鐑芥倿閿曗偓椤啴宕归鍛數闂侀€炲苯澧扮紒杈ㄥ浮楠炴捇骞掑┑鍫濇倯闂備浇顕栭崹浼存儗閸岀偛绠栨繛鍡樻惄閺佸棝鏌涚仦璇测偓鏍矈椤愶附鈷戦柤濮愬€曟牎婵炲瓨绮堢划娆忕暦濠靛棭鍚嬪璺猴攻濡差剟姊虹粙璺ㄧ伇闁稿鍋ゅ畷鎴︽晲閸氥倕缍婇弫鎰板炊閵娿儲鐣紓鍌欒閸嬫捇鏌涢幇銊︽澓濞存粍绮撻弻鐔煎垂椤旂⒈浠鹃柣搴㈢啲閹凤拷]LM324闂傚倸鍊风粈渚€骞栭位鍥敃閿曗偓閻ょ偓绻濇繝鍌滃缂佲偓婢舵劖鐓涚€广儱楠搁獮鏍ㄤ繆椤愶綇鑰块柡灞诲姂閹倝宕掑☉姗嗕紦4~20mA闂傚倸鍊风粈渚€骞栭位鍥焼瀹ュ懐锛熼梺纭呮彧缁犳垹绮婚鐐寸叆闁绘洖鍊圭€氾拷1~5V闂傚倸鍊搁崐鐑芥倿閿曞倹鍎戠憸鐗堝笒閸ㄥ倻鎲搁悧鍫濈瑲闁稿﹨鍩栭幈銊ノ熸径绋挎儓闂佹椿鍘奸悧鎾诲蓟閵娾晜鍋嗛柛灞剧☉椤忥拷
 [闂傚倸鍊搁崐鐑芥倿閿曗偓椤啴宕归鍛數闂侀€炲苯澧扮紒杈ㄥ浮楠炴捇骞掑┑鍫濇倯闂備浇顕栭崹浼存儗閸岀偛绠栨繛鍡樻惄閺佸棝鏌涚仦璇测偓鏍矈椤愶附鈷戦柤濮愬€曟牎婵炲瓨绮堢划娆忕暦濠靛棭鍚嬪璺猴攻濡差剟姊虹粙璺ㄧ伇闁稿鍋ゅ畷鎴︽晲閸氥倕缍婇弫鎰板炊閵娿儲鐣紓鍌欒閸嬫捇鏌涢幇銊︽澓濞存粍绮撻弻鐔煎垂椤旂⒈浠鹃柣搴㈢啲閹凤拷]LM386婵犵數濮烽。顔炬閺囥垹纾绘繛鎴烇公閼板潡寮堕崼姘珔闁搞劍绻冮妵鍕冀椤愵澀娌梺绋匡工閻忔岸濡甸崟顖氱鐎广儱娲ゆ俊鑺ョ節濞堝灝鐏¢柟鍛婂▕瀵鎮㈤悡搴n唹闂侀€涘嵆濞佳冣枔椤撶儐娓婚柕鍫濇閻撱儵鏌ㄩ弴銊ら偗鐎殿喛顕ч埥澶娾堪閸涱垱婢戦梻浣烘嚀閻忔繈宕锕€绀堥悹杞拌濞撳鏌曢崼婵嗘殭闁告梹绮撻弻鐔兼偡閻楀牊鎮欏銈嗘穿缂嶄焦淇婇幖浣哥厸濞达綀娅i弳浼存煟閻斿摜鐭婃い鎴濇缁顓兼径瀣珳婵犮垼娉涢鍥储闁秵鈷戦柟绋挎捣缁犳捇鏌涢悤浣镐簼濞e洤锕ョ缓浠嬪川婵犲倷缂撴俊鐐€栭悧鎾诲磹閺嶎偀鍋撳鐐
 [闂傚倸鍊搁崐鐑芥倿閿曗偓椤啴宕归鍛數闂侀€炲苯澧扮紒杈ㄥ浮楠炴捇骞掑┑鍫濇倯闂備浇顕栭崹浼存儗閸岀偛绠栨繛鍡樻惄閺佸棝鏌涚仦璇测偓鏍矈椤愶附鈷戦柤濮愬€曟牎婵炲瓨绮堢划娆忕暦濠靛棭鍚嬪璺猴攻濡差剟姊虹粙璺ㄧ伇闁稿鍋ゅ畷鎴︽晲閸氥倕缍婇弫鎰板炊閵娿儲鐣紓鍌欒閸嬫捇鏌涢幇銊︽澓濞存粍绮撻弻鐔煎垂椤旂⒈浠鹃柣搴㈢啲閹凤拷]936闂傚倸鍊搁崐鐑芥嚄閸撲礁鍨濇い鏍ㄧ矋閺嗘粓鏌熼悜姗嗘畷闁哄懏绻堥弻鏇㈠醇濠靛牆顣舵繛瀛樼矊缂嶅﹪寮婚悢铏圭<闁靛繒濮甸悘宥夋⒑缁嬫鍎嶉柛鏂跨焸濠€渚€姊洪幐搴g畵闁瑰啿閰e鎶芥偄閸忚偐鍘介梺鍝勫€圭€笛囧吹閸ヮ剚鐓涢悘鐐插⒔閳藉鎽堕敐澶嬬厽闁规儳鍟块銏ゆ煟韫囧海绐旀慨濠呮閹风娀鍨鹃搹顐や邯闂備焦瀵уú锔界濠婂牊鍋╅柣鎴f闁卞洭鏌¢崶鈺佹瀾婵炲懌鍨藉铏规崉閵娿儲鐝㈤梺鐟板殩閹凤拷
 [闂傚倸鍊搁崐椋庣矆娓氣偓楠炲鏁撻悩顔瑰亾閸愵喖骞㈡俊鐐存礀閹碱偊銈导鏉戠妞ゆ帊鑳惰ぐ鍧楁⒒娴e憡鎯堢紒瀣╃窔瀹曘垽鎳栭埞鎯т壕婵﹩鍓﹀Σ鎼佹懚閺嶎厽鐓ラ柡鍥ㄦ皑閸斿秶鐥鐐靛煟闁哄本娲熷畷濂割敃椤厼鏋堥梻浣告惈閻鎹㈠┑鍡欐殾闁圭儤顨嗛弲婊堟煢濡警妯堝ù纭锋嫹]闂傚倸鍊烽懗鍫曞磿閻㈢ǹ绀堟繝闈涚墛閺嗘粓鏌熼悜姗嗘當缂佺姷濞€楠炴牕菐椤掆偓婵′粙鏌¢崪浣稿⒋闁哄瞼鍠栭弻鍥晝閳ь剟宕㈤幘顔界厸閻庯綆鍋嗘晶鐢告煛鐏炵偓绀夌紒鐘崇洴婵$柉顦撮柨娑氬枛濮婃椽妫冨☉姘杸闂佺懓鎲℃繛濠囩嵁閸愵厹浜归柟鐑樻尭娴犲繘鏌f惔銏⑩姇闁挎碍銇勮箛銉﹀+濠电姷鏁告慨鐑藉极閹间礁纾婚柣鎰惈缁犱即鏌熺紒銏犳灈闁汇倗鍋撶换娑㈠箣閻愯尙鍔伴梺绋款儐閹瑰洭骞嗛崒鐐插窛濠电姴鍋嗘导锟�+闂傚倸鍊搁崐鐑芥嚄閸洏鈧焦绻濋崟顓狀槱婵炴潙鍚嬪ḿ娆戝閸ф鐓欑紓浣靛灩濞呮﹢鏌℃担鍛婎棦闁哄矉缍佸顒勫垂椤旇棄鈧垶姊虹粙鍧楊€楃紒澶婄秺瀵鈽夐姀鐘插祮闂侀潧枪閸庢壆鑺遍懡銈囩=濞达絾褰冩禍楣冩⒑鐠恒劌娅愰柟鍑ゆ嫹
 [闂傚倸鍊搁崐鎼佸磹妞嬪孩顐介柨鐔哄Т绾惧鏌涘☉鍗炲季婵炲皷鏅犻弻鏇熺箾閻愵剚鐝旈梺鍝勵儎缁舵岸寮婚弴銏犻唶婵犲灚鍔栨晥闂備胶枪椤戝啴宕濋幋婵愭綎濠电姵鑹鹃柋鍥煟閺冣偓娴滀粙鍩€椤掍礁娴柡宀€鍠栭幐濠冨緞鐏炴经鍥ㄧ厵妞ゆ梹顑欏ḿ鎰版煙瀹勭増鍤囬柟顔惧厴楠炲秹顢氶崨顔х偛鈹戦敍鍕杭闁稿﹥鐗犻獮鎰板箹娴e摜鐤呴梺鐐藉劤缁烩偓缂傚倹纰嶉妵鍕疀閹捐泛鈷堥梺杞扮缁夌數鎹㈠☉銏犲耿婵☆垰鎼闂備胶枪椤戞垿骞忛敓锟�]S7-200PLC闂傚倸鍊搁崐鐑芥倿閿曞倹鍎戠憸鐗堝笒缁€澶屸偓鍏夊亾闁逞屽墴閸┾偓妞ゆ帊绀侀崵顒€霉濠婂懎浠辨鐐村姍楠炴帒螖閳ь剟锝為崨瀛樼厪闁割偅绻冮ˉ婊堟煕閹炬潙鈻曟慨濠呮缁辨帒螣閻戔晜瀚绘繝纰樷偓鍐茬骇閻㈩垽绻濋悰顔跨疀濞戣鲸鏅濋梺鎶芥敱閼瑰墽绱炴繝鍥х畺妞ゅ繐鐗嗗婵囥亜閺冨倵鎷″ù纭锋嫹 S7_2
 [闂傚倸鍊风粈渚€骞栭位鍥焼瀹ュ懐锛熼梺鍦濠㈡﹢宕归崒娑栦簻闁哄秲鍔岄悞褰掓煛鐎n亪鍙勯柡灞炬礉缁犳稓鈧綆浜炴导鍕煟韫囨挾绠抽柡浣割煼瀵濡搁埡鍌氫簽闂佺ǹ鏈粙鎴︻敂閿燂拷]S7-200闂傚倸鍊风粈浣革耿闁秴鍌ㄧ憸鏃堝箖濞差亜惟闁宠桨鑳堕鍥ㄧ節閻㈤潧校闁煎綊绠栧畷娆撴偐缂佹ḿ鍘遍梺纭呭焽閸斿秴鈻嶉崶銊d簻闁冲搫鍟崢鎾煙椤旀娼愰柟宄版嚇瀹曘劍绻濋崨顖f敤缂傚倸鍊风拋鏌ュ磻閹剧粯鐓曢柡鍥ュ妼閻忥繝鏌i幘瀛樼闁绘搩鍋婂畷鑸殿槹鎼淬垹浠归梻浣告啞钃辩紒顔兼捣濡叉劙骞掑Δ鈧粻鐔兼倵閿濆骸浜滄い蹇ユ嫹,STEP7
 [闂傚倸鍊风粈渚€骞栭位鍥焼瀹ュ懐锛熼梺鍦濠㈡﹢宕归崒娑栦簻闁哄秲鍔岄悞褰掓煛鐎n亪鍙勯柡灞炬礉缁犳稓鈧綆浜炴导鍕煟韫囨挾绠抽柡浣割煼瀵濡搁埡鍌氫簽闂佺ǹ鏈粙鎴︻敂閿燂拷]ModbusPoll闂傚倸鍊搁崐椋庣矆娓氣偓楠炲鏁嶉崟顐㈢亰閻庡厜鍋撻柛鏇炵仛閺呫垽姊虹紒妯煎ⅹ闁绘稒鐭歶sSalve闂傚倸鍊搁崐鐑芥嚄閼哥數浠氬┑掳鍊楁慨瀵告崲濮椻偓閻涱喛绠涘☉娆愭闂佽法鍣﹂幏锟�
 [闂傚倸鍊风粈渚€骞栭位鍥焼瀹ュ懐锛熼梺鍦濠㈡﹢宕归崒娑栦簻闁哄秲鍔岄悞褰掓煛鐎n亪鍙勯柡灞炬礉缁犳稓鈧綆浜炴导鍕煟韫囨挾绠抽柡浣割煼瀵濡搁埡鍌氫簽闂佺ǹ鏈粙鎴︻敂閿燂拷]STEP7濠电姷鏁告慨鐑姐€傞挊澹╋綁宕ㄩ弶鎴濈€銈呯箰閻楀棛绮堥崼鐔虹瘈闂傚牊绋撴晶鎰版煕鐎n偅灏い顐g箞椤㈡﹢鎮╅崘鍙夌彴闂傚倷绀侀幖顐︽嚐椤栫偞鍎楀ù锝堟娑撳秵绻涢幋娆忕仼婵☆偅锕㈤幃褰掑箒閹烘垵顬夐梺瀹狀嚙閼活垶鍩為幋锔藉€风€瑰壊鍠栧▓鑸电節濞堝灝鏋欓柛妤€鍟块悾鐑藉箛閺夊灝宓嗛梺缁樏幖顐㈢毈闂傚倷娴囧▔鏇㈠闯閿曞倸绠柨鐕傛嫹 Smart_
 [闂傚倸鍊风粈渚€骞栭位鍥焼瀹ュ懐锛熼梺鍦濠㈡﹢宕归崒娑栦簻闁哄秲鍔岄悞褰掓煛鐎n亪鍙勯柡灞炬礉缁犳稓鈧綆浜炴导鍕煟韫囨挾绠抽柡浣割煼瀵濡搁埡鍌氫簽闂佺ǹ鏈粙鎴︻敂閿燂拷]Modbus闂傚倸鍊峰ù鍥х暦閸偅鍙忛柟缁㈠櫘閺佸嫰鏌涘☉娆愮稇闁汇値鍣i弻鐔煎箚閺夊晝鎾绘煕鎼粹槄鏀婚柕鍥у瀵粙濡歌閻撯偓闂備焦鎮堕崝宥囨崲閸儱钃熸繛鎴欏灩缁犵粯淇婇妶鍌氫壕闂佺ǹ锕ㄥ畷鐢稿箟閹绢喗鏅搁柨鐕傛嫹 v1.024 缂傚倸鍊搁崐鎼佸磹閹间礁纾瑰瀣椤愪粙鏌曢崼婵愭Ц缂佺媭鍨堕弻銊╂偆閸屾稑顏�
 [闂傚倸鍊风粈渚€骞栭位鍥焼瀹ュ懐锛熼梺鍦濠㈡﹢宕归崒娑栦簻闁哄秲鍔岄悞褰掓煛鐎n亪鍙勯柡灞炬礉缁犳稓鈧綆浜炴导鍕煟韫囨挾绠抽柡浣割煼瀵濡搁埡鍌氫簽闂佺ǹ鏈粙鎴︻敂閿燂拷]Modscan32闂傚倸鍊搁崐椋庣矆娓氣偓楠炲鏁嶉崟顐㈢亰閻庡厜鍋撻柛鏇炵仛閺呫垽姊虹紒妯煎ⅹ闁绘稒纭瀒m32,modb
 [闂傚倸鍊搁崐鐑芥倿閿曗偓椤啴宕归鍛數闂侀€炲苯澧扮紒杈ㄥ浮楠炴捇骞掑┑鍫濇倯闂備浇顕栭崹浼存儗閸岀偛绠栨繛鍡樻惄閺佸棝鏌涚仦璇测偓鏍矈椤愶附鈷戦柤濮愬€曟牎婵炲瓨绮堢划娆忕暦濠靛棭鍚嬪璺猴攻濡差剟姊虹粙璺ㄧ伇闁稿鍋ゅ畷鎴︽晲閸氥倕缍婇弫鎰板炊閵娿儲鐣紓鍌欒閸嬫捇鏌涢幇銊︽澓濞存粍绮撻弻鐔煎垂椤旂⒈浠鹃柣搴㈢啲閹凤拷]89c51闂傚倸鍊搁崐鐑芥嚄閼哥數浠氱紓鍌欒兌缁垶宕濆▎鎺擃棨闂傚倷绶¢崜娆戠矓閻㈢ǹ纾婚柣鏂挎憸缁犻箖鏌熺€涙ḿ鎳冮柣蹇婃櫆娣囧﹪顢曢敐蹇氣偓鎸庢叏婵犲啯銇濇い銏℃礋閺佹劙宕堕崜浣风礃闂傚倸鍊搁崐绋课涘Δ鍐濠电姴娲ら拑鐔兼煥濠靛棭妯堥柡浣稿€块弻娑㈠焺閸愮偓鐣烽梺缁樼缚閸ㄨ崵妲愰幘瀛樺濞寸姴顑呴幗鐢告⒑缂佹ü绶辨俊鍙夌睄tues
 [闂傚倸鍊搁崐鐑芥倿閿曗偓椤啴宕归鍛數闂侀€炲苯澧扮紒杈ㄥ浮楠炴捇骞掑┑鍫濇倯闂備浇顕栭崹浼存儗閸岀偛绠栨繛鍡樻惄閺佸棝鏌涚仦璇测偓鏍矈椤愶附鈷戦柤濮愬€曟牎婵炲瓨绮堢划娆忕暦濠靛棭鍚嬪璺猴攻濡差剟姊虹粙璺ㄧ伇闁稿鍋ゅ畷鎴︽晲閸氥倕缍婇弫鎰板炊閵娿儲鐣紓鍌欒閸嬫捇鏌涢幇銊︽澓濞存粍绮撻弻鐔煎垂椤旂⒈浠鹃柣搴㈢啲閹凤拷]婵犵數濮烽弫鎼佸磻閻愬搫鍨傞柛顐f礀缁犳壆绱掔€n偓绱╂繛宸簻鍥存繝銏f硾閿曪箓藝閻楀牅绻嗛柕鍫濈箳閸掍即鏌涢悤浣镐喊鐎规洘甯℃俊鎼佸煛閸屾粌骞堥梻浣虹帛閸旀牕岣垮▎鎺嗗徔otues婵犵數濮烽弫鎼佸磻濞戙埄鏁嬫い鎾跺枑閸欏繘鏌熼鍡忓亾闁哄鐗犻弻锟犲炊閳轰礁澹嬮梺鍏兼緲濞硷繝寮婚妸銉㈡婵☆垯璀︽导鈧梻浣规た閸樹粙鎮烽埡鍛畺婵°倕鎳忛弲鏌ュ箹鐎涙ḿ绠橀柡浣圭墱缁辨帡鎮欓浣哄嚒缂備礁顦遍弫鎼佸箲閵忕姭鏀藉┑鐘插姝囬梻鍌欑閹测€愁潖瑜版帇鈧啯绻濋崶褏鐣洪梺闈涱槴閺呮粓寮查幖浣圭叆闁绘洖鍊圭€氾拷
 [闂傚倸鍊搁崐鐑芥倿閿曗偓椤啴宕归鍛數闂侀€炲苯澧扮紒杈ㄥ浮楠炴捇骞掑┑鍫濇倯闂備浇顕栭崹浼存儗閸岀偛绠栨繛鍡樻惄閺佸棝鏌涚仦璇测偓鏍矈椤愶附鈷戦柤濮愬€曟牎婵炲瓨绮堢划娆忕暦濠靛棭鍚嬪璺猴攻濡差剟姊虹粙璺ㄧ伇闁稿鍋ゅ畷鎴︽晲閸氥倕缍婇弫鎰板炊閵娿儲鐣紓鍌欒閸嬫捇鏌涢幇銊︽澓濞存粍绮撻弻鐔煎垂椤旂⒈浠鹃柣搴㈢啲閹凤拷]51闂傚倸鍊搁崐椋庣矆娓氣偓楠炲鏁撻悩顔瑰亾閸愵喖骞㈡俊鐐存礀閹碱偊銈导鏉戠妞ゆ帊鑳惰ぐ鍧楁⒒娴e憡鎯堢紒瀣╃窔瀹曘垽鎳栭埞鎯т壕婵﹩鍓﹀Ο鈧梺鍝勬湰缁嬫垿鍩為幋锕€骞㈡俊銈咃梗閹綁姊绘担渚綊闁告劕鐏濇慨娑氱磽娴d粙鍝洪悽顖滃仱閸┾偓妞ゆ帒锕︾粔顒勬煕閳哄倻澧遍柍褜鍓氶悢顒勫箯閿燂拷 protues婵犵數濮烽弫鎼佸磻濞戙埄鏁嬫い鎾跺枑閸欏繘鏌熼鍡忓亾闁哄鐗犻弻锟犲炊閳轰礁澹嬮梺鍏兼緲濞硷繝寮婚妸鈺傚亞闁稿本绋戦锟�
闂備礁鎼悧鍐磻閹剧粯鐓涢柛灞剧矊椤eジ鏌$€n亜鏆熺紒顔规櫊閺佹捇鏁撻敓锟�
关于我们 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 在线帮助 - 文章列表
返回顶部
刷新页面
下到页底
晶体管查询