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

QQ登錄

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

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

PIC單片機(jī)開(kāi)發(fā)板之流水燈代碼

[復(fù)制鏈接]
ID:103513 發(fā)表于 2016-1-17 02:22 | 顯示全部樓層 |閱讀模式
這個(gè)是我自己diy的單片機(jī)開(kāi)發(fā)板:http://www.torrancerestoration.com/bbs/dpj-42590-1.html
  1. /*
  2. 這是自已寫(xiě)的流水燈,速度為500ms
  3. */
  4. #include<pic.h>
  5. #define uchar unsigned char
  6. #define uint unsigned int
  7. __CONFIG(0x3B31);
  8. void delay(uint x)
  9. {
  10.      uint a,b;        for(a=x;a>0;a--)
  11.       for(b=110;b>0;b--);
  12. }
  13. void main()
  14. {
  15.      uchar i;             //變量定義最好放在第一行,否則會(huì)出錯(cuò)(提示一大堆的錯(cuò)誤)
  16.      TRISD=0x00;                        

  17.      TRISC=0x00; PORTC=0x00;  //把數(shù)碼管屏蔽掉
  18. //------------左移效果,向高位移動(dòng)------------------------------
  19.      while(1)
  20.      {
  21.           PORTD=0x01;

  22. /*        RD0=1;    //這是靜態(tài)的,PORTD=0x??是動(dòng)態(tài)的,如果加了蜂鳴器就得用動(dòng)態(tài)的,用靜態(tài)的蜂鳴器會(huì)一直響。

  23.         同樣,573鎖存器是靜態(tài)的,而38譯碼器是動(dòng)態(tài)的,無(wú)法做到靜態(tài)同時(shí)選中8個(gè)數(shù)碼管。38譯碼器每次譯一個(gè)碼,每次只能選中一個(gè)數(shù)碼管,所以無(wú)法做到同時(shí)選中8個(gè)數(shù)碼管*/
  24.           for(i=8;i>0;i--)

  25.                {
  26.                delay(500);
  27.                PORTD=PORTD<<1;   //左移(向高位移動(dòng),顯示效果為向右邊高位移動(dòng)),移動(dòng)形成流水效果
  28.               }
  29. //------------右移效果,向低位移動(dòng)------------------------
  30. /*
  31. 心得:通過(guò)調(diào)試窗口,實(shí)踐得知PORTD=0x80才能形成右移效果。
  32. 犯的錯(cuò):之前設(shè)為0x08則為0000 1000。而0x80則為1000 0000
  33. */
  34.           PORTD=0x80;

  35.           for(i=8;i>0;i--)  //循環(huán)8次

  36.                {
  37.                delay(500);
  38.                PORTD=PORTD>>1;   //右移(向低位移動(dòng),顯示效果為向左邊高位移動(dòng)),移動(dòng)形成流水效果
  39.               }
  40.           }
  41. }
復(fù)制代碼




回復(fù)

使用道具 舉報(bào)

ID:468294 發(fā)表于 2020-1-4 06:46 | 顯示全部樓層
學(xué)習(xí)了,受益良多,感謝樓主分享,頂一下!
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

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