#include<reg52.h> #include<intrins.h> #define uchar unsigned char #define uint unsigned int
#defineuintunsignedintsbitdula=p2^6;sbitwela=p2^7;sbitadwr=p3^6;sbitadrd=p3^7;ucharco...
#define uint unsigned int
sbit dula=p2^6;
sbit wela=p2^7;
sbit adwr=p3^6;
sbit adrd=p3^7;
uchar code table[]={
x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
void delayms(uint xms)
{
uint i,j;
for(i=xms;i>0;i--)
for(j=110;j>0;j--);
}
void display(uchar bai,uchar shi,uchar ge)
{
dula=1;
p0=table[bai];
dula=0;
后面省略了
dula=1;
p0=table[shi];
dula=0;
后面省略了
dula=1;
p0=table[ge];
dula=0;
后面省略了
}
void main()
{
uchar a,A1,A2,A3,adval;
wela=1;
p0=0x7f;
wela=0;
while(1)
{
后面省略了
for(a=110;a>0;a--)
{
display(A1,A2,A3);
}
后面省略了
A1=adval/100;
A2=adval%100/10;
A3=adval%10;
}
}
请问 第一个void display(uchar bai,uchar shi,uchar ge)和 另一 个 display(A1,A2,A3);是什么关系?是不是A1,A2,A3就是第一个的(uchar bai,uchar shi,uchar ge),void display(uchar bai,uchar shi,uchar ge)怎么后面会写成display(A1,A2,A3);这种格式啊?
} 展开
sbit dula=p2^6;
sbit wela=p2^7;
sbit adwr=p3^6;
sbit adrd=p3^7;
uchar code table[]={
x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
void delayms(uint xms)
{
uint i,j;
for(i=xms;i>0;i--)
for(j=110;j>0;j--);
}
void display(uchar bai,uchar shi,uchar ge)
{
dula=1;
p0=table[bai];
dula=0;
后面省略了
dula=1;
p0=table[shi];
dula=0;
后面省略了
dula=1;
p0=table[ge];
dula=0;
后面省略了
}
void main()
{
uchar a,A1,A2,A3,adval;
wela=1;
p0=0x7f;
wela=0;
while(1)
{
后面省略了
for(a=110;a>0;a--)
{
display(A1,A2,A3);
}
后面省略了
A1=adval/100;
A2=adval%100/10;
A3=adval%10;
}
}
请问 第一个void display(uchar bai,uchar shi,uchar ge)和 另一 个 display(A1,A2,A3);是什么关系?是不是A1,A2,A3就是第一个的(uchar bai,uchar shi,uchar ge),void display(uchar bai,uchar shi,uchar ge)怎么后面会写成display(A1,A2,A3);这种格式啊?
} 展开
3个回答
展开全部
#include<reg52.h>是52单片机的头文件;#include<intrins.h>也是头文件,且这个头文件主要是包含了有关51单片机的几条汇编语句的C语言调用接口,是直接编译成对应的汇编语句的。比如_nop_()函数就代表汇编语言中的NOP,在C语言编程时编写精确的短延时时使用_nop_()函数,还有crol ()循环左移函数,写流水灯就可以利用它。#define uint unsigned int 是宏定义,将unsigned int 无符号整型定义为unit。#define uchar unsigned char uchar t也是宏定义将unsigned char 无符号字符型定义为uchar。这样定义便于书写便捷。
(希望能帮上你)
(希望能帮上你)
展开全部
void display(uchar bai,uchar shi,uchar ge)
{
……
}
这个是函数定义(uchar bai,uchar shi,uchar ge)说明函数用的3个参数,也就是形参
display(A1,A2,A3);是函数调用,(A1,A2,A3分别是函数中用到的3个参数,就是实参
程序运行时调用display函数,会把A1的值给bai A2 的值给 shi A3 的值 ge进行运算,多看看C语言书,函数定义那章
{
……
}
这个是函数定义(uchar bai,uchar shi,uchar ge)说明函数用的3个参数,也就是形参
display(A1,A2,A3);是函数调用,(A1,A2,A3分别是函数中用到的3个参数,就是实参
程序运行时调用display函数,会把A1的值给bai A2 的值给 shi A3 的值 ge进行运算,多看看C语言书,函数定义那章
追问
它怎么会把A1的值给bai A2 的值给 shi A3 的值 给ge?它们的变量虽然都是无符号字符型,但一个是bai,一个是A1啊?麻烦能说的更详细一点吗?
追答
给你几个实例你就知道了
延时函数
delay(unsigned char n)
{unsigned char i;for(i=0;i<n;i++);
}
以上是个延时函数
程序调用时
main()
{unsigned char a;a=100;delay(a);
}
等同于
main()
{unsigned char a;a=100;unsigned char i;n=a;for(i=0;i<n;i++);
}
对于你的程序来说
就是bai=A1;shi=A2;ge=A3;
明白了么?
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询