欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

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

QQ登錄

只需一步,快速開始

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

雙向流水燈的最簡單程序

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:241782 發(fā)表于 2017-10-22 12:30 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式

雙向流水燈也是常見的編程題目。

題目的基本要求并不難,很容易就可以編寫出來。

但是,如果要求代碼簡短、執(zhí)行流暢、可維護(hù)性強(qiáng),可就不那么容易了。而這些都是編寫大型程序的基礎(chǔ)。

在網(wǎng)上有兩個(gè)這樣的問題,一個(gè)要求使用C,另一個(gè)要求使用匯編。編程的要求如下:
//-----------------------------------
51單片機(jī),讓8個(gè)led從頭亮到尾再從尾亮到頭,有沒有更簡單的方法呢。
要求用C語言編程。
題目網(wǎng)址:http://zhidao.baidu.com/question/370212478.html
//-----------------------------------
;------------------------------------
編程:使用單片機(jī)P1口控制8個(gè)LED。
顯示方式:自上而下逐個(gè)點(diǎn)亮,再自下而上逐個(gè)點(diǎn)亮,如此循環(huán)。
要用單片機(jī)的匯編語言,不要各種C。
題目網(wǎng)址:http://zhidao.baidu.com/question/316144728.html
;------------------------------------

做而論道回答了問題,雖然沒有得到提問者的青睞,但是做而論道自己還覺得程序是不錯(cuò)的,就寫在這里吧。

;==========================================================
//51單片機(jī),讓8個(gè)led從頭亮到尾再從尾亮到頭,有沒有更簡單的方法呢。
//題目網(wǎng)址:http://zhidao.baidu.com/question/370212478.html

//是不是下面這個(gè)最簡單:
//------------------------------------
#include<reg51.h>
#include<intrins.h>
void main (void)
{
    unsigned  char  mask = 1, j = 0;
    unsigned  int  i;
    while (1) {
      if (j < 7)  mask = _crol_(mask, 1);
      else        mask = _cror_(mask, 1);
      P1 = ~mask;  for(i = 0; i < 30000; i++);
      P1 = 0xff;   //for(i = 0; i < 10000; i++);
      j++;
      j = j % 14;
    }
}
//------------------------------------完
;===========================================================
;用匯編語言編程如下:

    ORG   0000H
    MOV   A, #7FH
    MOV   R2, #7
L:  JNB   F0, R
    RL    A
    JMP   O
R:  RR    A
O:  MOV   P1, A
    CALL  DL_500ms   ;延時(shí)500ms
    DJNZ  R2, L
    MOV   R2, #7
    CPL   F0
    JMP   L
;------------------------------------
DL_500ms:            ;延時(shí)500ms子程序
    MOV   R5,  #4
    MOV   R6,  #205
    MOV   R7,  #200
    DJNZ  R7,  $
    DJNZ  R6,  $ - 2
    DJNZ  R5,  $ - 4
    RET
;------------------------------------
END


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

使用道具 舉報(bào)

沙發(fā)
ID:245800 發(fā)表于 2017-11-4 20:11 | 只看該作者
很實(shí)用
回復(fù)

使用道具 舉報(bào)

板凳
ID:227466 發(fā)表于 2017-11-5 00:23 來自觸屏版 | 只看該作者
zhouzongjie 發(fā)表于 2017-11-4 20:11
很實(shí)用

很巧妙的一個(gè)程序!
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

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