wwwxxx国产_337p日本欧洲亚洲大胆张筱雨_免费在线看成人av_日本黄色不卡视频_国产精品成熟老女人_99视频一区_亚洲精品97久久中文字幕_免费精品视频在线_亚洲色图欧美视频_欧美一区二三区

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 733|回復: 5
收起左側

STC奇怪現象 串口發送簡單的HEX單個數據程序卡死了

[復制鏈接]
ID:140644 發表于 2025-8-29 08:04 | 顯示全部樓層 |閱讀模式
USB LINK 1D.png



STC  開天斧 三

先用圈圈的USB開發板測試
  8個按鍵分別發送8個不同的HEX數據
只能按一次發送正確
第二次就發不出去了
今天很早就起床
用開天斧三開發板 改了一下例程字符串收發程序
用P3.2 P3.3 P3.4 P3.5
分別發送4個不同的HEX數據
也是卡死在發送函數(猜的,等一下點亮一個LED試試)



/*************  功能說明    ************************/
              #include     "stc8h.h"       //包含此頭文件后,不需要再包含"reg51.h"頭文件
              #define      MAIN_Fosc       11059200L   //定義主時鐘(精確計算9600波特率)
              typedef      unsigned char   u8;
              typedef      unsigned int    u16;
              typedef      unsigned long   u32;
              #define      Baudrate1           9600L
              #define      UART1_BUF_LENGTH    64
              sbit         InttPut0=P3^2;
              sbit         InttPut1=P3^3;
              sbit         InttPut2=P3^4;
              sbit         InttPut3=P3^5;
              u8           TX1_Cnt;    //發送計數
              u8           RX1_Cnt;    //接收計數
              bit          B_TX1_Busy; //發送忙標志
              u8           kcounter,kstatus;     //按鍵計數標志 按鍵狀態標志
/****************按鍵計數器狀態寄存器歸零*************/
              void RstKey()
              {
              kcounter=0;                        //按鍵計數器歸零
              kstatus=0;                         //狀態寄存器歸零
              }
/*****************按鍵低電平檢測函數*****************/
              void   LowVoltKey(void)            //按鍵計數器狀態標志加一
              {
              kcounter++;                       
              kstatus++;     
              _nop_();                           //延時                  
              }
/*****************按鍵高電平檢測函數*****************/
              void    HighVoltKey(void)          //按鍵計數器加一 狀態標志歸零
              {
              kcounter++;                        //按鍵計數器加一
              kstatus=0;                         //按鍵狀態標志歸零
              _nop_();                           //延時
              }
//========================================================================
// 函數: void PrintHex(u8 puts)
// 描述: 串口1發送字符串函數。
// 參數: puts:  Hex.
// 返回: none.
// 版本: VER1.0
// 日期: 2014-11-28
// 備注:
//========================================================================
              void Send(u8 puts) //發送一個字符串
              {
              B_TX1_Busy = 1;
              SBUF = puts;
              while(B_TX1_Busy);
              }
//========================================================================
// 函數: SetTimer2Baudraye(u16 dat)
// 描述: 設置Timer2做波特率發生器。
// 參數: dat: Timer2的重裝值.
// 返回: none.
// 版本: VER1.0
// 日期: 2014-11-28
// 備注:
//========================================================================
              void SetTimer2Baudraye(u16 dat)  // 選擇波特率, 2: 使用Timer2做波特率, 其它值: 使用Timer1做波特率.
              {
              AUXR &= ~(1<<4);    //Timer stop
              AUXR &= ~(1<<3);    //Timer2 set As Timer
              AUXR |=  (1<<2);    //Timer2 set as 1T mode
              T2H = dat / 256;
              T2L = dat % 256;
              IE2  &= ~(1<<2);    //禁止中斷
              AUXR |=  (1<<4);    //Timer run enable
              }
