文章首页 | 基础入门 | 电路原理图 | 濮婎垰鑸伴崶鎯х杽娓氾拷 | PLC閸╄櫣顢�   閵嗗﹤顩ч弸婊冩灘濞嗐垺婀扮粩娆欑礉鐠囬攱瀵� Ctrl+D 閹靛濮╅弨鎯版閿涗焦鍔呯拫銏″亶閻ㄥ嫭鏁幐浣碘偓锟�娑撯偓鐠у嘲顒熸稊鐘辩鐠х柉绻樺銉礉閻㈤潧鐡欏鈧崣鎴犲竾濞嗐垼绻嬮幃顭掔磼.

电子开发网

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

閳藉懐鏁哥捄顖氬彆瀵繑澧滈崘宀嬬礉閺堚偓閺傛壆澧楅妴濠勬暩鐎涙劗鏁哥捄顖氬彆瀵繗顓哥粻妤€娅掗妴瀣剁礉閻絻鐭鹃崗顒€绱¢弻銉嚄閹靛鍞� 閻絻鐭鹃崗顒€绱$拋锛勭暬閸c劊鈧劗鏁哥€涙劒绮犳稉姘眽閸涙ê绻€婢跺洦澧滈崘灞烩偓锟�
閳藉棗宕勬径鈺侇劅娴兼艾宕熼悧鍥ㄦ簚鐎圭偘绶�100 c鐠囶叀鈻� chm閺嶇厧绱¢妴鍌濈カ閺傛瑥鍞寸€圭顕涚紒鍡礉鐟曞棛娲婃笟瀣摍婢舵熬绱濋崘鍛啇楠炶¥鈧劗鏁哥€涙劒绮犳稉姘眽閸涙ê绻€婢跺洦澧滈崘灞烩偓锟�
搜索: 您现在的位置: 电子开发网 >> 电子开发 >> 单片机 >> 正文

16级灯控制器程序

作者:佚名    文章来源:本站原创    点击数:1449    更新时间:2010-12-3

16级灰度护栏灯控制器程序   

硬件资源:   
RAM ADDRESS :0000H---7FFFH   
CF card ADDRESS:8000H---8FFFH   
CPLD    ADDRESS:9000H---FFFFH   
RAM SIZE    :32K    FLASH SIZE:8MBYTE = 4K*512PAGE*4PCS   
PCB:V10   
*/    
#include <reg52.h>    
#include <intrins.h>    
//#include <ctype.h>//字符函数    
#include <string.h>//字符串函数    
#include <stdio.h>//一般I/O函数    
#include <stdlib.h>//标准函数    
//#include <math.h>//数学函数    
#include <absacc.h>//绝对地址    
#include <intrins.h>//内部函数    
#include    <setjmp.h>    
#define uchar unsigned char    
#define uint unsigned int    
#define byte unsigned char    
#define ulong unsigned long    
#define bool bit    
#define TRUE 1    
#define FALSE 0    
#define V_TH0   0xff  /* 时间常数高8位 (65536-500)/256            */    
#define V_TL0   0xff  /* 时间常数低8位 (65536-500)>256   11.0592*/    
//#define V_TH0   (65536-1536)/256    
//#define V_TL0   (65536-1536)>256    
#define V_TMOD  0x01                     /* 定时器T0方式控制字 */    
#define WriteDeviceAddress 0xa0    
#define ReadDviceAddress    0xa1    
sfr     CHPCON= 0xbf;    
sfr     CHPENR=0xf6;    
sfr     PMR= 0xC4;    
sfr     SBUF1=0xc1;    
sfr     SCON1=0xc0;    
sbit SM01  = SCON1^7; /* alternative SM0_FE_1  */    
sbit SM11  = SCON1^6; /* alternative SM1_1  */    
sbit SM21  = SCON1^5; /* alternative SM2_1  */    
sbit REN1  = SCON1^4; /* alternative REN_1  */    
sbit TB81  = SCON1^3; /* alternative TB8_1  */    
sbit RB81  = SCON1^2; /* alternative RB8_1  */    
sbit TI1   = SCON1^1; /* alternative TI_1   */    
sbit RI1   = SCON1^0; /* alternative RI_1   */    
sbit ES1   = IE^6;    
/* 定义定时器T0的时间常数值和方式控制字 */    
    
