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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3966|回復: 1
收起左側

MSP430單片機接收PC機十六進制數據后回傳至PC機

[復制鏈接]
ID:226756 發表于 2017-8-10 21:41 | 顯示全部樓層 |閱讀模式
MSP430單片機接收PC機十六進制數據后回傳至PC機

單片機源程序如下:
  1. ******************************************************
  2. 程序功能:接收PC機十六進制數據后回傳至PC機
  3. 數據格式:十六進制

  4. 幀頭:FD

  5. 幀尾: FE


  6. *******************************************************/
  7. #include <msp430x14x.h>


  8. unsigned char RecBuf[255]; //接收數據緩存
  9. unsigned char *SDat;     //指向要發送的數據
  10. unsigned char Rindex;      //接收數據計數
  11. unsigned char Tindex;      //發送數據計數
  12. unsigned char SendLen;     //發送數據長度


  13. /*************************************************
  14. 函數名稱:ConfigUart0
  15. 功    能:配置UART0,使用SMCLK,N.8.1, 9600
  16.           無校驗,8個數據位,1個停止位,波特率9600
  17. 參    數:無
  18. 返回值 :無
  19. **************************************************/
  20. void ConfigUart0()
  21. {
  22.     P3SEL |= 0x30;                            // 選擇P3.4和P3.5做UART通信端口
  23.     ME1 |= UTXE0 + URXE0;                     // 使能USART0的發送和接受
  24.     UCTL0 |= CHAR;                            // 選擇8位字符
  25.    
  26.     UTCTL0 |= SSEL1;                          // UCLK = SMCLK
  27.     UBR00 = 0xD0;                             // 波特率9600
  28.     UBR10 = 0x00;                             //
  29.     UMCTL0 = 0x40;                            // Modulation
  30.     UCTL0 &= ~SWRST;                          // 初始化UART狀態機
  31.     IE1 |= URXIE0 + UTXIE0;                   // 使能USART0的收發中斷   
  32. }

  33. /********************主函數********************/
  34. void main(void)
  35. {
  36.     unsigned int i;
  37.    
  38.     WDTCTL = WDTPW + WDTHOLD;     // 關閉看門狗
  39.     BCSCTL1 &= ~XT2OFF;           //使TX2有效,TX2上電默認是關閉的
  40.     do
  41.     {
  42.       IFG1 &= ~OFIFG;             //清除振蕩器失效標志
  43.       for(i=0xff;i>0;i--);        //延時,待穩定
  44.     }
  45.     while((IFG1 & OFIFG)!=0);     //若振蕩器失效標志有效
  46.     BCSCTL2 |= SELM1;             //使MCLK=XT2
  47.     BCSCTL2 |= SELS+DIVS1;        //SMCLK=XT2,4分頻,即2MHZ
  48.    
  49.     BoardConfig(0xb8);            // 關閉數碼管、流水燈和電平轉換
  50.     ConfigUart0();                //配置UART0
  51.     _EINT();                      //打開全局中斷
  52.       
  53.     while(1)
  54.     {
  55.         LPM1;
  56.     }
  57. }


  58. /*******************************************
  59. 函數名稱:UART0_RXISR
  60. 功    能:UART0的接收中斷服務函數,在這里喚醒
  61.           CPU,使它退出低功耗模式
  62. 參    數:無
  63. 返回值 :無
  64. ********************************************/
  65. #pragma vector = UART0RX_VECTOR
  66. __interrupt void UART0_RXISR(void)
  67. {
  68.     RecBuf[Rindex++] = RXBUF0;
  69.     if(RecBuf[Rindex-1]==0xfe) //接收完畢
  70.     {
  71.         SendLen = Rindex;
  72.         Rindex=0;
  73.         if(RecBuf[0]==0xfd) //幀頭正確
  74.         {
  75.             LPM1_EXIT;
  76.             SDat = RecBuf;
  77.             IFG1 |= UTXIFG0; // 設置中斷標志,進入發送中斷程序
  78.         }
  79.     }
  80. }

  81. /*******************************************
  82. 函數名稱:UART0_TXISR
  83. 功    能:UART0的發送中斷服務函數
  84. 參    數:無
  85. 返回值 :無
  86. ********************************************/
  87. #pragma vector = UART0TX_VECTOR
  88. __interrupt void UART0_TXISR(void)
  89. {

  90. ……………………

  91. …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼

所有資料51hei提供下載:
MSP430單片機接收PC機十六進制數據后回傳至PC機.zip (1.46 KB, 下載次數: 13)


回復

使用道具 舉報

ID:279187 發表于 2018-1-24 12:15 | 顯示全部樓層
能給我發一份嗎?謝謝
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 91久久久久久 | 精品在线播放 | 观看av | 激情婷婷 | 一级毛片免费完整视频 | 欧美日韩精品一区 | 美女日皮网站 | 福利视频网站 | 尤物在线 | 亚洲国产精品一区 | 日韩欧美成人一区二区三区 | 亚洲精品在线看 | 国产中文视频 | 在线观看的av| 人人干在线视频 | 日韩中文一区 | 日日av| 日韩一及片| 黄色一级毛片免费看 | 在线看h| 日本在线视频中文字幕 | 最近中文字幕免费 | 久久久久久久久久久高潮一区二区 | 日韩高清av | 日韩一区二区三区在线观看 | 一区二区三区国产精品 | 久久剧场 | 狠狠婷婷综合久久久久久妖精 | 亚洲精品中文字幕av | 欧美日韩国产精品激情在线播放 | 狠狠天天 | 国产亚洲成av人片在线观看桃 | 欧美lesbianxxxxhd视频社区 | 久久成人国产精品 | 国产精品精品 | 99视频在线 | 日本中文字幕视频 | 久久久国产一区 | 国产精品a免费一区久久电影 | 亚洲永久字幕 | 国产精品99久久久精品免费观看 |