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

QQ登錄

只需一步,快速開始

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

用普中科技單片機(jī)學(xué)習(xí)板的流水燈控制問題?

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:405915 發(fā)表于 2018-12-8 16:04 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
為什么前面的左移函數(shù)就執(zhí)行了一次?后面就一直執(zhí)行最后的語句了 ?
#include "reg52.h"
         #include<intrins.h>
         #define uint unsigned int
         #define uchar unsigned char

void delay(uint i)
{
   while(i--);
}

            uchar i;
  void main()
  {

     while(1)
         {
           P2=0xfe;
          delay(50000);
           for(i=0;i<7;i++)
           {
           P2=_crol_(P2,2);
           delay(50000);
           }
           P2=0x7f;
           delay(50000);
           for(i=0;i<7;i++)
           {
                   P2=_cror_(P2,1);
                delay(50000);
           }
         }
  }

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

使用道具 舉報(bào)

沙發(fā)
ID:164602 發(fā)表于 2018-12-8 20:42 | 只看該作者
你的程序打錯(cuò)了啊啊啊啊
           uchar i;
  void main()
看看看看,你的程序
應(yīng)該這樣吧——————
  void main()
{
           uchar i;
回復(fù)

使用道具 舉報(bào)

板凳
ID:405915 發(fā)表于 2018-12-29 21:21 | 只看該作者
HC6800-ES-V2.0 發(fā)表于 2018-12-8 20:42
你的程序打錯(cuò)了啊啊啊啊
           uchar i;
  void main()

運(yùn)行沒問題啊
回復(fù)

使用道具 舉報(bào)

地板
ID:454000 發(fā)表于 2018-12-29 22:05 | 只看該作者
你這個(gè)程式有點(diǎn)意思,我用你的代碼仿真試了一下,前面是跳格向下移7次,后面是緊跟上移7次,如此循環(huán)下去..........不過是寫的不夠嚴(yán)謹(jǐn)!uchar i;不放在任何函數(shù)中時(shí)是全局變量,就是說你delay中局部變量 i 與main中全局變量 i 發(fā)生了中突,仿真可能看不出來,但實(shí)際的51單片機(jī)可能就會(huì)出錯(cuò)。一要么同上面說的將
uchar i;放入main中,使其成局部變量,要么將兩個(gè)變量不用同一個(gè) i .void delay(uint i)中的 i 改成 t 也行啊!只要變量不中突,單片機(jī)是能正常運(yùn)行的

評(píng)分

參與人數(shù) 2黑幣 +30 收起 理由
還有誰? + 15
找人PK + 15

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

5#
ID:454778 發(fā)表于 2018-12-30 10:41 | 只看該作者
你把I定義到主函數(shù)外面去了
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

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