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

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 1880|回復(fù): 3
收起左側(cè)

關(guān)于51單片機(jī)變量的聲明順序會(huì)影響結(jié)果,一個(gè)費(fèi)解的錯(cuò)誤

[復(fù)制鏈接]
ID:308052 發(fā)表于 2018-4-14 16:40 | 顯示全部樓層 |閱讀模式
本人初學(xué)51單片機(jī),跟著網(wǎng)上教程自學(xué),學(xué)到碼表程序編寫(xiě)。在寫(xiě)的過(guò)程中發(fā)一個(gè)問(wèn)題無(wú)法解釋?zhuān)拾l(fā)出來(lái)求問(wèn)高手?偟膩(lái)說(shuō)就是發(fā)現(xiàn)變量的聲明順序會(huì)影響結(jié)果。下面代碼的仿真結(jié)果,一個(gè)是對(duì)的,一個(gè)是錯(cuò)的,而兩段代碼不同的僅僅是變量聲明順序不同。換下順序就能很穩(wěn)定的重現(xiàn)

u8 num_h,num_l; 這個(gè)正常
u8 num_l,num_h; 這個(gè)異常

很打擊學(xué)習(xí)積極性啊~ 肯求高手說(shuō)下。多謝

結(jié)果正常 代碼如下:
  1. void showNum(u8 bit_b,u8 seg_s)
  2. {
  3.         u8 num_h,num_l;
  4.         
  5.         num_l=seg_s%10;
  6.         num_h=seg_s/10;
  7.         if(bit_b==1)
  8.         {        
  9.                 display_led(1,num_h);
  10.                 delay(2);
  11.                 display_led(0,num_l);
  12.                 delay(2);
  13.         }
  14.         if(bit_b==2)
  15.         {        
  16.                 display_led(4,num_h);
  17.                 delay(2);
  18.                 display_led(3,num_l);
  19.                 delay(2);
  20.         }
  21.         if(bit_b==3)
  22.         {         
  23.                 display_led(7,num_h);
  24.                 delay(2);
  25.                 display_led(6,num_l);
  26.                 delay(2);
  27.         }        
  28.         
  29. }
復(fù)制代碼
結(jié)果如圖:




微信截圖_20180414163255.png


異常代碼如下:
  1. void showNum(u8 bit_b,u8 seg_s)
  2. {
  3.         u8 num_l,num_h;
  4.         
  5.         num_l=seg_s%10;
  6.         num_h=seg_s/10;
  7.         if(bit_b==1)
  8.         {        
  9.                 display_led(1,num_h);
  10.                 delay(2);
  11.                 display_led(0,num_l);
  12.                 delay(2);
  13.         }
  14.         if(bit_b==2)
  15.         {        
  16.                 display_led(4,num_h);
  17.                 delay(2);
  18.                 display_led(3,num_l);
  19.                 delay(2);
  20.         }
  21.         if(bit_b==3)
  22.         {         
  23.                 display_led(7,num_h);
  24.                 delay(2);
  25.                 display_led(6,num_l);
  26.                 delay(2);
  27.         }        
  28.         
  29. }
復(fù)制代碼
結(jié)果:

222.png
回復(fù)

使用道具 舉報(bào)

ID:308107 發(fā)表于 2018-4-14 17:47 | 顯示全部樓層
能不能上傳完整程序?
回復(fù)

使用道具 舉報(bào)

ID:285031 發(fā)表于 2018-4-14 17:48 | 顯示全部樓層
我也是剛剛學(xué)習(xí)51單片機(jī),我覺(jué)得就函數(shù)內(nèi)部變量聲明順序應(yīng)該沒(méi)有關(guān)系,針對(duì)你的問(wèn)題我可能沒(méi)有滿(mǎn)意的答案。其他方面可以提一些建議。可以買(mǎi)一個(gè)單片機(jī),還是用實(shí)際單片機(jī)進(jìn)行測(cè)試比較好。51單片機(jī)有正版的編程環(huán)境,可以上keil官網(wǎng)下載,現(xiàn)在單片機(jī)都是EEPROM,寫(xiě)程序都很方便,還是用實(shí)際單片機(jī)調(diào)試靠譜。我用我的實(shí)際單片機(jī)調(diào)試就沒(méi)有問(wèn)題。而且用仿真軟件是很有弊端的,第一非正版會(huì)有很多bug,而且有的時(shí)候?qū)嶋H電路和仿真電路會(huì)有差別。

評(píng)分

參與人數(shù) 1黑幣 +80 收起 理由
admin + 80 回帖助人的獎(jiǎng)勵(lì)!

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

ID:237354 發(fā)表于 2018-4-14 18:11 | 顯示全部樓層
在定義函數(shù)時(shí)指定參數(shù)類(lèi)型試試!參數(shù)是通過(guò)堆棧傳遞的,類(lèi)型不對(duì)有可能引起參數(shù)誤讀

評(píng)分

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

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 国产 日韩 欧美 在线 | 99视频免费看| 一级做a爰片久久毛片免费看 | 中文字幕高清免费日韩视频在线 | 亚洲三区在线观看 | 宅男伊人| 在线观看视频一区 | 久久中文一区二区 | 日韩中文一区二区 | 黄网站免费在线观看 | 国产精品久久久久久久久久软件 | 亚洲国产精品99久久久久久久久 | 琪琪午夜伦伦电影福利片 | 国产精品久久久久aaaa | 中文字幕乱码视频32 | 久久久精 | 国产精品一区二区无线 | 精品久久久网站 | 日韩视频一区二区三区 | 亚洲国产精品一区在线观看 | 国产一区中文字幕 | 99久久免费精品 | 成人毛片在线观看 | 欧美精品一区在线 | 奇米影视在线 | aaaaaa大片免费看最大的 | 国产aa | 亚洲男人的天堂网站 | 激情五月婷婷综合 | aaa一区 | 亚洲一区二区三区在线播放 | 日韩成人在线播放 | 亚洲成人一二区 | 最新超碰 | 国产一区二区三区日韩 | 国产精品一区二区av | 亚洲视频国产 | 色婷婷精品久久二区二区蜜臂av | 中文字幕一区二区视频 | 91精产国品一二三区 | 九色91视频|