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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

這是一個用步進電機做的點光源跟蹤系統(tǒng),在中斷函數(shù)處出問題了。請大佬幫忙看看,謝謝

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:838591 發(fā)表于 2020-11-30 08:54 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
這是一個用步進電機做的點光源跟蹤系統(tǒng),同時要在數(shù)碼管顯示步進電機的旋轉(zhuǎn)角度。在中斷函數(shù)處出問題了。

  1. #include "reg52.h"                         //此文件中定義了單片機的一些特殊功能寄存器

  2. typedef unsigned int u16;          //對數(shù)據(jù)類型進行聲明定義
  3. typedef unsigned char u8;

  4. sbit LSA=P2^2;
  5. sbit LSB=P2^3;
  6. sbit LSC=P2^4;
  7. sbit A1=P1^0;
  8. sbit B2=P1^1;
  9. sbit C3=P1^2;
  10. sbit D4=P1^3;
  11. sbit leftright=P2^1;
  12. #define A_ON {A1=1;B2=0;C3=0;D4=0;}
  13. #define B_ON {A1=0;B2=1;C3=0;D4=0;}
  14. #define C_ON {A1=0;B2=0;C3=1;D4=0;}
  15. #define D_ON {A1=0;B2=0;C3=0;D4=1;}
  16. #define AB_ON {A1=1;B2=1;C3=0;D4=0;}
  17. #define BC_ON {A1=0;B2=1;C3=1;D4=0;}
  18. #define CD_ON {A1=0;B2=0;C3=1;D4=1;}
  19. #define DA_ON {A1=1;B2=0;C3=0;D4=1;}
  20. #define ABCD_OFF {A1=0;B2=0;C3=0;D4=0;}

  21. u8 code smgduan[17]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,
  22.                                         0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};//顯示0~F的值

  23. u8 sec,min;
  24. u8 DisplayData[8];
  25. /*******************************************************************************
  26. * 函 數(shù) 名         : delay
  27. * 函數(shù)功能                   : 延時函數(shù),i=1時,大約延時10us
  28. *******************************************************************************/
  29. void delay(u16 i)
  30. {
  31.         while(i--);        
  32. }
  33. void delay1(unsigned int i)        //步進電機延時用
  34. {
  35. while(--i);
  36. }
  37. /*******************************************************************************
  38. * 函 數(shù) 名         : Timer0Init
  39. * 函數(shù)功能                   : 定時器0初始化
  40. * 輸    入         : 無
  41. * 輸    出         : 無
  42. *******************************************************************************/
  43. void Timer0Init()
  44. {
  45.         TMOD|=0X01;//選擇為定時器0模式,工作方式1,僅用TR0打開啟動。

  46.         TH0=0Xd8;        //給定時器賦初值,定時10ms
  47.         TL0=0Xf0;        
  48.         ET0=1;//打開定時器0中斷允許
  49.         EA=1;//打開總中斷
  50.         TR0=1;//打開定時器                        
  51. }


  52. /*******************************************************************************
  53. * 函 數(shù) 名         : DigDisplay
  54. * 函數(shù)功能                   : 數(shù)碼管動態(tài)掃描函數(shù),循環(huán)掃描8個數(shù)碼管顯示
  55. *******************************************************************************/
  56. void DigDisplay()
  57. {
  58.         u8 i;
  59.         for(i=0;i<8;i++)
  60.         {
  61.                 switch(i)         //位選,選擇點亮的數(shù)碼管,
  62.                 {
  63.                         case(0):
  64.                                 LSA=1;LSB=1;LSC=1; break;//顯示第7位
  65.                         case(1):
  66.                                 LSA=0;LSB=1;LSC=1; break;//顯示第6位
  67.                         case(2):
  68.                                 LSA=1;LSB=0;LSC=1; break;//顯示第5位        
  69.                 }
  70.                 P0=DisplayData[i];//發(fā)送段碼
  71.                 delay(100); //間隔一段時間掃描        
  72.                 P0=0x00;//消隱
  73.         }
  74. }

  75. void datapros()
  76. {
  77.         DisplayData[0]=smgduan[min/100];
  78.         DisplayData[1]=smgduan[(min/10)%10];
  79.         DisplayData[2]=smgduan[min%10];        

  80. }
  81. void leftright1(char a) //右轉(zhuǎn)
  82. {
  83. unsigned char i;
  84. for(i=0;i<a;i++)
  85. {
  86. A_ON
  87. delay1(1500);
  88. sec--;
  89. B_ON
  90. delay1(1500);
  91. sec--;
  92. C_ON
  93. delay1(1500);
  94. sec--;
  95. D_ON
  96. delay1(1500);
  97. sec--;
  98. }
  99. }
  100. void leftright2(char a) //左轉(zhuǎn)
  101. {
  102. unsigned char i;
  103. for(i=0;i<a;i++)
  104. {
  105. D_ON
  106. delay1(1500);
  107. sec++;
  108. C_ON
  109. delay1(1500);
  110. sec++;
  111. B_ON
  112. delay1(1500);
  113. sec++;
  114. A_ON
  115. delay1(1500);
  116. sec++;
  117. }
  118. }
  119. /*******************************************************************************
  120. * 函 數(shù) 名       : main
  121. * 函數(shù)功能                 : 主函數(shù)
  122. * 輸    入       : 無
  123. * 輸    出             : 無
  124. *******************************************************************************/
  125. void main()
  126. {        
  127.         Timer0Init();  //定時器0初始化
  128.                     leftright=1;
  129.         while(1)
  130.         {
  131. if(leftright==1)
  132. {
  133. leftright2(1);
  134. }
  135. if(leftright==0)
  136. {
  137. leftright1(1);
  138. }
  139.                 datapros();
  140.                 DigDisplay();                        
  141. }

  142. /*******************************************************************************
  143. * 函 數(shù) 名         : void Timer0() interrupt 1
  144. * 函數(shù)功能                   : 定時器0中斷函數(shù)
  145. * 輸    入         : 無
  146. * 輸    出         : 無
  147. *******************************************************************************/
  148. void Timer0() interrupt 1(這里出錯了)
  149. {
  150.         TH0=0Xd8;        //給定時器賦初值,定時10ms
  151.         TL0=0Xf0;
  152.         if(sec>=11)  //
  153.         {
  154.                 min++;
  155.                 if(sec<0)
  156.                 {
  157.                         min=0;
  158.                         if(min>360)
  159.                         {
  160.                                 min=0;
  161.                         }
  162.                 }        
  163.         }        
  164. }
復(fù)制代碼

軟件顯示Build target 'Target 1'
compiling main.c...
MAIN.C(169): error C141: syntax error near 'void'
Target not created在最后一個中斷函數(shù)處
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

沙發(fā)
ID:258566 發(fā)表于 2020-11-30 11:08 | 只看該作者
c141 記號錯誤,
主函數(shù)最后加上一個花括號‘}’就可以編譯。