#define  REGL XBYTE[0x9003] //控制寄存器护栏管的长度    
#define  FPGH XBYTE[0x9001] //闪存页高位    
#define  FPGL XBYTE[0x9002] //闪存页低位    
//-------- CF CARD REG ADDRESS    
#define EVEN_Data       XBYTE[0xa400]    
#define ODD_Data        XBYTE[0xa400]    
#define  Data_Reg       XBYTE[0xa000]   //DATA REGISTER(R/W)    
#define  Error_Reg      XBYTE[0xa001]       //ERROR REGISTER(READ)    
#define  Features       XBYTE[0xa001]  //FEATURE REGISTER(WRITE)    
#define  Sectr_Cnt      XBYTE[0xa002]//SECTOR COUNT REGISTER(R/W)    
#define  Sectr_No       XBYTE[0xa003]  //SECTOR NUMBER REGISTER(R/W)    
#define  Cylinder_Low   XBYTE[0xa004]  //CYLINDER LOW REGISTER(R/W)    
#define  Cylinder_Hi    XBYTE[0xa005]   //CYLINDER HIGH REGISTER(R/W)    
#define  Drv_Head       XBYTE[0xa006]   //DIRVE/HEAD REGISTER(R/W)    
#define  Status         XBYTE[0xa007]   //STATUS REGISTER(READ)    
#define  Command        XBYTE[0xa007]  //COMMAND REGISTER(WRITE)    
#define Alt_Status      XBYTE[0xa00e]   //Alternate Status Regiter(read only)    
#define Device_Ctrl     XBYTE[0xa00e]   //Device Control Register(Write only)    
#define Device_Addrs    XBYTE[0xa00f]   //Drive Address Register(read only).Not used in this demo    
#define Config          XBYTE[0x8200]   //Configuration Option Register    
#define Socket          XBYTE[0x8206]   //Socket and copy Register    
//CF card All command code    
#define ChkPwr      0xe5    
#define Diagnostic  0x90    
#define EraseSctr   0xc0    
#define Format      0x50    
#define Identify    0xec    
#define Idle        0xe3    
#define Idlelmm     0xe1    
#define Initialize  0x91    
#define ReadBuf     0xe4    
#define ReadLong    0x22    
#define ReadMulti   0xc4    
#define ReadSctr    0x20    
#define ReadVerify  0x40    
#define Recalibrate 0x10    
#define ReadSense   0x03    
#define Seek        0x70    
#define SetFeature  0xef    
#define SetMulti    0xc6    
#define Sleep       0xe6    
#define Standby     0xe2    
#define Standbylmm  0xe0    
#define Translate   0x87    
#define WearLevel   0xf5    
#define WriteBuf    0xe8    
#define WriteLong   0x32    
#define WriteMulti  0xc5    
#define WriteSctr   0x30    
#define WriteVerify 0x3c    
#define WrtMwoErase 0xcd    
#define WrtSwoErase 0x38    
#define debug 1;    
    
//**********************************************    
sbit    senden=P3^2;    
sbit    SDA=P3^3;    
sbit    SCL=P3^5;    
sbit    wdgclr=P1^7;    
//*************************************************    
uchar   Select;    
uchar   LBA[6];                 //Sets up sector ,CF Card Address    
uint    zhepe;                  //帧频    
uint    ms;                     //毫秒定时    
uchar   ADD;                    //地址    
uchar   idata iic_buf[96];      //接收缓冲区    
uint    pointer;    
uchar   xdata *bufp;    
uchar   subchk;                 //接收指针 和校验    
uchar   paklen;                 //包长    
    
uint    Dcyli;          //总柱面    
uint    Dhead;          //总磁头    
uint    sec_track;      //扇区/磁道    
    
