单片机编程:有8个LED灯P0——P7,编一段程序使之实现 P0亮后依次右移到P7,再从p7左移到P0 如此循环不止。

8051\u5355\u7247\u673a\uff0c\u7528P0\u53e3\u63a7\u52368\u4e2aLED\u5b9e\u73b0\u5faa\u73af\u5f69\u706f\u3002

\u8dd1\u9a6c\u706f\u3002\u7f51\u4e0a\u4e00\u5927\u628a\u3002
\u6211\u5c31\u89e3\u91ca\u4e0b\u95f4\u9694\u4e00\u79d2\u7684\u90a3\u4e2a\uff0c\u65f6\u95f4\u5e38\u6570\u3002
\u770b\u4f60\u7528\u7684\u5b9a\u65f6\u5668\u65b9\u5f0f\u3002\u4e00\u822c\u7528\u65b9\u5f0f1\u3002\u82e5\u9891\u7387\u662f24mhz\uff0c\u673a\u5668\u5468\u671f\u4e3a0.5us\u3002\u6240\u4ee5\u8ba1\u6570\u6b21\u6570\u4e3a1s/0.5us=200000\u6b21\u8d85\u8fc7\u4e86\u8303\u56f4\u3002\u6240\u4ee5\u7528\u5faa\u73af\u3002\u53ef\u4ee550000\u5faa\u73af4\u6b21\u6216\u5176\u4ed6\u6b21\u6570\u3002\u7b97\u51fa\u6280\u672f\u521d\u503c\u3002

;\u589e\u52a0\u4e86\u51e0\u884c\uff1a

ORG 0000H
LJMP SETUP
ORG 0003H
LJMP INEX0P
;-----------------------------
ORG 0013H
LJMP INEX1P
;-----------------------------
ORG 0030H
SETUP:
MOV A, #0FEH
SETB IT0
SETB EX0
SETB IT1
SETB EX1
SETB EA
MAIN:
SJMP MAIN
INEX0P:
MOV P1,A
RL A
RETI
;-----------------------------
INEX1P:
MOV P1, A
RR A
RETI
;-----------------------------
END

