久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 2880|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

芯片PL3201核心通道板驅(qū)動(dòng)程序調(diào)試

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:82781 發(fā)表于 2015-6-13 15:55 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
前幾天為串口2的接收發(fā)愁,總是以為是軟件問(wèn)題,后來(lái)和建華,一頓示波器,一頓萬(wàn)用表,捉住幾個(gè)波形,測(cè)量電壓,最后才說(shuō)是電平被USB供電的串口芯片拉低,只有3,5V的高電平,PL3201這塊貨識(shí)別不出來(lái),所以唯一的辦法就是抬升加中間轉(zhuǎn)換芯片,,再次聲明PL3201是他媽的大垃圾!大家千萬(wàn)不要用了,垃圾的要死!麻痹的下載個(gè)程序卡的要死,10次能同步一次,還有啊,不能JTAG,想看個(gè)變量都要打印出來(lái),調(diào)試程序要了命了,麻煩啊!全是眼淚啊!嗚嗚!
// 控制看門狗喂狗時(shí)間長(zhǎng)度                          
  CKCON=0xfF;
  // 8位/16位運(yùn)算模式選擇位設(shè)置
  ALU_MOD=0;      // 設(shè)置成8位運(yùn)算模式
  //載波通訊配置
        //************   3201的載波寄存器設(shè)置  **********//
  set_PLC_3105 ( );                        //上電為3105模式
  
  SSC_ADR=0xFF;
  SSC_DAT=0xFF;
  SSC_ADR=0x02;
  SSC_DAT=0x1F;
  SSC_ADR=0xFF;
  SSC_DAT=0x00;
         
//************   3201的載波寄存器設(shè)置  **********//
                                                                                           //  ( C8H ) 為邊沿觸發(fā)方式(IT2=1)
  
//串口通訊配置
  //TMOD1 = 0x10 ;                              // 設(shè) T/C1 為1分頻模式,ZZZ
  TMOD = 0x21 ;                              // 設(shè) T/C1 為定時(shí)方式2 設(shè)置為8位自裝載計(jì)數(shù)器  T/C0 為定時(shí)方式 1
  SCON=0x50;                           // 工作方式1
  
  PCON=0x80;                           // 波特率加倍
  TH1=BPS2400;
  TL1=BPS2400;                        // 加倍設(shè)定波特率 9.6MHz ( 按1分頻2400計(jì)算)
  TR1=1;
  
  IE=0x82;                              // 啟動(dòng)定時(shí)器1
  TH0=0x63;
  TL0=0xcc;                                                                                                    // 定時(shí) 50 ms 一個(gè)定時(shí)中斷
  TR0 = 1;           
         
        
  TMOD1=0x12; //time2方式2
  SCON1=0x50; //
  TH2=0xfb;
  TL2=TH2;
  TR2 =1;

   ES=1;
   ES1=1;
   EA=1;

sbit  USART0_RX_A=P1^2;
sbit  USART1_TX_A=P0^3;
static   uint8_t write=0;
static   uint8_t read=0;
uint8_t xdata  USART_BUF[50];//usart緩存


static   uint8_t write1=0;
static   uint8_t read1=0;
uint8_t xdata  USART_BUF1[50];//usart緩存




void check_usart()
{


if(write!=read)
{
        USART1_TX_A=~USART1_TX_A;//發(fā)送指示
   SendOneByte1(USART_BUF[read]);
   read++;
   if(read==49)read=0;


  }


}
void check_usart1()
{
if(write1!=read1)
{
        USART1_TX_A=~USART1_TX_A;//發(fā)送指示
   SendOneByte1(USART_BUF1[read1]);
   read1++;
   if(read1==49)read1=0;


  }        


}
void Show_version(void)
{
        
  printf_usart(" Version:0.0.0 \n");
  printf_usart("  小ARM菜菜 \n");
  printf_usart("QQ:925295580 \n");
  printf_usart("王建華的路燈終端板 \n");
  printf_usart("Over! \n");




}




    void SendOneByte1(unsigned char c)
{
   USART1_TX_A=~USART1_TX_A;
    SBUF1 = c;
    while(!ETI);
    ETI=0;
}




  void printf_usart(char  *ptr)
{
                        char a;
        while (*ptr) {
                        
                a=(char)*ptr;
                SendOneByte1(a);
                ptr++;        
        }                                                               
}


  void send_usart1_data(char  *ptr,unsigned char len)
{
                        char a,i;
        for(i=0;i<len;i++)
         {
                        
                a=(char)*ptr;
                SendOneByte1(a);
                ptr++;        
        }                                                               
}


void UARTInterrupt(void) interrupt 4
{
           char a;


    if(RI)
    {
        RI = 0;
        USART0_RX_A=~USART0_RX_A; //串口1接收
        /*USART_BUF[write]=SBUF;
                write++;
                if(write==49)write=0;  */
                a=SBUF;
           SendOneByte1(a);
    }
    else
        TI = 0;
}


void UARTI1nterrupt(void) interrupt 6
{

                char b;


         

           if(ERI)
    {
                ERI=0;
                USART0_RX_A=~USART0_RX_A; //串口1接收
                 /*USART_BUF1[write1]=SBUF1;
                write1++;
                if(write1==49)write1=0;
                   */
           b= SBUF1;
          SendOneByte1(b);
         }
         else
         {
         
           ETI=0 ;
          //send_usart1_data("456",3);
         }





}


void SendOneByte(unsigned char c)
{
    SBUF = c;
    while(!TI);
    TI = 0;
}



分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 在线一区视频 | 欧美在线视频网站 | 欧美精品欧美精品系列 | 久久亚洲综合 | 日本成人二区 | 国产亚洲精品久久情网 | 国产精品久久久久久久免费大片 | 成人av在线播放 | 国产精品国产精品 | 欧美亚洲国产日韩 | 激情欧美一区二区三区中文字幕 | 国产精品久久久av | 亚洲国产精品va在线看黑人 | 青青青伊人 | 国产女人叫床高潮大片免费 | 国产aa | 一区二区三区高清 | 91亚洲精品久久久电影 | 久久这里只有精品首页 | 91激情视频 | 亚洲国产成人在线视频 | 99热这里有精品 | 综合久久综合久久 | 日日摸日日爽 | 日韩三极 | 99爱在线免费观看 | 伊人春色在线 | 久久一久久 | 在线欧美小视频 | 国产精品美女久久久 | 日韩av成人| 国产一区久久 | 亚洲精品国产成人 | 欧美精品影院 | 日韩欧美国产精品综合嫩v 一区中文字幕 | 欧美一区二区三区高清视频 | 欧美毛片免费观看 | www国产成人免费观看视频,深夜成人网 | 亚洲精品中文字幕 | 日韩一区欧美一区 | 伦理午夜电影免费观看 |