久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
單片機程序幫找錯,沒通過編譯,提示在:Delay()哪里
[打印本頁]
作者:
wsh62
時間:
2017-12-7 15:46
標題:
單片機程序幫找錯,沒通過編譯,提示在:Delay()哪里
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit IR = P2^1;
sbit key1 = P1^1;
sbit key2 = P1^2;
void Delay();
void SendInstructionCode();
void SendCodeZero();
void SendCodeOne();
void UsrCode();
void Key1();
void Key2();
void KeyScan();
void SendKeyCode();
/*******發送引導碼函數**********/
void SendInstructionCode()
{
TH0 = 0xDC; //9000us
TL0 = 0xD8;
TR0 = 1;
IR = 0; //拉低IR
while(!(TF0 == 1)); //等待定時器溢出,即使IR持續低電平9000us
IR = 1;
TF0 = 0;
TR0 = 0;
TH0 = 0xEE; //4500us
TL0 = 0x6c;
TR0 = 1;
while(!(TF0 == 1)); //等待定時器溢出,即使IR持續高電平4500us
IR = 0;
TF0 = 0;
TR0 = 0;
}
/*********發送0函數*********/
void SendCodeZero()
{
TH0 = 0xFD; //560us
TL0 = 0xD0;
TR0 = 1;
IR = 0;
while(!(TF0 == 1));
IR = 1;
TF0 = 0;
TR0 = 0;
TH0 = 0xFD; //560us
TL0 = 0xD0;
TR0 = 1;
while(!(TF0 == 1));
IR = 0;
TF0 = 0;
TR0 = 0;
}
/*********發送1函數*********/
void SendCodeOne()
{
TH0 = 0xFD; //560us
TL0 = 0xD0;
TR0 = 1;
IR = 0;
while(!(TF0 == 1));
IR = 1;
TF0 = 0;
TR0 = 0;
TH0 = 0xF9; //1680us
TL0 = 0x70;
TR0 = 1;
while(!(TF0 == 1));
IR = 0;
TF0 = 0;
TR0 = 0;
}
/*********用戶碼函數*********/
void UsrCode() //發送用戶碼 11111111 00000000
{
uchar i;
for(i=0;i<8;i++)
{
SendCodeOne();
}
for(i=0;i<8;i++)
{
SendCodeZero();
}
}
/*********鍵值1函數********/
void Key1() //0x3d 0011 1101 ~0x3d 1100 0010
{
SendCodeZero();
SendCodeZero();
SendCodeOne();
SendCodeOne();
SendCodeOne();
SendCodeOne();
SendCodeZero();
SendCodeOne();
SendCodeOne();
SendCodeOne();
SendCodeZero();
SendCodeZero();
SendCodeZero();
SendCodeZero();
SendCodeOne();
SendCodeZero();
}
/*********鍵值2函數********/
void Key2() //0xe3 1110 0011 ; ~0xe3 0001 1100
{
SendCodeOne();
SendCodeOne();
SendCodeOne();
SendCodeZero();
SendCodeZero();
SendCodeZero();
SendCodeOne();
SendCodeOne();
SendCodeZero();
SendCodeZero();
SendCodeZero();
SendCodeOne();
SendCodeOne();
SendCodeOne();
SendCodeZero();
SendCodeZero();
}
/*********按鍵掃描函數********/
void KeyScan() //返回值是按下按鍵的按鍵值,沒按下返回100,即不發送
{
uchar key = 100;
uchar keybuf [2]={ 1,1};
static uchar backup[2]= { 1,1};
keybuf [0]= key1;
if(keybuf[0] != backup[0])
{
Delay(100);
if(keybuf[0] == key1)
{
if(backup[0] == 0)
key = 1;
}
}
if(keybuf[1] != backup[1])
{
Delay(100);
if(keybuf[1] == key2)
{
if(backup[1] == 0)
key = 2;
}
}
return key;
}
/*********發送函數********/
void SendKeyCode(uchar key)
{
if(key == 1)
{
SendInstructionCode();
UsrCode();
Key1();
}
if(key == 2)
{
SendInstructionCode();
UsrCode();
Key2();
}
}
void Delay(uint z)
{
uint t1,y;
for(t1=z; t1>0; t1--)
for(y=110; y>0; y--);
}
void main()
{
uchar key;
TMOD = 0x01;
while(1)
{
key = KeyScan();
SendKeyCode(key);
}
}
作者:
wsh62
時間:
2017-12-7 15:59
Build target 'Target 1'
compiling IR_YK01.c...
IR_YK01.C(145): error C267: 'Delay': requires ANSI-style prototype
Target not created
作者:
angmall
時間:
2017-12-7 16:46
試試看
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit IR = P2^1;
sbit key1 = P1^1;
sbit key2 = P1^2;
void Delay(uint z);
void SendInstructionCode();
void SendCodeZero();
void SendCodeOne();
void UsrCode();
void Key1();
void Key2();
uchar KeyScan();
void SendKeyCode(uchar key);
/*******發送引導碼函數**********/
void SendInstructionCode()
{
TH0 = 0xDC; //9000us
TL0 = 0xD8;
TR0 = 1;
IR = 0; //拉低IR
while(!(TF0 == 1)); //等待定時器溢出,即使IR持續低電平9000us
IR = 1;
TF0 = 0;
TR0 = 0;
TH0 = 0xEE; //4500us
TL0 = 0x6c;
TR0 = 1;
while(!(TF0 == 1)); //等待定時器溢出,即使IR持續高電平4500us
IR = 0;
TF0 = 0;
TR0 = 0;
}
/*********發送0函數*********/
void SendCodeZero()
{
TH0 = 0xFD; //560us
TL0 = 0xD0;
TR0 = 1;
IR = 0;
while(!(TF0 == 1));
IR = 1;
TF0 = 0;
TR0 = 0;
TH0 = 0xFD; //560us
TL0 = 0xD0;
TR0 = 1;
while(!(TF0 == 1));
IR = 0;
TF0 = 0;
TR0 = 0;
}
/*********發送1函數*********/
void SendCodeOne()
{
TH0 = 0xFD; //560us
TL0 = 0xD0;
TR0 = 1;
IR = 0;
while(!(TF0 == 1));
IR = 1;
TF0 = 0;
TR0 = 0;
TH0 = 0xF9; //1680us
TL0 = 0x70;
TR0 = 1;
while(!(TF0 == 1));
IR = 0;
TF0 = 0;
TR0 = 0;
}
/*********用戶碼函數*********/
void UsrCode() //發送用戶碼 11111111 00000000
{
uchar i;
for(i=0;i<8;i++)
{
SendCodeOne();
}
for(i=0;i<8;i++)
{
SendCodeZero();
}
}
/*********鍵值1函數********/
void Key1() //0x3d 0011 1101 ~0x3d 1100 0010
{
SendCodeZero();
SendCodeZero();
SendCodeOne();
SendCodeOne();
SendCodeOne();
SendCodeOne();
SendCodeZero();
SendCodeOne();
SendCodeOne();
SendCodeOne();
SendCodeZero();
SendCodeZero();
SendCodeZero();
SendCodeZero();
SendCodeOne();
SendCodeZero();
}
/*********鍵值2函數********/
void Key2() //0xe3 1110 0011 ; ~0xe3 0001 1100
{
SendCodeOne();
SendCodeOne();
SendCodeOne();
SendCodeZero();
SendCodeZero();
SendCodeZero();
SendCodeOne();
SendCodeOne();
SendCodeZero();
SendCodeZero();
SendCodeZero();
SendCodeOne();
SendCodeOne();
SendCodeOne();
SendCodeZero();
SendCodeZero();
}
/*********按鍵掃描函數********/
uchar KeyScan() //返回值是按下按鍵的按鍵值,沒按下返回100,即不發送
{
uchar key = 100;
uchar keybuf [2]={ 1,1};
static uchar backup[2]= { 1,1};
keybuf [0]= key1;
if(keybuf[0] != backup[0])
{
Delay(100);
if(keybuf[0] == key1)
{
if(backup[0] == 0)
key = 1;
}
}
if(keybuf[1] != backup[1])
{
Delay(100);
if(keybuf[1] == key2)
{
if(backup[1] == 0)
key = 2;
}
}
return key;
}
/*********發送函數********/
void SendKeyCode(uchar key)
{
if(key == 1)
{
SendInstructionCode();
UsrCode();
Key1();
}
if(key == 2)
{
SendInstructionCode();
UsrCode();
Key2();
}
}
void Delay(uint z)
{
uint t1,y;
for(t1=z; t1>0; t1--)
for(y=110; y>0; y--);
}
void main()
{
uchar key;
TMOD = 0x01;
while(1)
{
key = KeyScan();
SendKeyCode(key);
}
}
復制代碼
作者:
ainorah
時間:
2017-12-7 17:27
申明的問題,前面的聲明是不帶參的,但是你實際的是帶參的,不是同一個。
作者:
BanBan10032
時間:
2017-12-7 19:11
改下申明
作者:
voner
時間:
2017-12-7 21:25
這個程序有幾個問題 一個是你前面申明delay函數時沒有傳形參 二是你按鍵掃描函數 你定義的是void型 然而你還return key
作者:
wsh62
時間:
2017-12-12 15:55
謝謝
歡迎光臨 (http://www.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
亚洲免费精品
|
久久国产香蕉
|
91精品国产综合久久婷婷香蕉
|
91视频导航
|
日韩精品一区二区三区老鸭窝
|
国产精品视频中文字幕
|
国产精品一区二区在线观看
|
欧美精品一区在线发布
|
国产精品久久久av
|
欧美精品被
|
国产一区二区三区四区在线观看
|
日本aa毛片a级毛片免费观看
|
在线免费观看毛片
|
日本粉嫩一区二区三区视频
|
欧美亚洲视频
|
久久久女女女女999久久
|
欧美日韩在线电影
|
特级毛片爽www免费版
|
国产欧美一区二区在线观看
|
中文字幕国产一区
|
久久久www成人免费精品
|
一区二区三区精品视频
|
日韩在线观看网站
|
综合色播
|
欧美高清视频在线观看
|
国产99视频精品免视看9
|
在线视频亚洲
|
91精品国产综合久久精品图片
|
精品国产一区二区国模嫣然
|
久久亚洲精品国产精品紫薇
|
亚洲精品久久久蜜桃网站
|
中文字幕一区在线观看视频
|
国产人免费人成免费视频
|
国产h在线
|
国产专区视频
|
久久久久免费精品国产小说色大师
|
中文字幕免费中文
|
性国产xxxx乳高跟
|
国产无人区一区二区三区
|
欧美日韩视频在线播放
|
成人av免费在线观看
|