//========================================================================
// 函數: void UART1_config(u8 brt)
// 描述: UART1初始化函數。
// 參數: brt: 選擇波特率, 2: 使用Timer2做波特率, 其它值: 使用Timer1做波特率.
// 返回: none.
// 版本: VER1.0
// 日期: 2014-11-28
// 備注:
//========================================================================
              void UART1_config(u8 brt)    // 選擇波特率, 2: 使用Timer2做波特率, 其它值: 使用Timer1做波特率.
              {
    /*********** 波特率使用定時器2 *****************/
              if(brt == 2)
               {
               AUXR |= 0x01;       //S1 BRT Use Timer2;
               SetTimer2Baudraye(65536UL - (MAIN_Fosc / 4) / Baudrate1);
               }
/*********** 波特率使用定時器1 *****************/
               else
               {
               TR1 = 0;
               AUXR &= ~0x01;      //S1 BRT Use Timer1;
               AUXR |=  (1<<6);    //Timer1 set as 1T mode
               TMOD &= ~(1<<6);    //Timer1 set As Timer
               TMOD &= ~0x30;      //Timer1_16bitAutoReload;
               TH1 = (u8)((65536UL - (MAIN_Fosc / 4) / Baudrate1) / 256);
               TL1 = (u8)((65536UL - (MAIN_Fosc / 4) / Baudrate1) % 256);
               ET1 = 0;    //禁止中斷
               INTCLKO &= ~0x02;   //不輸出時鐘
               TR1  = 1;
               }
    /*************************************************/

              SCON=(SCON&0x3f)|0x40;//UART1模式,0x00:同步移位輸出,0x40:8位數據,可變波特率,0x80:9位數據,固定波特率,0xc0: 9位數據,可變波特率
//  PS  = 1;    //高優先級中斷
              ES  = 1;    //允許中斷
              REN = 1;    //允許接收
              P_SW1 &= 0x3f;
              P_SW1 |= 0x00;      //UART1 switch to, 0x00: P3.0 P3.1, 0x40: P3.6 P3.7, 0x80: P1.6 P1.7, 0xC0: P4.3 P4.4
//  PCON2 |=  (1<<4);   //內部短路RXD與TXD, 做中繼, ENABLE,DISABLE

              B_TX1_Busy = 0;
              TX1_Cnt = 0;
              RX1_Cnt = 0;
              }
//========================================================================
// 函數: void main(void)
// 描述: 主函數。
// 參數: none.
// 返回: none.
// 版本: VER1.0
// 日期: 2014-11-28
// 備注:
//========================================================================
              void main(void)
              {
               P_SW2|=0x80;  //擴展寄存器(XFR)訪問使能
               P0M1 = 0x30;   P0M0 = 0x30;   //設置P0.4、P0.5為漏極開路(實驗箱加了上拉電阻到3.3V)
               P1M1 = 0x30;   P1M0 = 0x30;   //設置P1.4、P1.5為漏極開路(實驗箱加了上拉電阻到3.3V)
               P2M1 = 0x3c;   P2M0 = 0x3c;   //設置P2.2~P2.5為漏極開路(實驗箱加了上拉電阻到3.3V)
               P3M1 = 0x50;   P3M0 = 0x50;   //設置P3.4、P3.6為漏極開路(實驗箱加了上拉電阻到3.3V)
               P4M1 = 0x3c;   P4M0 = 0x3c;   //設置P4.2~P4.5為漏極開路(實驗箱加了上拉電阻到3.3V)
               P5M1 = 0x0c;   P5M0 = 0x0c;   //設置P5.2、P5.3為漏極開路(實驗箱加了上拉電阻到3.3V)
               P6M1 = 0xff;   P6M0 = 0xff;   //設置為漏極開路(實驗箱加了上拉電阻到3.3V)
               P7M1 = 0x00;   P7M0 = 0x00;   //設置為準雙向口
               UART1_config(1);    // 選擇波特率, 2: 使用Timer2做波特率, 其它值: 使用Timer1做波特率.
               EA = 1; //允許總中斷
               while (1)
               {
                RstKey();
                for(;kcounter<5;)                 //按鍵循環5次
                {
                 if(!InttPut0)                      //按鍵低電平
                 {
                 LowVoltKey();
                 }
                 else if(~!InttPut0)               //按鍵高電平
                 {
                 HighVoltKey();
                 }
                }
                if(kstatus>=4)                    /*按鍵狀態標志大于等于3為有效值*/
                {                                /*循環檢測 */
                Send(0X01);
                P2=0X01;
                }
//1
                RstKey();
                for(;kcounter<5;)                 //按鍵循環5次
                {
                 if(!InttPut1)                      //按鍵低電平
                 {
                 LowVoltKey();
                 }
                 else if(~!InttPut1)               //按鍵高電平
                 {
                 HighVoltKey();
                 }
                }
                if(kstatus>=4)                    /*按鍵狀態標志大于等于3為有效值*/
                {                                /*循環檢測 */
                Send(0X02);
                P2=0X02;
                }
//2
                RstKey();
                for(;kcounter<5;)                 //按鍵循環5次
                {
                 if(!InttPut2)                      //按鍵低電平
                 {
                 LowVoltKey();
                 }
                 else if(~!InttPut2)               //按鍵高電平
                 {
                 HighVoltKey();
                 }
                }
                if(kstatus>=4)                    /*按鍵狀態標志大于等于3為有效值*/
                {                                /*循環檢測 */
                Send(0X04);
                P2=0X04;
                }
//3
                RstKey();
                for(;kcounter<5;)                 //按鍵循環5次
                {
                 if(!InttPut3)                      //按鍵低電平
                 {
                 LowVoltKey();
                 }
                 else if(~!InttPut3)               //按鍵高電平
                 {
                 HighVoltKey();
                 }
                }
                if(kstatus>=4)                    /*按鍵狀態標志大于等于3為有效值*/
                {                                /*循環檢測 */
                Send(0X08);
                P2=0X08;
               }
//4                     
    }
}






