• <tbody id="w8jhq"><dfn id="w8jhq"><pre id="w8jhq"></pre></dfn></tbody>
  • <fieldset id="w8jhq"><pre id="w8jhq"></pre></fieldset>

    久久黄色 视频|我草AV|AV在线网站导航|色色97激情|无码人妻一区二区有奶水|日韩精品|大香蕉97视频|成人a站免费|日本黄色片|久久久久无码AV

    久久黄色 视频|我草AV|AV在线网站导航|色色97激情|无码人妻一区二区有奶水|日韩精品|大香蕉97视频|成人a站免费|日本黄色片|久久久久无码AV

    久久黄色 视频|我草AV|AV在线网站导航|色色97激情|无码人妻一区二区有奶水|日韩精品|大香蕉97视频|成人a站免费|日本黄色片|久久久久无码AV

    技術(shù)熱線: 4007-888-234

    專(zhuān)注差異化嵌入式產(chǎn)品解決方案 給智能產(chǎn)品定制注入靈魂給予生命

    提供開(kāi)發(fā)工具、應(yīng)用測(cè)試 完善的開(kāi)發(fā)代碼案例庫(kù)分享

    從全面的產(chǎn)品導(dǎo)入到強(qiáng)大技術(shù)支援服務(wù) 全程貼心伴隨服務(wù),創(chuàng)造無(wú)限潛能!

    技術(shù)支持

    {QLdsPIC3} RS

    更新時(shí)間: 2019-03-23

    深圳市英銳恩科技有限公司:臺(tái)灣麥肯單片機(jī)(Micon MDT單片機(jī))亞太地區(qū)A級(jí)代理商

    {QLdsPIC3} RS-485 {C30+dsPIC30F6014A}
    //實(shí)驗(yàn)?zāi)康模菏煜S485通信
    //軟件規(guī)劃:
    //          1.配合上位機(jī)軟件&ldquo;串口助手&rdquo;一起工作
    //          2.上位機(jī)發(fā)送數(shù)據(jù),下位機(jī)接收后不做任何處理發(fā)送回PC
    //          3.接收數(shù)據(jù)采用中斷形式,發(fā)送數(shù)據(jù)在接收中斷里完成。
    //硬件規(guī)劃:
    //          1。通過(guò)RS485轉(zhuǎn)RS232連接到電腦上。
    //          2。撥碼開(kāi)關(guān)S5和S6全部置ON,其他撥碼開(kāi)關(guān)關(guān)閉。

    #include             //dsPIC30F6014標(biāo)準(zhǔn)頭文件

      _FOSC(0x0ffe5);                 //XT振蕩,4倍頻晶振.
      _FWDT(WDT_OFF);                 //關(guān)閉看門(mén)狗定時(shí)器
      _FBORPOR(PBOR_OFF & MCLR_EN);   //掉電復(fù)位禁止,MCLR復(fù)位使能。
      _FGS(CODE_PROT_OFF);            //代碼保護(hù)禁止


    void ini232(void);               
    void __attribute__((__interrupt__)) _U1RXInterrupt(void); /*Declare 232 interrupt ISRs*/

    unsigned char __attribute__((address(0x896)))flag;
    unsigned char __attribute__((address(0x898)))rxdata;
    unsigned char __attribute__((address(0x900)))rxdata1[20] ;            //定義接收數(shù)據(jù)緩存變量
     unsigned char __attribute__((address(0x950)))i;
    //******************主函數(shù)*************************
    int main (void)
    {
    unsigned char i;
    ini232();                         //調(diào)用RS232口初始化函數(shù)
    for(i=100;i>0;i--);               //延長(zhǎng)時(shí)間以保證可靠初始化
    LATGbits.LATG0=0;                 //489輸出有效(主芯片輸入),即主芯片接收PC數(shù)據(jù)
    LATGbits.LATG1=0;                 //489輸入無(wú)效(主芯片輸出)
    i=0;
    while(1);             
    }

    //*************RS232初始化函數(shù)**********************
    void ini232(void)
    {
      TRISG=0;
      TRISFbits.TRISF2 =1;            //RC腳輸入
      TRISFbits.TRISF3 =0;            //TX腳輸出
      IPC2bits.U1RXIP=7;              //中斷優(yōu)先級(jí)別
      IEC0bits.U1TXIE=0;              //禁止發(fā)送中斷
      IEC0bits.U1RXIE=1;              //使能接收中斷
      U1BRG =64;                      //波特率設(shè)置為9600,外部10M
      U1MODE =0x8020;                 //使能UART功能
      U1STA=0X0000;   
      i=0;
    }

    //************接收中斷函數(shù)**************************
    void __attribute__((__interrupt__)) _U1RXInterrupt(void)
    {  
       
        unsigned char txflag,j;   
        IFS0bits.U1RXIF = 0;              //清除中斷標(biāo)志位
        rxdata1[i]=U1RXREG;               //保存到接收單元里
        i++;                              //指向下一接收單元

        if(rxdata1[i-1]==0x0A)            //判斷是否接收完所有數(shù)據(jù)(因?yàn)榧s定PC以&ldquo;回車(chē)&rdquo;鍵做發(fā)送數(shù)據(jù)結(jié)束標(biāo)識(shí)符)
          {
           i=0;
           txflag=1;                      //發(fā)送標(biāo)志位
           LATGbits.LATG1=1;              //489輸入有效(主芯片輸出),即主控制器發(fā)送數(shù)據(jù)給PC
           LATGbits.LATG0=1;              //489輸出無(wú)效(住芯片輸入)
       //  for(j=0;j<200;j++);
            while(txflag)                 //判斷是否要繼續(xù)發(fā)送
             {
              U1STAbits.UTXEN =1;         //允許發(fā)送
              U1TXREG=rxdata=rxdata1[i];  //發(fā)送數(shù)據(jù)
            
              while(U1STAbits.TRMT==0);   //等待一位發(fā)送完成
              if(rxdata1[i]==0x0A)        //判斷是否發(fā)送完所有數(shù)據(jù)
                 {
                    txflag=0;             //清除發(fā)送標(biāo)志位
                    i=-1;                 //返回接收單元開(kāi)始處
                 }
              i++;                        //發(fā)送下一個(gè)數(shù)據(jù)
             }
           
          }
       LATGbits.LATG0=0;                  //489輸出有效(主芯片輸入),即主芯片接收PC數(shù)據(jù);重新接收PC數(shù)據(jù)
       LATGbits.LATG1=0;                 
    }


    404
    返回首頁(yè) |  返回上一頁(yè)
    久久黄色 视频|我草AV|AV在线网站导航|色色97激情|无码人妻一区二区有奶水|日韩精品|大香蕉97视频
  • <tbody id="w8jhq"><dfn id="w8jhq"><pre id="w8jhq"></pre></dfn></tbody>
  • <fieldset id="w8jhq"><pre id="w8jhq"></pre></fieldset>