日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

基于stc15f2k60s2芯片单片机编程(流水灯)

發布時間:2023/12/9 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 基于stc15f2k60s2芯片单片机编程(流水灯) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
藍橋杯stc15f2k60s2芯片編程(流水燈)(1)簡單的流水燈左移之后右移 #include <stc15f2k60s2.h> #include <intrins.h> sbit BUZZ=P0^6; sbit RELAY=P0^4;void delay10ms(unsigned int); void main () {unsigned char n;P2=0XA0;P0=0X00;P2=0X80;P0=0XFF;P0=0xfE; while(1) {for(n=0;n<7;n++){P0=_crol_(P0,1);delay10ms(50); } for(n=0;n<7;n++) { P0=_cror_(P0,1);delay10ms(50); } } }void delay10ms(unsigned int c) { unsigned char a,b;for(;c>0;c--)for(b=38;b>0;b--)for(a=130;a>0;a--); }

(2)較高級流水燈

從兩邊向中間流,然后從中間向兩邊流①

#include <stc15f2k60s2.h> #include <intrins.h>void Delay500ms(); void main(){ unsigned char code abile[]={0x7E,0xBD,0xDB,0xE7,0XE7,0XDB,0XBD,0X7E}; unsigned char l; // LED=0X81; P2=0XA0;P0=0X00;P2=0X80;P0=0XFF; while(1) {for(l=0;l<8;l++){P0=abile[l]; Delay500ms();} } } void Delay500ms() //@11.0592MHz {unsigned char i, j, k;_nop_();_nop_();i = 22;j = 3;k = 227;do{do{while (--k);} while (--j);} while (--i); }

從兩邊向中間流,然后從中間向兩邊流②

#include <stc15f2k60s2.h> #include <intrins.h> unsigned char i; void Delay500ms(); void main() { P2=0XA0;P0=0X00; P2=0X80;P0=0XFF;while(1){for(i=0;i<4;i++) {P0=0xff<<i&0xff>>i;delay500ms();} for(i=4;i>0;i--){P0=0xff<<i&0xff>>i;delay500ms();} } } void Delay500ms() //@11.0592MHz {unsigned char i, j, k;_nop_();_nop_();i = 22;j = 3;k = 227;do{do{while (--k);} while (--j);} while (--i); }

(3)通過獨立按鍵控制流水燈流動速度

#include <stc15f2k60s2.h> #include <intrins.h> void Timer0Init(); unsigned int a,n,i,qq; void Delay1ms(); void anjian(); sbit S7=P3^0; sbit S6=P3^1; sbit S5=P3^2; sbit S4=P3^3;void main() { P2=0XA0;P0=0X00;Timer0Init();while(1){ anjian();qq=0XFE;qq=_crol_(qq,i);P2=0X80;P0=qq;} } void Timer0Init(void) //1??@11.0592MHz {AUXR |= 0x80; //?????1T??TMOD &= 0xF0; //???????TL0 = 0xCD; //??????TH0 = 0xD4; //??????TF0 = 0; //??TF0??TR0 = 1; //???0????EA=1;ET0=1; } void ding() interrupt 1 {a++;if(a==n){a=0;i++;if(i>8)i=0;} } void anjian() { if(S7==0){Delay1ms();if(S7==0){a=0;n=300;}while(!S7);}if(S6==0){ Delay1ms();if(S6==0){a=0;n=600;}while(!S6);} if(S5==0){Delay1ms();if(S5==0){a=0;n=900;}while(!S5);} if(S4==0){Delay1ms();if(S4==0){a=0;n=1200;}while(!S4);} } void Delay1ms() //@11.0592MHz {unsigned char i, j;_nop_();_nop_();_nop_();i = 11;j = 190;do{while (--j);} while (--i); }

總結

以上是生活随笔為你收集整理的基于stc15f2k60s2芯片单片机编程(流水灯)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。