精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

如何測量代碼運行時間

開發 前端
測量一段代碼運行時間第一時間想到的當然是示波器了,在測量開始的代碼前面拉高某個GPIO,在結束測量的位置拉低這個GPIO,直接使用示波器查看這個GPIO的高電平時間長度即可,就是我們要測量的這段代碼的運行時間。

[[418173]]

01示波器

測量一段代碼運行時間第一時間想到的當然是示波器了,在測量開始的代碼前面拉高某個GPIO,在結束測量的位置拉低這個GPIO,直接使用示波器查看這個GPIO的高電平時間長度即可,就是我們要測量的這段代碼的運行時間。

那么直接上示例,為了模擬代碼運行一段時間,這里我直接采用之前文章《STM32的四種延時方法》直接延時。

  1. while (1) 
  2.   GPIO_SetBits(GPIOE,GPIO_Pin_4);  //熄滅LED燈                      
  3.   delay_ms(500);//延時500ms 
  4.   GPIO_ResetBits(GPIOE,GPIO_Pin_4);//點亮LED燈                      
  5.   delay_ms(500);//延時500ms 

延時500ms時波形如下:

當修改代碼,延時100ms時。

  1. while (1) 
  2.   GPIO_SetBits(GPIOE,GPIO_Pin_4);  //熄滅LED燈                      
  3.   delay_ms(100);//延時100ms 
  4.   GPIO_ResetBits(GPIOE,GPIO_Pin_4);//點亮LED燈                      
  5.   delay_ms(100);//延時100ms 

波形如下:

測量準確無誤,但是他的缺點也很明顯啊,需要示波器,示波器一般很笨重的,即使是輕便的示波器,也需要接硬件,還是很麻煩的,而且需要一個空閑的GPIO,測量的這段代碼中,不能使用到這個GPIO。

02定時器測量

定時器不僅僅我們可以實現我們之前講解的《基礎定時功能》《PWM輸出功能》《輸入捕獲功能》《觸摸按鍵功能》,還可以用于測量一段代碼的運行時間。在學習使用定時器測量代碼運行時間之前,如果對定時器不了解的同學先看剛剛提到的定時器的文中,重點文章《STM32基礎定時器簡介》。本篇文章不再講解定時器的基礎功能。

定時器本質上就是向上累加的計數器(如果配置成向上計數時),所以我們在測量開始的代碼前面讀取定時器的計數器,在結束測量的位置再讀取定時器的計數器,獲得兩次的差值,這樣就可以計算出這段代碼的運行的時間。這就是簡單的原理,下面直接擼代碼。

首先配置定時器,這里我使用定時器3,配置定時器的計數器每增加1,表示100us。并且將溢出值設置為最大。

  1. void TIM_Config(void) 
  2.   TIM_TimeBaseInitTypeDef  TIM_TimeBaseStructure; 
  3.   /* TIM3 clock enable */ 
  4.   RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3, ENABLE); 
  5.    
  6.   TIM_TimeBaseStructure.TIM_Period = 0xFFFF-1; 
  7.   TIM_TimeBaseStructure.TIM_Prescaler = (uint16_t) ((SystemCoreClock / 2) / 10000) - 1; 
  8.   TIM_TimeBaseStructure.TIM_ClockDivision = TIM_CKD_DIV2; 
  9.   TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up; 
  10.   TIM_TimeBaseInit(TIM3, &TIM_TimeBaseStructure); 
  11.   TIM_Cmd(TIM3, ENABLE); 

測量代碼運行時間的代碼如下,這里進行了防溢出的處理。

  1. while (1) 
  2.   GPIO_SetBits(GPIOE,GPIO_Pin_4);  //熄滅LED燈                      
  3.   delay_ms(100);//延時100ms 
  4.   GPIO_ResetBits(GPIOE,GPIO_Pin_4);//點亮LED燈 
  5.   old_counter = TIM_GetCounter(TIM3); 
  6.   delay_ms(100);//延時100ms 
  7.   couter_current = TIM_GetCounter(TIM3); 
  8.   if(couter_current > old_counter) 
  9.     counter = couter_current - old_counter; 
  10.   else 
  11.     counter = couter_current + 0XFFFF - old_counter; 
  12.   time_ms = counter / 10; 

