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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4096|回復: 2
打印 上一主題 下一主題
收起左側

使用STLINK進行程序調試

[復制鏈接]
跳轉到指定樓層
樓主
用STLINK來調試可以真實訪問查看寄存器的變化,下面就以串口輸出內容到上位機顯示為例,講述一下如何用STLINK來調試程序。
1.安裝STLINK驅動程序。因本例程需要用到串口將內容輸出到上位機,我的板子采用芯片CH340將USB轉串口,所以要安裝CH340 驅動。
2.  建立工程,將如圖文件包含到工程里。
3.Options for Target 選項卡在 Debug 欄選擇仿真工為具 Use:ST-Link Debugger,如圖依次 成4個步驟


然后點擊Settting進行STLINK參數設置,我選用SW模式,JTAG占用比較多的I/O,容易影響其他外設的使用,速率不要選擇太大,否則會出現問題。


接下來我們還需要在 Utilities 選項卡里面設置下載時的目標編程器


我們直接勾選 Use Debug Driver,即和調試一樣,選擇 ST LINK 來給目標器件的 FLASH 編程,然后點擊 Settings 按鈕,進入 FLASH 燒錄設置

設置好后編寫程序,將硬件連接,下載后就點擊Debug后就可以實時跟蹤程序,很方便的找到程序的bug。
  1.          void GPIO_Configuration(void)
  2. {        
  3.          GPIO_InitTypeDef GPIO_InitStruct;
  4.          GPIO_InitStruct.GPIO_Pin=GPIO_Pin_9;
  5.          GPIO_InitStruct.GPIO_Speed=GPIO_Speed_10MHz;
  6.          GPIO_InitStruct.GPIO_Mode=GPIO_Mode_AF_PP;
  7.          GPIO_Init(GPIOA, &GPIO_InitStruct);
  8.          
  9.          GPIO_InitStruct.GPIO_Pin=GPIO_Pin_10;
  10.          GPIO_InitStruct.GPIO_Mode=GPIO_Mode_IN_FLOATING;
  11.          GPIO_Init(GPIOA, &GPIO_InitStruct);
  12. }

  13. void USART_Configuration(void)
  14. {
  15.         USART_InitTypeDef USART_InitStruct;
  16.         USART_InitStruct.USART_BaudRate=9600;
  17.         USART_InitStruct.USART_WordLength=USART_WordLength_8b ;
  18.         USART_InitStruct.USART_StopBits=USART_StopBits_1;
  19.         USART_InitStruct.USART_Parity=USART_Parity_No;
  20.         USART_InitStruct.USART_Mode=USART_Mode_Tx |USART_Mode_Rx;
  21.         USART_InitStruct.USART_HardwareFlowControl=USART_HardwareFlowControl_None;
  22.         
  23.         USART_Init(USART1,&USART_InitStruct);
  24.         
  25.         USART_Cmd(USART1, ENABLE);

  26.         
  27. }
  28. void RCC_Configuration(void)
  29. {
  30.          RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|RCC_APB2Periph_AFIO,ENABLE);
  31.      RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1,ENABLE);  
  32.          
  33. }
  34. void Delay_Ms(u16 time)  
  35.         u16 i,j;
  36.         for(i=0;i<time;i++)
  37.                   for(j=10000;j>0;j--);
  38. }
  39. int main(void)
  40. {        
  41.    u8 i,data;
  42.    RCC_Configuration();
  43.    GPIO_Configuration();
  44.    USART_Configuration();
  45.    data='A';
  46.          for(i=0;i<30;i++)
  47.          {
  48.                  while(USART_GetFlagStatus(USART1,USART_FLAG_TC)==RESET);
  49.                  USART_SendData(USART1,data);
  50.                  data++;
  51.                  while(USART_GetFlagStatus(USART1,USART_FLAG_TC)==RESET);
  52.          }

  53.          
  54.          return(0);

  55. }
復制代碼

20200531092942693.png (75.72 KB, 下載次數: 82)

20200531092942693.png

評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

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

使用道具 舉報

沙發
ID:830831 發表于 2021-2-26 09:48 | 只看該作者
感覺 bascom AVR 那樣的語言才是單片機高級語言的出路,這寄存器級的C語言編程也是夠了
回復

使用道具 舉報

板凳
ID:517951 發表于 2021-2-26 11:08 | 只看該作者
很詳細的指導, 何愁STM32不會?
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 天天射色综合 | 99re6在线视频精品免费 | 午夜在线视频一区二区三区 | 亚洲色图综合 | 操久久久| 久久中文高清 | 精品美女久久久 | 久久精品这里 | 亚洲欧美一区在线 | 91精品入口蜜桃 | 日韩中文字幕在线视频 | 亚洲成人av一区二区 | 国产激情一区二区三区 | 亚洲国产精品成人综合久久久 | 四虎最新 | 精品成人av| 亚洲性视频网站 | 欧美性一区二区三区 | 国产成人精品久久 | 久久久久久高潮国产精品视 | 亚州av | 国产一区二区三区四 | 日产久久 | 人人干天天干 | 超碰伊人 | 综合久久av| 亚洲精品一区二区三区蜜桃久 | 欧美乱淫视频 | 91视频观看 | 91精品国产综合久久婷婷香蕉 | 欧美一级精品片在线看 | 国产日韩精品视频 | 欧美成人一区二区 | 免费99精品国产自在在线 | 天堂资源| 中文字幕av在线播放 | 久久久久久久电影 | 欧美日韩一 | 中国美女撒尿txxxxx视频 | 国产精品色av | 亚洲一区二区三区久久久 |