uchar   bdata flag;    
sbit    frameok=flag^0;         //rece ok    
sbit    color=flag^1;           //0 sing red color 1 red green color    
sbit    rec_sta=flag^2;         //1 进入接状态,不显示    
sbit    rec_end=flag^3;    
sbit    timout=flag^4;    
//jmp_buf env;    
//int retval;    
/***************************************************************************/    
void I2cDelay(unsigned int number) {    
    unsigned char temp;    
    for(;number!=0;number--,wdgclr=!wdgclr) {    
        for(temp=112;temp!=0;temp--) {    
        }    
    }    
}    
//*******************************    
void SomeNOP(void)    
{    
uchar i;    
i=5;    
while(i--);    
}    
/***************************************************************************/    
void Start() {    
    SDA=1;SomeNOP();    
    SCL=1;SomeNOP();    
    SDA=0;SomeNOP();    
    SCL=0;SomeNOP();    
}    
/***************************************************************************/    
void Stop() {    
    SCL=0;SomeNOP();    
    SDA=0;SomeNOP();    
    SCL=1;SomeNOP();    
    SDA=1;SomeNOP();    
}    
/***************************************************************************/    
void Ack() {    
    SDA=0;SomeNOP();    
    SCL=1;SomeNOP();    
    SCL=0;SomeNOP();    
    SDA=1;SomeNOP();    
}    
/***************************************************************************/    
void NoAck() {    
    SDA=1;SomeNOP();    
    SCL=1;SomeNOP();    
    SCL=0;SomeNOP();    
}    
/***************************************************************************/    
bit TestAck() {    
    bit ErrorBit;    
    SDA=1;SomeNOP();    
    SCL=1;SomeNOP();    
    ErrorBit=SDA;    
    SCL=0;    
    return(ErrorBit);    
}    
/***************************************************************************/    
Write8Bit(unsigned char input)    
{    
unsigned char temp;    
for(temp=8;temp!=0;temp--) {    
        SDA=(bit)(input&amt;0x80);    
        SCL=1;SomeNOP();    
        SCL=0;SomeNOP();    
        input=input<<1;    
    }    
}    
/***************************************************************************/    
void Write24c02(unsigned char xdata *Wdata,unsigned char RomAddress,unsigned char number) {    
    wdgclr=!wdgclr;    
    Start();    
    Write8Bit(WriteDeviceAddress);    
    TestAck();    
    Write8Bit(RomAddress);    
    TestAck();    
    for(;number!=0;number--) {    
        Write8Bit(*Wdata);    
        TestAck();    
        Wdata++;    
    }    
    Stop();    
    I2cDelay(10);    
}    
/***************************************************************************/    
unsigned char Read8Bit() {    
    unsigned char temp,rbyte=0;    
    for(temp=8;temp!=0;temp--) {    
        SCL=1;    
        rbyte=rbyte<<1;    
        rbyte=rbyte|((unsigned char)(SDA));    
        SCL=0;    
    }    
    return(rbyte);    
}    
    
/***************************************************************************/    
void Read24c02(unsigned char *RamAddress,unsigned char RomAddress,unsigned char bytes) {    
//  unsigned char temp,rbyte;    
    wdgclr=!wdgclr;    
    Start();    
    Write8Bit(WriteDeviceAddress);    
    TestAck();    
    Write8Bit(RomAddress);    
    TestAck();    
    Start();    
    Write8Bit(ReadDviceAddress);    
    TestAck();    
    while(bytes!=1) {    
    *RamAddress=Read8Bit();    
    Ack();    
    RamAddress++;    
    bytes--;    
    }    
    *RamAddress=Read8Bit();    
    NoAck();    
    Stop();    
}    
    
/*************************************************   
   
************************************************/    
void delayms( uchar ticks )    
{    
uint    Count;    
uchar   Tick;    
for (Tick=ticks;Tick>0;Tick--)    
    {    
    for (Count=0;Count<=500;Count++);    
    wdgclr=!wdgclr;    
    }    
    
}   