上述代碼延時100ms,通過定時器測量結果同樣為100ms,準確無誤。如下所示:

這樣有的同學可能已經聯想到了,上述代碼完全可以封裝成一個函數如下:

  1. float Time_Difference_ms(void) 
  2.   static uint32_t old_counter; 
  3.   uint32_t counter,couter_current; 
  4.   couter_current = TIM_GetCounter(TIM3); 
  5.   if(couter_current > old_counter) 
  6.     counter = couter_current - old_counter; 
  7.   else 
  8.     counter = couter_current + 0XFFFF - old_counter; 
  9.   old_counter = couter_current; 
  10.   return (counter / 10); 

這樣就可以實現,測量兩次調用這個接口的是時間差,如下,可以準確測得兩次調用Time_Difference_ms這個函數的時間差是100ms。

上述代碼經過封裝,可以測量代碼兩次運行到相同位置的時間差。將程序再進化一下。

  1. float Time_Difference_ms(uint8_t flg) 
  2.   static uint32_t old_counter[5]; 
  3.   uint32_t counter,couter_current; 
  4.   couter_current = TIM_GetCounter(TIM3); 
  5.   if(couter_current > old_counter[flg]) 
  6.     counter = couter_current - old_counter[flg]; 
  7.   else 
  8.     counter = couter_current + 0XFFFF - old_counter[flg]; 
  9.   old_counter[flg] = couter_current; 
  10.   return (counter / 10); 

這樣就可以得到多個位置兩次運行到相同位置的時間差。

當然,這樣也存在缺點:

1、需要占用一個定時器

2、按上述配置,最長測量時間為0XFFFF*0.1=6553.5ms=6.553.5s。

本文轉載自微信公眾號「 知曉編程 」

【編輯推薦】

 

責任編輯:姜華 來源: 知曉編程
相關推薦

2020-04-06 11:47:44

Linux命令腳本

2015-07-20 15:44:46

Swift框架MJExtension反射

2022-11-04 09:09:54

Linux服務器

2024-03-21 09:15:58

JS運行的JavaScrip

2010-01-27 14:14:48

C++程序運行時間

2024-03-28 08:17:46

JestJS服務端

2018-04-08 14:27:45

Linuxuptime系統運行時間

2019-10-14 09:14:37

Linuxbash命令

2014-03-14 13:29:24

VDI配置文件

2022-10-08 00:00:00

V8channel對象

2019-07-12 09:30:12

DashboardDockerDNS

2021-09-11 15:38:23

容器運行鏡像開放

2009-06-17 15:46:36

Java運行時本機內存

2024-12-10 08:00:00

C++CRTP函數

2016-08-23 10:17:42

2021-06-24 10:28:19

uptimed命令Linux

2022-10-08 00:06:00

JS運行V8

2018-06-24 15:23:05

軟件工程環境開發

2015-09-09 10:10:35

運行時改變圖標

2021-08-27 00:21:19

JSJust源碼
點贊
收藏

51CTO技術棧公眾號

