搜索
bottom↓
回复: 10

单片机程序问题咨询函数不执行

[复制链接]

出0入0汤圆

发表于 2016-9-12 10:36:26 | 显示全部楼层 |阅读模式
本帖最后由 三国小兵 于 2016-9-12 10:56 编辑

key_serve();
这个函数一直不执行,这个函数是轮流显示4位数码管显示0000,1111,2222,3333   有什么测试办法,判断下问题点在哪里吗




  1. #include "dw8051.h"
  2. #include "ExLigReg.h"
  3. #include "ExLigLib.h"
  4. #include "delay.h"
  5. #include "func.h"


  6. void main()
  7. {
  8.         Init_Port();
  9.         SetPLL(SETPLL_3_2M);//设置3.2M的MCU时钟,单独调试(F11)此函数会失去调试连接
  10.        
  11.         while(1)
  12.         {
  13.                 ClearWDT();
  14.                 //Led_Twin(4);
  15.                 //ClearWDT();
  16.                 key_serve();
  17.                 test();
  18.                 ClearWDT();
  19.         }
  20.                
  21. }





  22. void key_serve(void)
  23. {
  24.          switch(Stuse_Type)
  25. {


  26.   case 0:
  27.          
  28.         disp(0xc0,0);
  29.         disp(0xc1,0);
  30.         disp(0xc2,0);
  31.         disp(0xc3,0);
  32.                 // nop;
  33.                          nop;
  34.                          nop;
  35.                          nop;
  36.                          nop;
  37.                          Stuse_Type=1;       
  38.                         break;
  39.                

  40.   case 1:                     
  41.     disp(0xc0,1);
  42.         disp(0xc1,1);
  43.         disp(0xc2,1);
  44.         disp(0xc3,1);
  45. //        nop;
  46.                          nop;
  47.                         // nop;
  48.                          Stuse_Type=2;       
  49.                         break;
  50.         break;
  51.   case 2:                      
  52.     disp(0xc0,2);
  53.         disp(0xc1,2);
  54.         disp(0xc2,2);
  55.         disp(0xc3,2);
  56. //        nop;
  57.                          nop;
  58.                         // nop;
  59.                          Stuse_Type=3;       
  60.                         break;
  61.                   break;
  62.                        
  63.   case 3:                      
  64.         disp(0xc0,3);
  65.         disp(0xc1,3);
  66.         disp(0xc2,3);
  67.         disp(0xc3,3);
  68.                   break;


  69. }
  70. }

复制代码

出0入0汤圆

 楼主| 发表于 2016-9-12 10:40:07 | 显示全部楼层
自己顶下...............

出0入0汤圆

发表于 2016-9-12 10:44:44 | 显示全部楼层
你粘贴的代码乱七八糟的,一般没人帮你看代码。注意排版。
我只问一点,你的Stuse_Type是静态变量吗?

建议把看门狗关了先,把问题择清楚。
MCU时钟正在初始化,你就用仿真器单步调试,单片机的时钟都没有正常被初始化好。你的仿真器当然没办法正常的访问单片机相关的寄存器了。【可能是这里导致的失联】




出0入0汤圆

 楼主| 发表于 2016-9-12 10:51:17 | 显示全部楼层
WM_CH 发表于 2016-9-12 10:44
你粘贴的代码乱七八糟的,一般没人帮你看代码。注意排版。
我只问一点,你的Stuse_Type是静态变量吗?

好的,我看看

出0入0汤圆

发表于 2016-9-12 10:56:21 | 显示全部楼层
Stuse_Type 你跳到3,还有改变它吗

出0入0汤圆

 楼主| 发表于 2016-9-12 10:57:08 | 显示全部楼层
wongT 发表于 2016-9-12 10:56
Stuse_Type 你跳到3,还有改变它吗

没有改变了

出0入0汤圆

发表于 2016-9-12 11:03:29 | 显示全部楼层
不需要延时?Stuse_Type怎么定义的

出0入0汤圆

 楼主| 发表于 2016-9-12 11:13:45 | 显示全部楼层
unsigned char Stuse_Type;        //状态变量  

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

 楼主| 发表于 2016-9-12 11:14:19 | 显示全部楼层
lyl2022 发表于 2016-9-12 11:03
不需要延时?Stuse_Type怎么定义的

unsigned char Stuse_Type;        //状态变量

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入91汤圆

发表于 2016-9-12 11:18:33 | 显示全部楼层
想帮你看代码,但是代码不全 加 乱七八糟的

出0入0汤圆

 楼主| 发表于 2016-9-12 11:22:07 | 显示全部楼层
ackyee 发表于 2016-9-12 11:18
想帮你看代码,但是代码不全 加 乱七八糟的

稍等,我上传完整代码
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-29 20:49

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表