/************************************   
    通讯协议解析          接收数据   
*******************************************8   
*/    
void receive(void)    
{    
uchar   i;    
uchar xdata *sp;    
wdgclr=!wdgclr;    
switch(XBYTE[0x1002])//命令标志    
    {    
    case 1:rec_sta=1;TR0=0;//进入接收状态    
        break;    
    case 2:         //接收数据    
    
        break;    
    case 0:         //加载某一帧数据到显存    
        break;    
    case    3:      //将一扇区数据写闪存    
    
        break;    
    case    4:      //测试    
    
        break;    
    case 5:     //接收到显存    
    
    case 6:     //同步信号    
    
        ms=0;    
    break;    
    case 7:         //进入自动播放    
        sp=0x1008;    
        for(i=0;i<12;i++)    
            {    
            Write24c02(sp,i*8,8);    
            sp+=8;    
            }    
        ms=0;    
        TR0=1;    
    break;    
    case 8:    
    
    break;    
    default:break;    
    }    
}    
void send_char(unsigned char ascii)    
/*往串口发送一个字符  */    
{    
SBUF=ascii;    
while(!TI);TI=0;    
}    
    
void send_string(unsigned char code *string)    
/*往串口发送一个字符串,字符串为存储在程序空间,碰到0x00结束 */    
{    
TB8=1;    
while(*string!=0)    
    {    
    send_char(*string);    
    string++;    
    }    
TB8=0;    
}    
//***************************    
void delay(uchar sec)    
{    
uint    i;    
while(sec)    
    {for(i=0;i<50000;i++);sec--;}    
}    
//****************************    
void    SoftRST(void)    
{    
Device_Ctrl=0x0c;    
Device_Ctrl=0x08;    
delay(10); //delay 0.5s    
}    
//*********************************    
bit Busy(void)    
{    
send_string("\r\Busy");    
while(Status&amt;0x80);    
if(Status&amt;0x01)    
    {send_string("\r\Busy_ERR");return(0);}    
else    
    {send_string("\r\Busy_OK");return(1);}    
}    
//**********************************    
bit Wait_Ready(void)    
{    
send_string("\r\Wait_Ready");    
while((Status&amt;0xf0)!=0x50);    
send_string("\r\Wait_Ready_OK");    
return(1);    
}    
//**********************************    
bit Wait_Drq(void)    
{    
send_string("\r\Wait_Drq");    
while((Status&amt;0xf8)!=0x58);    
send_string("\r\Wait_Drq OK");    
return(1);    
    
}    
    
//********************************    
void    Enable8bit(void)    
{    
Busy();    
Features=0x01;    
Drv_Head=Select;    
Command=0xef;    
}    
//*********************    
void    SetupCard(void)    
{    
Select=0xe0;    
Socket=0;    
Enable8bit();    
}    
//****************************    
//Set up sector count ,lba addresses command code    
//****************************    
void    Function(void)    
{    
send_string("\r\Function");    
Busy();    
Sectr_Cnt=LBA[0];    
Sectr_No=LBA[1];    
Cylinder_Low=LBA[2];    
Cylinder_Hi=LBA[3];    
Drv_Head=LBA[4];    
Command=LBA[5];    
}    
//*********************************    
void    Read512(uchar xdata *RamBuf)    
{    
uint    i;    
for(i=0;i<256;i++)    
    {*RamBuf++=EVEN_Data;    
    *RamBuf++=ODD_Data;}    
}    
//*********************************    
void    Write512(uchar xdata *RamBuf)    
{    
uint    i;    
for(i=0;i<256;i++)    
    {EVEN_Data=*RamBuf++;    
    ODD_Data=*RamBuf++;}    
}    
//***********************************    
void    Read_Sctr(uchar lba0,lba1,lba2,lba3)    
{    
    
Wait_Ready();    
LBA[0]=1;    
LBA[1]=lba3;    
LBA[2]=lba2;    
LBA[3]=lba1;    
LBA[4]=0xe0|(lba0&amt;0x0f);    
LBA[5]=ReadSctr;    
Function();    
Wait_Drq();    
Read512(0x0000);    
}    
//***********************************    
void    Read_Identify(void)    
{    
    
Wait_Ready();    
LBA[0]=1;    
LBA[1]=0;    
LBA[2]=0;    
LBA[3]=0;    
LBA[4]=0xe0;    
LBA[5]=Identify;    
Function();    
Wait_Drq();    
Read512(0x0000);    
}    
    