評分

參與人數(shù) 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

回復(fù)

使用道具 舉報

板凳
ID:278840 發(fā)表于 2020-11-30 11:14 | 只看該作者
沙發(fā)正解
回復(fù)

使用道具 舉報

地板
ID:838591 發(fā)表于 2020-11-30 11:46 來自觸屏版 | 只看該作者
cccc888 發(fā)表于 2020-11-30 11:08
c141 記號錯誤,
主函數(shù)最后加上一個花括號‘}’就可以編譯。

謝謝,可以了
回復(fù)

使用道具 舉報

5#
ID:851596 發(fā)表于 2020-11-30 11:53 來自觸屏版 | 只看該作者
c141記號有問題 主函數(shù)最后少了一個} 加了應(yīng)該就可以了
回復(fù)

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 国产伦精品一区二区三区照片91 | 国产一区二区精品 | 男女网站免费 | 国产成人精品视频在线观看 | 国产精品免费在线 | 亚洲a人 | 国产在线精品一区二区三区 | 久久久久久99 | 手机看黄av免费网址 | 国产乱码高清区二区三区在线 | 欧美日韩在线综合 | 五月精品视频 | 美国av毛片 | 国产精品视频二区三区 | 亚洲一二三区免费 | 欧美亚洲国产一区 | 在线一级片 | 欧美成人免费在线 | 黑人精品xxx一区一二区 | 日本中文字幕一区 | 日本高清在线一区 | 国产美女h视频 | 99精品欧美一区二区三区 | 伦理午夜电影免费观看 | 成人亚洲视频 | 久草网址| 精品久久久久久亚洲精品 | 一区二区三区四区在线视频 | 青青草国产在线观看 | 国产精品视频网站 | 成人在线视频免费播放 | 91在线视频免费观看 | 国产综合av | 国产成人免费视频网站视频社区 | 国产 日韩 欧美 在线 | 在线一区 | 欧美第一页 | 国产在线精品一区二区 | 久久精品久久久久久 | 国产欧美在线播放 | 操网站 |