#include "reg51.h"
#include "intrins.h"
#define uchar unsigned char
#define uint unsigned int
sbit Led=P1;
void delay(void);
void main(void)
{
unsigned char tmp,i;
P1=0x00;//全熄灭
while(1)
{
for(i=0;i<8;i++)//左移
{
tmp=0x01;
tmp=(tmp<<i);
P1=tmp;
delay();
}
P1=0x00;
delay();

for(i=0;i<8;i++)//右移
{
tmp=0x80;
tmp=tmp>>i;
P1=tmp;
delay();
}
P1=0x00;
delay();
}
void delay(void) //误差 0us
{
unsigned char a,b,c;
for(c=167;c>0;c--)
for(b=171;b>0;b--)
for(a=16;a>0;a--);
_nop_; //if Keil,require use intrins.h
}

  • 鍗曠墖鏈鐨勮窇椹伅C绋嬪簭濡備綍缂栧啓鍏釜LED鐏渚濇鐐逛寒鑰屼笖閫熷害娓愬彉鐨勪唬鐮乢鐧 ...
    绛旓細//P1澶栨帴8涓狶ED锛屼綆鐢靛钩鍙戝厜.//涓嬪垪绋嬪簭鍦≒ROTEUS涓豢鐪熸垚鍔 include<reg52.h> //--- void delay_ms(unsigned int s){ unsigned int x;for(s; s > 0; s--) { x = 98; while(x--);} } //--- void main(){ char i, j;while(1) { for(j = 0; j < 8; j+...
  • 鍗曠墖鏈虹紪绋楂樻墜璇疯繘
    绛旓細鍋囪鏉′欢锛1. 鍏釜鐏鎺P0鍙o紝1鍙风伅瀵瑰簲P1.0,8鍙风伅瀵瑰簲P1.7蹇呴』鏄疌PU鍙h礋杈撳嚭鏈夋晥銆2. 鍋囪鏅舵尟鏄12M銆3. 鍋囪姣忔浜1绉掋侽RG 0000H LJMP 0080H ORG 0080H MOV SP, #60H ;璁惧爢鏍堣捣濮嬪湴鍧 MOV R2, #05H ;閲嶅5娆 MOV R3, #01H ;闂撮殧鏃堕棿涓1绉 ;===寰幆浜旀=== LOOP2:MOV R0...
  • ...C璇█缂栧啓涓娈靛崟鐗囨満绋嬪簭:鍗曠墖鏈澶栭儴鎷撳睍8涓狶ED鐏,鎸夊悜涓婇敭鏃,鐏敱...
    绛旓細娌℃湁鐢佃矾鍥撅紝鍙湁鑷敱鍙戞尌浜嗐傝繖閲P0鍙f帴LED锛孭1鎺ユ寜閿#include<reg51.h>#include<intrins.h>#define uchar unsigned charsbit key_up=P1^0;sbit key_dn=P1^1;uchar cnt,keyval;void t0isr() void t0isr() interrupt 1{TH0=(65536-50000)/256;TL0=(65536-50000)%256;cnt++;if(cnt>=10)...
  • 鐢鍗曠墖鏈篜0鎺у埗8涓狶ED,瑕佹眰8涓狶ED鎸1357鈥斺2468鐨勯『搴忚疆娴佺偣浜甠鐧惧害...
    绛旓細涓閿鍔熻兘鎸夐敭璇嗗埆鎶鏈 1锛庡疄楠屼换鍔 寮鍏矺1鎺ュ湪P3.2绠¤剼涓婏紝鍦ˋT89S51鍗曠墖鏈鐨P0.0绔彛鎺ユ湁1涓彂鍏変簩鏋佺锛屼笂鐢电殑鏃跺欙紝L1鎺ュ湪P1.0绠¤剼涓婄殑鍙戝厜浜屾瀬绠″湪浜紝褰撲竴娆℃寜涓嬪紑鍏矺1鐨勬椂鍊,鐏伃,鍐嶆寜涓娆,鐏寒锛屽姝よ疆娴佷笅鍘汇 2锛庣郴缁熸澘涓婄‖浠惰繛绾 鎶娾滃崟鐗囨満绯荤粺鈥濆尯鍩熶腑鐨凱3.2绔彛杩炴帴鍒扳滅嫭绔嬪紡...
  • 8涓狶ED鎸囩ず鐏惊鐜棯鐑佺殑绋嬪簭(鍗曠墖鏈)
    绛旓細3锛氬綋I鍊间负姣忎釜鍊兼椂锛屾墽琛岀浉搴旂殑妯″紡銆傛按閲忕伅鍙傝冪▼搴 锛僫nclude 锛僫nclude 锛冨畾涔塽char鏃犵鍙峰瓧绗 Ucharj锛屾俯搴︼紱鏃犳晥寤惰繜锛堟棤绗﹀彿鏁村瀷ms锛夛經 Uchart锛涳紙濂冲+锛夊浜(t = 0;T < 123;T + +);锝 Voidmain锛堬級锝 P1锛0XFF锛涘欢杩燂紙500锛夛紱Temp锛0xfe锛涳紡锛忓鎬紝led杩炴帴鍦≒2锛3锝濸2锛6 瀵逛簬(...
  • 鐢╟璇█缂栧啓鍗曠墖鏈娴佹按鐏▼搴,(8涓鍙戝厜浜屾瀬绠′粠宸﹁嚦鍙冲惊鐜偣浜)_鐧惧害...
    绛旓細include"reg52.h"//姝ゆ枃浠朵腑瀹氫箟浜鍗曠墖鏈鐨勪竴浜涚壒娈婂姛鑳藉瘎瀛樺櫒 typedef unsigned int u16锛//瀵规暟鎹被鍨嬭繘琛屽0鏄庡畾涔 typedef unsigned char u8锛涗负姣忎釜LED鐏鍛藉悕 sbit leda=P0;sbit led1=P0^0;sbit led2=P0^1;sbit led3=P0^2;sbit led4=P0^3;sbit led5=P0^4;sbit led6=P0^5;sbit led7...
  • 鎴戦渶瑕鍗曠墖鏈C51涓涓紑鍏虫帶鍒8涓狶ED鐏鐨勭▼搴 缂栫▼
    绛旓細include<reg51.h>#define uchar unsigned charuchar led[5]={0x7e,0x3c,0x18,0x00,0xff};uchar num;sbit key=P1^0;main(){P0=0xff;num=0;while(1) { if(key==0) { while(key==0); P0=led[num]; num++; num%=5; } }} ...
  • 鍦鍗曠墖鏈鐨凱2鍙f帴8涓狶ED(瑕佹眰P0鍙f帴LED鐨勯槼鏋)銆
    绛旓細//澶畝鍗曚簡 P2^0,P0^0 --- P2^7,P0^7 璇曡瘯 include <reg52.h> void main(){ while(1){ P0=P2;} }
  • 8涓狶ED鐨勯槾鏋佹帴鍗曠墖鏈篜0鍙,闃虫瀬鎺ョ數婧 5V,濡傛灉楂4浣峀ED鐏,浣4浣峀ED浜...
    绛旓細//澶畝鍗曚簡 P2^0,P0^0 --- P2^7,P0^7 璇曡瘯 #include void main() { while(1) { P0=P2; } }
  • 浣跨敤C51鍗曠墖鏈虹紪绋:鏃犱腑鏂椂8涓狶ED鍏ㄤ寒,褰撶浉搴斿閮ㄤ腑鏂0鏃,8涓狶ED渚...
    绛旓細P0=0xFF; // P1鐨8涓狶ED锛岄珮鐢靛钩浜 } void int0_int() interrupt 0 { unsigned char i ,j, tmp=0x01;for(i=3; i>0; i--)for(j=8; j>0; j--){ P0=tmp;delay_ms(500); //500ms闂儊 tmp = _crol_(tmp,1);} } void int1_int() interrupt 2 { unsigned char i...
  • 扩展阅读:嵌入式led流水灯 ... 最简单的led恒流电路图 ... led灯集成电路板图解 ... 51单片机闪烁灯编程 ... led显示屏组装详细教程 ... 嵌入式一个灯闪烁代码 ... 8个流水灯依次点亮 ... 8个灯循环plc编程图 ... 8路抢答器单片机编程 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网