//***********************************    
void    Write_Sctr(void)    
{    
Wait_Ready();    
LBA[0]=1;    
LBA[1]=0x0a;    
LBA[2]=0;    
LBA[3]=0;    
LBA[4]=0xe0;    
LBA[5]=WriteSctr;    
Function();    
Wait_Drq();    
Write512(0x0000);    
}    
//**************************    
void    Send512(void)    
{    
uint    i;    
uchar xdata *p;    
p=0;    
TB8=1;    
for(i=0;i<512;i++)    
    {SBUF=*p++;while(!TI);TI=0;}    
TB8=0;    
}    
    
//********************************************    
//                   主程序    
//********************************************    
void main()    
{    
uchar *p;    
uint    l;    
//uchar i,play; //播放列表计数    
//uint  rplay;  //重复次数    
PS=1;    
ES=0;    
SM0=1;    
SM1=1;    
T2CON=0X30;    
RCAP2H=0XFF;    
TH2=0XFF;    
RCAP2L=0Xfb;    //9600bps= c4  115200bps =fb 57600= f6 19200 = e2    
TL2=0Xfb;    
TR2=1;    
    
REN=1;    
TMOD=0x05;  //定时器0 模式1 外部时钟    
//TMOD=0x01;    //定时器0 模式1 外部时钟    
TL0=V_TL0;    
TH0=V_TH0;    
//TR0=1;    
ET0=1;    
//ES=1;    
TI=0;    
EA=1;    
SM2=1;    
PMR=PMR|0x01;   //enable on-chip RAM    
ADD=(~P1)&amt;0x1f;    
p=&amt;iic_buf[0];    
Read24c02(p,0,96);    
//ADD=1;    
frameok=0;    
bufp=0x1000;    //接收缓冲区指针    
send_string("\r\CF card contr 2004-10-29");    
Send512();    
SoftRST();    
SetupCard();    
Write_Sctr();    
for(l=4096;l<51200;l++)    
    {Read_Sctr(0,0,l/256,l>256);    
     Send512();    
     }    
while(1)    
    {    
    wdgclr=!wdgclr;    
    if(frameok)    
        {receive();frameok=0;}    
    }//while(1)    
}    
//*****************************************    
//          串口中断服务程序    
//*****************************************    
void send(void) interrupt  4    
{    
uchar d;    
if(!TI &amt;&amt; RI &amt;&amt; !frameok)    
{RI=0;    
d=SBUF;    
    if(pointer==0)    
        {if(d==ADD)    
            {subchk=d;*bufp++=d;TB8=1;senden=1;    
            SBUF=d;while(!TI);TI=0;    
            senden=0;SM2=0;TB8=0;pointer++;    
            }    
    
        }    
    else    
        {if(pointer==4104)    
            {    
            if(d==subchk)    
                {senden=1;SBUF=subchk;while(!TI);senden=0;TI=0;frameok=1;}    
            else    
                {senden=1;SBUF=~subchk;while(!TI);TI=0;senden=0;}    
            SM2=1;pointer=0;    
            bufp=0x1000;    
            }    
        else    
            {    
            *bufp++=d;subchk+=d;pointer++;    
            }    
        }    
  }//end if    
}    
//*************************************    
void timer1() interrupt  1    
{TL0=V_TL0;    
TH0=V_TH0;    
ms++;    
if(ms>zhepe)    
    {timout=1;    
    ms=0;    
    }    
}    


