適合新手訓練使用
主程序為兩個發光二極管從兩端向中間流水點亮, 利用單片機和數碼管設計一個顯示系統: 按鍵K1按下時,數碼管進行加1遞增顯示;按鍵K2按下時,數碼管進行減一遞減顯示;其中K1為低優先級,K2為高優先級。
單片機源程序如下:
- #include<reg51.h>
- #define uint unsigned int
- #define uchar unsigned char
- void delay(uint x);
- sbit K1=P3^2;
- sbit K2=P3^3;
- uchar m,n;
- uchar code liushui[]={0x00,0x81,0xc3,0xe7,0xff};
- uchar code text[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
- uchar code table[]={0x6f,0x7f,0x07,0x7d,0x6d,0x66,0x4f,0x5b,0x06,0x3f};
- void main()
- {
- uchar i;
- IE=0x85;
- IP=0x02;
- IT0=1;
- IT1=1;
- while(1)
- {
- for(i=0;i<5;i++)
- {
- P1=liushui[i];
- delay(400);
- }
- }
- }
- void delay(uint z)
- {
- uint x,y;
- for(x=z;x>0;x--)
- for(y=110;y>0;y--);
- }
- void cexter0() interrupt 0
- {
- for(m=8;m>0;m--)
- {
- P2=text[m];
- delay(400);
- }
- }
- void cexter1() interrupt 2
- {
- for(n=0;n>8;n++)
- {
- P2=table[n];
- delay(400);
- }
- }
復制代碼
全部資料51hei下載地址:
單片機外部中斷系統.rar
(519 Bytes, 下載次數: 27)
2019-1-2 12:51 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
|