欧美人妻精品一区二区三区| 日韩中字在线观看| 国产露脸国语对白在线| 欧美成人亚洲| 亚洲国产精品va| 日韩毛片在线免费看| av电影在线播放高清免费观看| 秋霞av亚洲一区二区三| 久久99热这里只有精品国产| 播金莲一级淫片aaaaaaa| 国产成人精品一区二区三区视频 | 精品国产中文字幕| 在线免费一区二区| 欧美婷婷在线| 在线精品视频视频中文字幕| 老司机av网站| 成人黄色视屏网站| 亚洲成va人在线观看| 日韩亚洲欧美精品| 亚洲综合精品视频| 国产精品色网| 欧美黄色免费网站| 亚洲黄色免费视频| 国产成人福利av| 欧美理论片在线| 免费在线激情视频| 成人免费看片| 国产精品蜜臀在线观看| 精品一区二区三区日本| 99久久精品国产成人一区二区| 久久精选视频| 国产91|九色| 免费视频一二三区| 99tv成人| 中文字幕亚洲色图| 中国毛片在线观看| 菁菁伊人国产精品| 欧美成人r级一区二区三区| 天堂社区在线视频| 久久男人天堂| 偷拍一区二区三区四区| 男的插女的下面视频| av片在线观看免费| 国产精品国产a| 亚洲免费不卡| www亚洲人| 国产欧美视频一区二区| 欧美另类高清视频在线| 天天操天天操天天干| 成人午夜在线视频| 粉嫩av一区二区三区免费观看| 国产丝袜视频在线观看| 久久99精品久久久久久国产越南 | 久久你懂得1024| 精品乱码一区| 日本精品久久久久| 成人18视频在线播放| 国产在线资源一区| 香蕉视频黄在线观看| www.色就是色.com| 亚洲一区二区三区久久久| 欧美日本视频在线| 亚洲理论中文字幕| 一区二区三区在线免费看| 欧美一区二区福利在线| 亚洲911精品成人18网站| 日韩精品一区二区三区中文| 欧美zozozo| 伊人影院在线观看视频| 成人h动漫精品一区二区器材| 亚洲成人av中文字幕| 中文字幕精品视频在线| 亚洲激情播播| 中文字幕国产亚洲2019| 午夜爱爱毛片xxxx视频免费看| 欧美91视频| 午夜精品一区二区三区在线视 | av网站免费在线看| 成人同人动漫免费观看| 久久久国产精品视频| 一区视频免费观看| 尤物精品在线| 国产成人精品av| 亚洲综合精品国产一区二区三区| 国产精品一区二区在线看| 国产二区一区| 国产专区在线| 亚洲免费视频中文字幕| 成人免费性视频| 成人免费直播| 欧美日韩国产首页| 欧美无砖专区一中文字| 欧美日韩在线观看一区二区三区| wwwww在线观看免费视频| 亚洲欧洲精品成人久久奇米网| 国产乱人伦精品一区二区三区| 人人草在线视频| 欧美日韩美少妇| 美女扒开腿免费视频| 国产欧美日韩一区二区三区四区| 日韩天堂在线视频| 日韩xxx高潮hd| 免费不卡在线观看| 国产精品免费一区二区三区四区 | 久草手机在线视频| 久久国产福利国产秒拍| 国产一区国产精品| 日本亚洲精品| 舔着乳尖日韩一区| 欧美日韩精品区别| 欧美日韩导航| 美女福利精品视频| 欧美一级淫片免费视频黄| 国产一区二区电影| 欧洲一区二区日韩在线视频观看免费| 在线观看的网站你懂的| 日本韩国一区二区| 熟妇高潮一区二区| 99精品美女| 国产国语刺激对白av不卡| 亚洲欧美黄色片| 日韩美女视频一区二区| 国产精品免费成人| 国产精品玖玖玖在线资源| 自拍偷拍免费精品| 丰满人妻老熟妇伦人精品| 国产成人自拍网| 午夜精品一区二区在线观看的 | 男男一级淫片免费播放| 99国产**精品****| 国产精品久久久久影院日本| 午夜性色福利视频| 亚洲午夜日本在线观看| 国产精欧美一区二区三区白种人| 精品国产精品国产偷麻豆| 91成人在线播放| 亚洲免费成人网| 亚洲精品国产a久久久久久| 亚洲色图久久久| 欧美男男gaytwinkfreevideos| 97视频免费看| 欧美一区二区三区激情| 亚洲电影激情视频网站| 国产乱国产乱老熟300部视频| 亚洲xxx拳头交| 国产日韩精品入口| 在线观看的av| 欧美日韩一区高清| 国产极品视频在线观看| 人人精品人人爱| 日韩福利二区| 亚洲a∨精品一区二区三区导航| 亚洲欧美福利视频| 无码人妻精品一区二区| 后入内射欧美99二区视频| 美女爽到高潮91| 性欧美.com| 久久久久毛片| 久久九九全国免费精品观看| 亚洲系列在线观看| 亚洲四区在线观看| 色综合五月婷婷| 欧美在线亚洲| 国产精品久久久久久久久久久久午夜片 | 亚洲欧美卡通动漫| 国内精品国产三级国产a久久| 免费观看黄色的网站| 电影91久久久| 久久免费福利视频| 日本人妖在线| 欧美在线视频你懂得| 日本一卡二卡在线播放| 麻豆精品视频在线| 黑人巨大国产9丨视频| 91精品国产自产在线丝袜啪 | 国产视频精品一区二区三区| 中文字幕一区二区三区四区欧美| 中文字幕欧美三区| 北条麻妃亚洲一区| 精品动漫3d一区二区三区免费| 久久亚洲综合网| 全球最大av网站久久| 成人444kkkk在线观看| 成人毛片在线精品国产| 色综合亚洲欧洲| 999精品视频在线观看播放| 国产成人精品免费一区二区| 国产aaa一级片| 99精品视频精品精品视频| 国产精品区一区二区三含羞草| 新片速递亚洲合集欧美合集| 久久久www成人免费精品张筱雨| 亚洲奶汁xxxx哺乳期| 在线精品视频一区二区三四| 草视频在线观看| 久久久亚洲高清| 捷克做爰xxxⅹ性视频| 老司机一区二区三区| 免费在线精品视频| 欧美性生活一级片| 国产在线不卡精品| 美女高潮视频在线看| 久久久999精品视频| 亚洲欧美综合一区二区| 欧美精品三级日韩久久| 国产污污视频在线观看| 亚洲婷婷国产精品电影人久久| av网站有哪些| 国产成人亚洲综合a∨婷婷| 亚洲成熟丰满熟妇高潮xxxxx| 综合久久久久| 日韩欧美三级一区二区| 盗摄牛牛av影视一区二区| 国产精品视频资源| 英国三级经典在线观看| 色综合久久88| 2021av在线| 亚洲欧美色婷婷| 丰满大乳国产精品| 欧美人动与zoxxxx乱| 一区二区三区福利视频| 亚洲一卡二卡三卡四卡无卡久久| 超碰人人人人人人人| 久久综合色综合88| 亚洲av人人澡人人爽人人夜夜| 韩国v欧美v日本v亚洲v| www午夜视频| 日韩中文字幕亚洲一区二区va在线| 中文字幕人妻熟女人妻洋洋| 91成人精品| 亚洲va韩国va欧美va精四季| 欧美美乳视频| 欧美日韩国产一二| 日韩大片在线免费观看| 国产区一区二区| 天堂va在线高清一区| 91理论片午午论夜理片久久| 日韩国产大片| 国产欧美日韩专区发布| 国产69精品久久| 国产精品pans私拍| 亚洲三级欧美| 日本成熟性欧美| av电影一区| 国产99视频精品免视看7| 手机在线观看av| 97超级碰碰碰久久久| 国产美女精品写真福利视频| 97婷婷大伊香蕉精品视频| av中文字幕电影在线看| 久久91亚洲精品中文字幕| 欧美性爽视频| 久久久久免费精品国产| 国产精品69xx| 亚洲91精品在线观看| 一区二区乱码| 国产精品久久久久久久久久久久久 | 五月婷婷深深爱| 日韩精品视频在线观看免费| 三级在线电影| 亚洲视频国产视频| 东热在线免费视频| 中文字幕一精品亚洲无线一区 | 成人欧美一区二区三区黑人麻豆| www.黄色com| 亚洲免费视频成人| 免费视频一二三区| 精品久久久久久中文字幕大豆网| 中文字幕第四页| 欧美性感一区二区三区| 国产婷婷一区二区三区久久| 精品久久一区二区| 日韩三级电影网| 日韩在线小视频| 久久五月精品中文字幕| 96精品视频在线| 成人午夜精品| 亚洲一区二区三区四区在线播放| 成人激情自拍| 西游记1978| 黄色国产精品| 超碰影院在线观看| 国产在线精品不卡| 国产黄色三级网站| 中文一区二区完整视频在线观看| 人妻少妇精品一区二区三区| 婷婷国产在线综合| 亚洲一线在线观看| 精品999在线播放| 韩国精品视频| 精品自在线视频| 日韩三级影视| 99精品在线直播| 一区二区三区韩国免费中文网站| 亚洲资源视频| 亚洲综合国产| 国产探花在线观看视频| www国产亚洲精品久久麻豆| 国产又黄又粗又猛又爽的| 亚洲成人在线网站| 夜夜狠狠擅视频| 日韩高清中文字幕| 国产精品久久久久久福利| 国产91精品久久久| 国产精品亚洲四区在线观看| 清纯唯美一区二区三区| 欧美女人交a| 视频二区在线播放| 97se亚洲国产综合自在线| 在线观看亚洲网站| 欧美性20hd另类| 亚洲va天堂va欧美ⅴa在线| 中文字幕日韩高清| 性xxxxfreexxxxx欧美丶| 99热在线国产| 国产精品久久观看| av免费网站观看| av成人免费在线观看| 国产精品老熟女一区二区| 欧美视频中文字幕| 日本天堂在线| 97国产真实伦对白精彩视频8| 国产精选久久| 亚洲一区二区四区| 久久久噜噜噜| 无套内谢大学处破女www小说| 一区二区三区美女视频| 国产又粗又猛又黄| 亚洲午夜av久久乱码| 在线观看网站免费入口在线观看国内 | 国产一区二区三区高清在线观看| 超碰在线公开| 国产欧美日韩一区| 亚洲三级网站| 欧美xxxxx精品| 亚洲国产精品一区二区www在线 | 欧美影视资讯| 日本精品视频一区| 久久久久综合| 免费一级做a爰片久久毛片潮| 色婷婷综合久久久中文一区二区| 香蕉久久国产av一区二区| 91av免费观看91av精品在线| 九色丨蝌蚪丨成人| www插插插无码免费视频网站| 国产一区二区三区在线观看免费| 免费在线观看a级片| 欧美高清性hdvideosex| 欧美猛烈性xbxbxbxb| 91精品久久久久久久久久久| 四季av在线一区二区三区| 亚洲一区日韩精品| 成人欧美一区二区三区1314| 国产乱子伦精品无码码专区| 久久亚洲成人精品| 精品久久久久久久久久岛国gif| 精品国产三级a∨在线| 国产精品77777| 国产真实夫妇交换视频| 亚洲国产成人av在线| 97se综合| 伊人久久av导航| 国产精品一区一区| 国产在线观看免费av| 日韩不卡中文字幕| 男人皇宫亚洲男人2020| 天堂资源在线亚洲资源| 国产综合久久久久影院| 久久久久无码国产精品不卡| 亚洲国产高清自拍| 免费亚洲电影| 在线观看成人av| 盗摄精品av一区二区三区| 少妇一级淫片免费放中国| 在线丨暗呦小u女国产精品| 国产精品777777在线播放| 久久综合久久久久| 26uuu精品一区二区在线观看| 在线观看黄色网| 九九热最新视频//这里只有精品| 鲁大师精品99久久久| 天堂在线资源视频| 亚洲欧美日韩电影| 亚洲欧美日韩成人在线| 国产日韩精品在线| 在线日韩中文| 大胸美女被爆操| 精品少妇一区二区三区在线播放| 韩日成人影院| 成人手机视频在线| 不卡一区二区中文字幕| 中文字幕一区二区在线视频| 欧美激情视频在线| 精品香蕉视频| 中文字幕在线观看91| 欧美视频在线一区二区三区 | 二区三区在线播放| 国产精品视频在线免费观看| 老鸭窝一区二区久久精品| 日本熟妇毛茸茸丰满|