Tags:51单片机,16级灯控制器  
责任编辑:admin
  • 上一篇文章:
  • 下一篇文章:
  • 请文明参与讨论,禁止漫骂攻击,不要恶意评论、违禁词语。 昵称:
    1分 2分 3分 4分 5分

    还可以输入 200 个字
    [ 查看全部 ] 网友评论
        没有任何评论
    閻㈤潧鐡欏鈧崣鎴犵秹閿涙碍鐪归梿鍡欐偅閸氬牆鎮囩猾鑽ゆ暩鐎涙劕鍩楁担婊€绗岄悽浣冪熅閸ュ墽娈戠純鎴犵彲閿涘lc瀹搞儲甯堕幎鈧張锟�,濡紕鏁搁弫鎵暩閻儴鐦�,閸楁洜澧栭張绡岲A缁涘鐡戦敍浣藉疮閽€鍐暩鐠侯垰娴樼純鎴犵彲缁儳宕曢敍灞艰礋瀹搞儳鈻肩敮鍫濆灡闁姳鐜崐绗衡偓鍌涱偨鏉╁骸鍙у▔銊ヤ簳娣団€冲彆娴兼褰块敍姘辨暩鐎涙劕绱戦崣鎴犵秹閿涳拷
    最新推荐
    鐠у嫭鏋¢崠鍛瑓鏉烇拷
     [闂傚倷绀侀幉锟犮€冮崱妞曞搫饪伴崟顒佺彿闂佸搫绋侀崢鑲┾偓姘槸铻栭柨鏇氱劍绾爼鏌曢崼顐喊闁哄矉绻濆畷鎺楁晜閽樺浼�]闂傚倷绀侀幉锟犲Φ閻愮數鐭嗗〒姘e亾濠碘€崇仛瀵板嫮浠︾粙澶稿濠电偞鍨电壕顓犳閹殿喚纾奸柛娆惷畵鍡欌偓瑙勬穿缁绘繂顕i幘顔藉亹鐎瑰壊鍠楀В鍫ユ⒒娴e憡鎯堥柣妤€妫濋獮鏍敃閿旇棄浠鹃梺鍛婃处閸撴盯鎮疯ぐ鎺撶叆闁绘洖鍊圭€氾拷100 c闂備浇宕垫慨鏉懨归崟顖氱闁跨噦鎷�
     [闂備礁鎼ˇ閬嶅磿閹版澘鍨傛い鏍ㄥ焹閺嬪酣鏌曡箛瀣伄閻忓繒鏁婚弻銊╂偆閸屾稑顏�]婵犵數鍋為崹鍫曞箰閹间絸鍥┾偓鍦О娴滃湱绱掗埀顒勬倻閻娀姊虹拠鎻掝劉闁告劘宕电槐鎾愁潩閸楃偛袣闂佸憡娲﹂崜娑€€呴悜鑺ュ仯闁诡厽甯掓俊浠嬫煕閳轰礁鈧灝顕i崼鏇熷€婚柛鈩冾殘娴犙冣攽閻愬弶锛嶉柡渚囩厺-TR
     [闂傚倷鐒﹀鍨熆閳ь剛绱掗幓鎺濈吋闁诡垰鐭傞幃娆擃敆閸屻倖绁梺鑽ゅУ娴滀粙宕濆澶婃槬闁稿瞼鍋為崑锝吤归敐鍥ㄥ殌缂佲偓閸愨斂浜滈柟鍨鐎氾拷]LM324闂備礁鎼ˇ顐﹀疾濠婂牆绀夐柡宥庡幖濡﹢鏌ㄩ悤鍌涘4~20mA闂備礁鎼ˇ閬嶅磿閹达箑绠柨鐕傛嫹1~5V闂傚倷鐒﹂惇褰掑垂瑜版帗鍊舵慨妯夸含閻牓鏌ㄩ悤鍌涘
     [闂傚倷鐒﹀鍨熆閳ь剛绱掗幓鎺濈吋闁诡垰鐭傞幃娆擃敆閸屻倖绁梺鑽ゅУ娴滀粙宕濆澶婃槬闁稿瞼鍋為崑锝吤归敐鍥ㄥ殌缂佲偓閸愨斂浜滈柟鍨鐎氾拷]LM386婵犵绱曢崑娑橈耿鏉堚晛鍨濇い鏍仦閸婂灚銇勯幒宥囧妽濠殿垱鎸抽弻鐔煎箲閹伴潧娈銈嗘煥閿曨亪寮诲☉婊呯杸闁瑰灝鍟崜璺侯渻閵堝啫鍔滈柟鐟版搐椤曪綁濡搁埡浣虹暰閻熸粌顑嗙粋宥夋晲婢跺鍘遍梺鎸庣箓閸燁偅淇婃總鍛婂仺妞ゆ牓鍊栫€氾拷
     [闂傚倷鐒﹀鍨熆閳ь剛绱掗幓鎺濈吋闁诡垰鐭傞幃娆擃敆閸屻倖绁梺鑽ゅУ娴滀粙宕濆澶婃槬闁稿瞼鍋為崑锝吤归敐鍥ㄥ殌缂佲偓閸愨斂浜滈柟鍨鐎氾拷]936闂傚倷鑳剁划顖滄暜閹烘鏅濋柕鍫濈墑娴滃綊鏌熺紒銏犳灍闁稿鍔岄湁闁挎繂鎳庨弳鐔兼煟閺傛寧鍤囬柡灞剧☉铻i柣鎾冲閻忎線姊虹拠鈥虫灈闁挎洦浜滈悾鐑藉醇閺囩喐娅㈤梺璺ㄥ櫐閹凤拷
     [闂傚倷绀侀幉锟犮€冮崱妞曞搫饪伴崟顒佺彿闂佸搫绋侀崢鑲┾偓姘槸铻栭柨鏇氱劍绾爼鏌曢崼顐喊闁哄矉绻濆畷鎺楁晜閽樺浼�]闂備胶鍎甸崜婵堟暜閹烘绠犻幖娣妽閺咁剟鏌熼柇锕€鍘撮柡瀣墵閺屾洝绠涢妷褏锛熼梺闈涚墛閹告娊骞冭ぐ鎺撳仏閻庢稒锚椤忥拷+濠电姷鏁搁崑鐐哄箰閹绢喖鐤炬繛鎴炲焹閸嬫捇鎯傞崨濠傤伓+闂傚倷鑳堕、濠勭礄娴兼潙纾块柟缁㈠櫘閺佸棝鏌i弬鍨倯闁稿骸绉归弻娑㈠即閵娿儰绨荤紓浣插亾闁跨噦鎷�
     [闂傚倸鍊风欢锟犲磻閸涱収娼╅柕濞炬櫅閺嬩線鏌曢崼婵愭Ч闁稿鍔戝濠氬醇閻旀亽鈧帡鏌熼挊澶屝ч柟顔款潐閹峰懘鎮烽幍顕呮О婵$偑鍊栭幐鎼佸箟閳ョ繀缂氭い蹇撶墱閺佸秵绻涢崱妯哄Е闁稿鎷�]S7-200PLC闂傚倷鐒﹂惇褰掑礉瀹€鈧埀顒佸嚬娴滅偤骞愰幒妤€顫呴柕鍫濇閸撴娊姊虹紒妯烩拹婵″弶甯¢獮蹇涱敃閳锋艾缍婇幃顏堝川椤旂⒈浼� S7_2
     [闂備礁鎼ˇ閬嶅磿閹版澘鍨傛い鏍ㄥ焹閺嬪酣鏌曡箛瀣伄閻忓繒鏁婚弻銊╂偆閸屾稑顏�]S7-200闂備礁婀遍崢褔鎮洪妸鈺佺濠电姵鑹鹃崙鐘绘煕閹般劍娅囨い鈺冨厴閹鎷呴崨濠呯缂備讲鍋撻柛鏇ㄥ灡閻撴洟鐓崶椋庢偧闁告ɑ绮庣槐鎺楀箟鐎n偄顏�,STEP7
     [闂備礁鎼ˇ閬嶅磿閹版澘鍨傛い鏍ㄥ焹閺嬪酣鏌曡箛瀣伄閻忓繒鏁婚弻銊╂偆閸屾稑顏�]ModbusPoll闂傚倷绀侀幉锛勫垝瀹€鍕垫晢闁绘牕鐛沚usSalve闂傚倷鑳舵灙濡ょ姴绻橀獮蹇涙晸閿燂拷
     [闂備礁鎼ˇ閬嶅磿閹版澘鍨傛い鏍ㄥ焹閺嬪酣鏌曡箛瀣伄閻忓繒鏁婚弻銊╂偆閸屾稑顏�]STEP7濠电姷顣藉Σ鍛村垂椤忓牆绀堟繝闈涚墐閸嬫挸顫濋鐘冲櫚闂佸搫鑻惌浣虹不濞戙垹妫橀悹鎭掑妽閳诲苯鈹戦悙宸殶濠殿喕鍗冲畷鎰板即閻樺搫小闂佽法鍣﹂幏锟� Smart_
     [闂備礁鎼ˇ閬嶅磿閹版澘鍨傛い鏍ㄥ焹閺嬪酣鏌曡箛瀣伄閻忓繒鏁婚弻銊╂偆閸屾稑顏�]Modbus闂備浇宕垫慨鎾敄閸涙潙鐤柟鎯板Г閸庡﹥銇勯弽銊х煀闁搞劍绻堥弻娑㈠箻濡も偓閸婅崵鎲撮敓锟� v1.024 缂傚倸鍊搁崐椋庢閵堝绠柨鐕傛嫹
     [闂備礁鎼ˇ閬嶅磿閹版澘鍨傛い鏍ㄥ焹閺嬪酣鏌曡箛瀣伄閻忓繒鏁婚弻銊╂偆閸屾稑顏�]Modscan32闂傚倷绀侀幉锛勫垝瀹€鍕垫晢闁绘牕鐛泂im32,modb
     [闂傚倷鐒﹀鍨熆閳ь剛绱掗幓鎺濈吋闁诡垰鐭傞幃娆擃敆閸屻倖绁梺鑽ゅУ娴滀粙宕濆澶婃槬闁稿瞼鍋為崑锝吤归敐鍥ㄥ殌缂佲偓閸愨斂浜滈柟鍨鐎氾拷]89c51闂傚倷鑳舵灙缂佺粯鍔欒棟闂侇剙绉甸崑鐔哥箾閹存瑥鐏╂俊顐o耿濮婃椽顢曢敐鍥剁伇闂傚倸妫楃紞濠囧蓟閿濆鏁傞柛鈩冾殕閻濄垻绱撴担浠嬪摵闁绘侗妲漮tues
     [闂傚倷鐒﹀鍨熆閳ь剛绱掗幓鎺濈吋闁诡垰鐭傞幃娆擃敆閸屻倖绁梺鑽ゅУ娴滀粙宕濆澶婃槬闁稿瞼鍋為崑锝吤归敐鍥ㄥ殌缂佲偓閸愨斂浜滈柟鍨鐎氾拷]婵犵數鍋為崹鍫曞箰缁嬫5娲Χ婢跺﹦顦版俊銈忕到閸燁偊宕掗妸鈺傜厱闁绘劖娼欒ⅷotues婵犵數鍋涢顓熸叏閹€鏋栭柡鍥╁剳閼板潡鏌ㄥ☉妯侯伀闁活厽鐟╅幃妤呮晲鎼存繄鏁栫紒鐐緲缁夌數鎹㈠┑濠庢Ъ闂佸憡姊归〃濠囧箖閵夆晜鏅搁柨鐕傛嫹
     [闂傚倷鐒﹀鍨熆閳ь剛绱掗幓鎺濈吋闁诡垰鐭傞幃娆擃敆閸屻倖绁梺鑽ゅУ娴滀粙宕濆澶婃槬闁稿瞼鍋為崑锝吤归敐鍥ㄥ殌缂佲偓閸愨斂浜滈柟鍨鐎氾拷]51闂傚倷绀侀幉锟犮€冮崱妞曞搫饪伴崟顒佺彿闂佸搫绋侀崢鑲┾偓姘樀閺屾稑鈹戦崱妤婁患闂佺鍐垮姛缂佽鲸甯為埀顒婄秬閸╂牜鈧熬鎷� protues婵犵數鍋涢顓熸叏閹€鏋栭柡鍥╁剳閼板潡鏌ㄩ悤鍌涘
    閺堚偓閺傜増鏋冪粩锟�
    关于我们 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 在线帮助 - 文章列表
    返回顶部
    刷新页面
    下到页底
    晶体管查询