回復

使用道具 舉報

ID:878061 發表于 2025-8-30 07:57 | 顯示全部樓層
你沒有開串口發送中斷, void Send(u8 puts) //發送一個字符串               {               B_TX1_Busy = 1;               SBUF = puts;               while(B_TX1_Busy);               } B_TX1_Busy永遠不會等于0,正確的方法是{ SBUF = puts;  while(!TI);   TI = 0;
回復

使用道具 舉報

ID:140644 發表于 2025-9-24 05:02 | 顯示全部樓層
要改成這個樣子才可以   



             void Send(u8 puts) //發送一個字符串
              {
              SBUF = puts;
              while(!TI);
              TI=0;
              }

范例程序 bit busy;是全局變量
不是寄存器位檢測標志
void UartSend(char dat)
{
    while (busy);
    busy = 1;
    SBUF = dat;
}
回復

使用道具 舉報

ID:1160817 發表于 2025-9-24 09:56 | 顯示全部樓層
你沒有開串口發送中斷, void Send(u8 puts) //發送一個字符串
回復

使用道具 舉報

ID:1160817 發表于 2025-9-24 09:56 | 顯示全部樓層
你沒有開中斷, void Send(u8 puts) //發送一個字符串
回復

使用道具 舉報

ID:57657 發表于 2025-9-24 11:53 | 顯示全部樓層
上位機向下位機發數據卡死:檢查驅動程序,與單片機的關系較小
下位機向上位機發數據卡死:單片機串口寄存器、中斷配置有問題
具體用示波器或邏輯分析儀捕捉信號數據才能知道什么問題。
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
www.国产91| 精品1区2区3区4区| www.xxx黄| 亚洲成a人片在线| 污污免费在线观看| 亚洲精品高清国产一线久久| 久久99精品国产99久久6尤物| 亚洲午夜久久久久久久久电影网| 免费日韩av| 深夜福利一区| 成人资源www网在线最新版| 九九久久久2| 99视频只有精品| 五月婷婷之综合激情| 国产一区免费| 欧美老妇交乱视频| 欧美美女激情18p| 最好看的中文字幕久久| 亚洲综合好骚| 蜜桃一区av| 九九九精品视频| 91青青在线视频| 国产精品伦一区二区三区级视频频 | 一区二区三区中文字幕精品精品| 免费成人你懂的| 国产99久久精品一区二区300| 成人短视频在线观看| 国产va在线观看| 影音先锋男人看片资源站| 欧美激情亚洲综合| 久久精品一区二区免费播放| 日本一区二区黄色| 国产在线一区二| 日韩av理论片| 一区二区三区www| 欧美性猛交xxxxx水多| 国产亚洲综合性久久久影院| 日韩av一二三| 亚洲少妇一区| 欧美日韩一区二区高清| ccyy激情综合| 久久亚洲精品人成综合网| 男男gaygays亚洲| 日本激情视频在线观看| 在线视频1卡二卡三卡| 国产在线观看免费视频软件| 欧美 变态 另类 人妖| 亚洲女人在线观看| 2022亚洲天堂| 日韩小视频在线播放| a级网站在线观看| 日韩欧美手机在线| 欧美极品jizzhd欧美| 国产精品国产精品国产专区蜜臀ah | 你懂得在线网址| 国产视频一二区| www.午夜| 天天干 天天插| 天天插天天射| 超清福利视频| 性网站在线免费观看| 91大神网址| 四虎免费av| 夫妇露脸对白88av| 最新版天堂资源在线| 国产精品偷伦视频免费观看了| 欧美日韩一区二区三区69堂| 日韩av片网站| 国产欧美精品一二三| 成人综合久久网| 中文字幕一区二区在线观看视频| 国产乱叫456| 中文字幕18页| 小早川怜子久久精品中文字幕| 熟女高潮一区二区三区| 91香蕉国产视频| 青青草国产在线观看| 国产无遮挡又黄又爽在线观看| 日本熟妇乱子伦xxxx| 欧美一级片免费在线观看| 久久青青草原亚洲av无码麻豆 | av片在线观看免费| 亚洲按摩av| 免费污视频在线| 久久人体大尺度| 精品国产一区二区三区2021| 豆花视频一区二区| 精品产国自在拍| 影音先锋久久久| 日韩中文字幕麻豆| av不卡免费电影| 日韩一区在线播放| 欧美性生活大片免费观看网址| 在线观看亚洲成人| 日韩一区二区电影| 曰本色欧美视频在线| 久久69精品久久久久久久电影好| 欧美亚洲伦理www| 91在线视频导航| 欧美中文娱乐网| 人妻少妇精品久久| 肉色超薄丝袜脚交| 国产一二三av| 中文字幕在线日亚洲9| 日韩中文字幕综合| 色视频免费在线| 影音先锋在线影院| 国产高清一区二区三区视频| 三级成人黄色影院| 亚洲精品合集| 亚洲一区二区三区高清不卡| 99麻豆久久久国产精品免费| 亚洲欧美另类小说| 欧美另类一区二区三区| 日韩中文字幕亚洲| 国产精品一区av| 色一情一乱一伦一区二区三区 | 三级一区在线视频先锋| 91性感美女视频| 岛国av在线不卡| 精品亚洲va在线va天堂资源站| 欧美精品久久久久a| 成人欧美一区二区三区视频xxx| 中文字幕欧美日韩一区二区三区| 中文字幕视频在线免费观看| 懂色av粉嫩av浪潮av| 最近中文字幕在线免费观看| 日韩色级片先锋影音| 欧美激情图区| 欧美a级在线观看| 日韩三级视频| 日韩精品一级二级| 亚洲色图欧美偷拍| 精品国产99国产精品| 97精品视频在线播放| 色乱码一区二区三在线看| 日本在线观看视频一区| 日本少妇xxxx动漫| 影音先锋中文资源站| 免费男女羞羞的视频网站中文版| 乱人伦中文视频在线| 日韩极品在线| 久久99精品国产91久久来源| 亚洲自拍偷拍网站| 亚洲欧洲一区二区三区久久| 成人亚洲激情网| 成人毛片100部免费看| 最近中文字幕无免费| 中文在线免费看视频| 91专区视频| 搞黄网站在线观看| 自拍偷拍一区| 成人黄色在线视频| 欧美日韩精品久久久| 午夜精品久久久99热福利| 秋霞毛片久久久久久久久| 深爱五月综合网| 亚洲精品一区二区二区| www视频在线观看com| 97人人在线视频| 成人精品影视| 国产欧美日韩精品一区| 欧美大胆一级视频| 国产区精品视频| 嫩草av久久伊人妇女超级a| 欧美日韩精品一区二区三区视频播放| 美女脱光衣服与内衣内裤一区二区三区四区| 美女av网站| av成人免费看| 性xx色xx综合久久久xx| 亚洲自拍偷拍网站| 欧美国产日产韩国视频| 99久re热视频精品98| 欧美乱大交做爰xxxⅹ小说| 最近2018年在线中文字幕高清| 日韩资源在线| 日韩精品免费一区二区夜夜嗨| 久久99久久精品| 欧美日韩一卡二卡三卡| 国产精品美乳一区二区免费| 妺妺窝人体色www在线观看| 自拍偷拍校园春色| 丰满少妇又爽又紧又丰满69| 国产一区二区av在线| 久久99精品久久久久久国产越南| 欧美群妇大交群的观看方式| 91精品视频免费观看| 日韩精品视频网址| 国产精品久久久久久久免费| 在线免费观看你懂的| 亚洲另类春色校园小说| 日本一区二区免费在线| 久久中文字幕一区| 免费不卡av在线| 99视频在线看| 五月天丁香婷| 九九免费精品视频在线观看| 亚洲国产精品成人综合色在线婷婷 | 久久人人97超碰人人澡爱香蕉| 欧美一区二区三区成人精品| 欧美性性性性性ⅹxxbbbb| heyzo一区| 蜜桃av一区二区三区电影| 欧美va亚洲va香蕉在线| 色阁综合av| 青青草成人av| 亚洲一区在线日韩在线深爱| 欧美aaaa视频| 色综合天天综合网天天狠天天 | 免费黄色国产视频| 黄色网址大全在线观看| 视频成人永久免费视频| 久久久久久亚洲综合| 欧美精品激情在线| 无码人妻少妇色欲av一区二区| 中文字幕麻豆| 欧美va视频| 91网上在线视频| 欧美国产亚洲视频| 国产农村妇女精品久久| 亚洲国产日韩成人综合天堂| av免费在线一区| 久久久99精品免费观看不卡| 欧美黑人极品猛少妇色xxxxx| www.国产视频.com| 四虎影视成人永久免费观看视频| 日本精品另类| 久久蜜桃香蕉精品一区二区三区| 欧美韩国理论所午夜片917电影| 日本中文字幕影院| 久精品在线观看| 亚洲国产视频二区| 亚洲一区二区成人在线观看| 国产精品国产一区二区| 91成人福利视频| 黄页网站在线播放| 亚洲激情婷婷| 亚洲精品一区二区三区不| 成人综合视频在线| 四虎电影网址| 秋霞午夜一区二区三区视频| 一区二区三区精品在线观看| 91精品国产一区二区三区动漫 | 日韩毛片在线一区二区毛片| 激情久久中文字幕| 亚洲国产欧美自拍| 精品一卡二卡三卡| 国产专区自拍| 视频福利一区| 欧美日韩国产系列| 免费网站永久免费观看| 亚洲欧美日本在线观看| 国产精品久一| 精品欧美国产一区二区三区| 日韩成人av电影在线| 一级黄色a毛片| 视频二区不卡| 一区二区视频免费在线观看| 精品国产免费人成电影在线观...| 日韩欧美一级视频| 免费不卡av| 国产女人aaa级久久久级| 91亚洲永久免费精品| 中文字幕激情小说| 日韩理论视频| 亚洲激情一二三区| 日本免费高清一区| 成人激情四射网| 最新精品在线| 欧美日韩一区成人| 波多野结衣家庭教师视频| 国产精品久久久高清免费| 成人同人动漫免费观看| 日韩电影中文 亚洲精品乱码 | 欧美国产综合视频| 国产欧美日韩成人| 91麻豆精品国产91久久久更新资源速度超快| 亚洲精品视频一区二区| 婷婷精品国产一区二区三区日韩| 神马久久久久久久久久| 超碰成人97| 日韩一区二区三区四区| 欧美一级黄色影院| 日美av在线| 视频一区视频二区中文| 国产69精品99久久久久久宅男| 日本猛少妇色xxxxx免费网站| yourporn在线观看视频| 国产无一区二区| 青青草国产精品| 日本欧美色图| 狠狠综合久久| 久久久久这里只有精品| 538精品在线观看| 男人av在线播放| 一本色道久久综合亚洲精品按摩| 国产资源在线视频| 成年人网站在线观看免费| 青青草精品视频| 成人中文字幕+乱码+中文字幕| 久久精品99北条麻妃| 成人久久精品| 精品国产成人在线影院| 欧美极品jizzhd欧美仙踪林| 噜噜噜在线观看播放视频| 国产视频一区在线播放| 色乱码一区二区三区熟女| 色视频在线免费| 麻豆专区一区二区三区四区五区| 国产免费观看久久黄| 精品国自产在线观看| 久久99国产精品视频| 日韩中文在线中文网在线观看 | 亚洲精品中文在线| 亚洲国产精品成人天堂| 男人的天堂网av| www国产成人| 中文字幕一区二区三区四区五区人 | 国产不卡精品在线| 精品国产91九色蝌蚪| 日本污视频网站| 欧美黑人粗大| 日韩精品综合一本久道在线视频| 一级欧美一级日韩片| 怡红院在线播放| 欧美日韩三级视频| 亚洲蜜桃精久久久久久久久久久久| 日本在线视频网址| 欧洲日韩一区二区三区| 天堂va欧美va亚洲va老司机| 福利小视频在线| 欧美日韩色一区| 91网站免费视频| 久久久成人av毛片免费观看| 精品国产91洋老外米糕| 亚洲精品卡一卡二| 精品亚洲二区| 久久精视频免费在线久久完整在线看 | 粉嫩一区二区三区性色av| 涩涩日韩在线| 8mav在线| 国产婷婷精品av在线| 日韩欧美一区三区| 国产视频福利在线| 精品国产91久久久久久| 国产老头和老头xxxx×| 国产极品人妖在线观看| 日韩精品一区二区三区中文精品| 亚洲综合图片一区| 成人看片黄a免费看视频| 欧美放荡办公室videos4k| 国产99久久九九精品无码免费| 国产精品豆花视频| 国产精品一区二区三区免费观看| 成人精品一区二区不卡视频| 972aa.com艺术欧美| 国产原创popny丨九色| 韩国三级在线观看久| 欧美亚洲国产一区二区三区 | 欧美性猛交xxx乱久交| 欧美尤物美女在线| 日韩一区二区高清| 国产特黄大片aaaa毛片| 91蜜臀精品国产自偷在线| 成人免费福利在线| 色视频在线观看在线播放| 国产三级精品三级| 九九热99视频| 美女福利一区二区| 中文字幕精品久久久久| av av片在线看| 日韩高清在线一区| 精品国产一区二区三区在线| 污网站在线观看视频| 精品视频1区2区3区| 久久成人在线观看| 成人在线免费小视频| 动漫一区二区在线| 特黄特色特刺激视频免费播放| 五月婷婷激情综合网| 女人裸体性做爰全过| 久久综合色占| av一区二区三区四区电影| 激情亚洲综合网| 欧美日韩精品二区| 久久爱一区二区| 欧美岛国激情| 久久久水蜜桃| 深夜福利免费在线观看| 日韩一区二区免费高清| 中文字幕av影视| 日韩成人av影视| 逼特逼视频在线| 日韩不卡免费高清视频| 欧美黄色www| 手机在线色视频| 亚洲成人精品影院| 欧美日韩亚洲国产另类| 国产精品九九| 成人在线免费观看视频网站|