亚洲春色中文字幕久久久-三上亚,一吻二脱三床四吻胸,国产真实伦对白视频全集,在线毛片观看,精品成品入口黄网,国产毛aⅴ片久久久,亚洲AV色香蕉一区二区三区老师,萧皇后A级艳片,色情日本视频更新,99久久亚洲精品日本无码

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

巧用單片機定時器中斷,求解delay函數(shù)中i和j的值

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:351097 發(fā)表于 2019-8-5 11:25 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
我們用單片機一般都會用到自定義的delay函數(shù),很多時候我們都要去網(wǎng)上找別人現(xiàn)成寫好的delay函數(shù),當然,還要晶振的頻率和別人的板子一樣才行。有時候我們也想自己寫一個準確的delay()函數(shù),但是里面的i和j參數(shù)到底取什么值,這個自己慢慢調(diào)試挺費時間的,還要單片機支持仿真才行。我自己琢磨了一下,想到了利用單片機的定時器外設(shè)來確定i和j參數(shù)。我們知道單片機的定時器外設(shè)都比較精準。現(xiàn)在我們來用定時器中斷來自己寫一個1ms的delay函數(shù)。首先寫一個delay函數(shù),參數(shù)為指針i和指針j。還有一個timer_init();//定時1ms初始化,使能中斷。void Delay_ms(int *i, int *j)//延時函數(shù),但是i和j未知

{
   _nop_();
   _nop_();
do
{while(--*j)}while(--*i)}
timer_interrupt_service//1ms中斷入口函數(shù)
{
  printf(“a = %d\n”,*a);
  printf(“b = %d\n”,*b);
}
int main(void)
{
  int *a=500;
  int *b=300;
  timer_init();
while(1)
{
  Delay_ms(&a, &b);//死循環(huán)執(zhí)行delay函數(shù)
}
}
這樣,1ms后,第一次進入定時器中斷函數(shù)后,會打印a和b的值,那么就可以確定delay函數(shù)中i和j的值了,從而可以實現(xiàn)自定義1ms的延時函數(shù)。

評分

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

查看全部評分

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

使用道具 舉報

沙發(fā)
ID:66287 發(fā)表于 2019-8-14 10:06 | 只看該作者
很巧妙,贊一個!
回復(fù)

使用道具 舉報

板凳
ID:371895 發(fā)表于 2019-8-16 18:49 來自觸屏版 | 只看該作者
有一個輔助軟件可以直接得出的
回復(fù)

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表