久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標(biāo)題:
PIC單片機(jī)開發(fā)板獨(dú)立鍵盤掃描+蜂鳴器響+數(shù)碼管 C程序代碼
[打印本頁]
作者:
51黑芯片
時(shí)間:
2016-1-17 02:30
標(biāo)題:
PIC單片機(jī)開發(fā)板獨(dú)立鍵盤掃描+蜂鳴器響+數(shù)碼管 C程序代碼
PIC單片機(jī)開發(fā)板 C代碼:獨(dú)立鍵盤掃描+蜂鳴器響+數(shù)碼管
自已寫的,并正常運(yùn)行
/*
為自已寫的獨(dú)立鍵盤掃描+蜂鳴器響+數(shù)碼管
犯的錯(cuò):unsigned密寫成了unsigner一直提示找不到a,b
PORTD0=1;不行,要寫成PORTD=0x01;才可以,經(jīng)實(shí)驗(yàn)證得沒有PORTD0沒這個(gè)東西,應(yīng)為RD0=1;
PORTD=0x03;不是第三個(gè)燈亮,而是0000 0011是兩個(gè)燈亮
PORTD=0x8則是0000 1000是第4個(gè)燈亮。。。。。出錯(cuò)因原進(jìn)制轉(zhuǎn)化,剛開始寫程序進(jìn)制轉(zhuǎn)化混掉了。
*/
#include <pic.h>
#define uchar unsigned char
#define uint unsigned int
__CONFIG(0x3B31);
const unsigned char table[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F}; //數(shù)碼管數(shù)組
uchar key_num;
void delay(uint x) //延時(shí)函數(shù)
{
uint a,b;
for(a=x;a>0;a--)
for(b=110;b>0;b--);
}
void scan(); //掃描鍵盤函數(shù) 聲明
void didi(uchar num); //蜂鳴器響 函數(shù) 聲明
void disp(uchar num0,uchar num1,uchar num2,uchar num3,uchar num4,uchar num5,uchar num6,uchar num7); //數(shù)碼管顯示 聲明
//-----------------------------------------------------------------------------------
void init() //初始化函數(shù)
{
TRISA=0x00;
TRISB=0xff;
TRISC=0X00;
TRISD=0x00;
TRISE=0x00;
PORTC=0Xff;
PORTD=0x00;
}
//-------------------主函數(shù)-----------------------------------------------------------
void main()
{
init ();
while(1)
{
scan(); //掃描鍵盤
disp(key_num,2,3,4,5,6,7,8); //后面的直接傳給數(shù)碼管而第一個(gè)是幾,我們要用鍵盤來檢測(cè),則第一個(gè)變量由key_num
}
}
//-------------------------------------------------------------------------------------
void didi(uchar num) //蜂鳴器函數(shù),num響幾聲
{
uchar di_num; //di_num響幾聲
for(di_num=num;di_num>0;di_num--)
{
RE0=1;
delay(100);
RE0=0;
delay(50);
}
}
void scan()
{
if(RB0==0)
{
delay(10);
if(RB0==0)
{
didi(1);
while(!RB0);
// PORTD=0x01; //若寫成RD0=1;也可,不過呢,會(huì)出現(xiàn)燈亮了之后不會(huì)滅掉,還得加清零(滅燈)
key_num=1;
}
}
if(RB1==0)
{
delay(10);
if(RB1==0)
{
didi(2);
while(!RB1);
// PORTD=0x02;
key_num=2;
}
}
if(RB2==0)
{
delay(10);
if(RB2==0)
{
didi(3);
while(!RB2);
// PORTD=0x04;
key_num=3;
}
}
if(RB3==0)
{
delay(10);
if(RB3==0)
{
didi(4);
while(!RB3);
// PORTD=0x08;
key_num=4;
}
}
}
//---------------------------數(shù)碼管顯示函數(shù),數(shù)組------------------------------------------------
void disp(uchar num0,uchar num1,uchar num2,uchar num3,uchar num4,uchar num5,uchar num6,uchar num7)
{
PORTD=table[num0];
PORTA=0x00; //第一個(gè)數(shù)碼管選通
delay(2); //延時(shí),顯示2ms
PORTD=table[num1];
PORTA=0x02; //第二個(gè)數(shù)碼管選通
delay(2); //延時(shí),顯示2ms
PORTD=table[num2];
PORTA=0x04; //第三個(gè)數(shù)碼管選通
delay(2); //延時(shí),顯示2ms
PORTD=table[num3];
PORTA=0x06; //第四個(gè)數(shù)碼管選通
delay(2); //延時(shí),顯示2ms
PORTD=table[num4];
PORTA=0x08; //第五個(gè)數(shù)碼管選通
delay(2); //延時(shí),顯示2ms
PORTD=table[num5];
PORTA=0x0A; //第六個(gè)數(shù)碼管選通
delay(2); //延時(shí),顯示2ms
PORTD=table[num6];
PORTA=0x0c; //第七個(gè)數(shù)碼管選通
delay(2); //延時(shí),顯示2ms
PORTD=table[num7];
PORTA=0x0e; //第八個(gè)數(shù)碼管選通
delay(2); //延時(shí),顯示2ms
}
復(fù)制代碼
歡迎光臨 (http://www.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
奇米四色在线观看
|
精品国产欧美在线
|
亚洲日本一区二区三区四区
|
日韩在线视频一区二区三区
|
91久久久精品国产一区二区蜜臀
|
97精品超碰一区二区三区
|
精品国产乱码久久久久久老虎
|
亚洲+变态+欧美+另类+精品
|
www.亚洲国产精品
|
日韩色在线
|
91视视频在线观看入口直接观看
|
99精品99
|
亚洲天堂一区
|
天天综合干
|
www.av在线
|
亚洲国产成人精品女人
|
国际精品久久
|
欧美久久一区二区三区
|
国产亚洲精品一区二区三区
|
91免费看片
|
亚洲国产一区视频
|
国产一二区视频
|
国产精品夜间视频香蕉
|
婷婷综合色
|
免费高清av
|
精品欧美乱码久久久久久
|
伊人网一区
|
一区二区影院
|
日本一道本
|
国产精品久久久久久久7电影
|
日本欧美国产在线
|
国产精品99一区二区
|
日韩在线资源
|
国产成人精品一区
|
国产成人jvid在线播放
|
亚洲视频免费在线观看
|
大陆一级毛片免费视频观看
|
成人久久
|
久久小视频
|
国产精品一卡二卡三卡
|
超碰超碰
|