问个基础的c51单片机编程问题

作者&投稿:壹昌 (若有异议请与网页底部的电邮联系)
呵呵
,你说的TH,TL是8位单片机里16位定时器的高位和低位。。
看来你真的是刚学。。。这东西把例程都走一边就会用了,慢慢来。。
最好的办法是先用万用表测一下单片机的io口是和哪个连的。。就知道。。参照单片机的datasheet手册,查查就知道了。。

~

51单片机C51语言的几个问题。
答:问题3:bit是单片机中的一个关键字,用于声明位变量。它的作用和bool类型相似,都是为了进行两种状态的判断,并且节省存储空间。因此,可以将bit理解为bool的另一种形式。

51单片机的编程问题?
答:1:C51编译器如何区分位地址和字节地址 是靠预定义实现的,比如:sfr P0 = 0x80; sbit P0_0 = 0x80;前者声明了P0端口地址位于0x80,后者说明了P0端口的bit0,即P0.0位于位地址空间0x80处。这2个0x80具有完全不同的含义,靠关键字sfr和sbit来区别。这样当程序被编译时,编译器会依此编译成相应...

51单片机C51语言的几个问题。
答:sbit在问题1中说的很清楚了,就是为某一位起别名,sfr 这个关键字在reg52.h头文件中出现很多 它是单片机开发商把特殊功能寄存器的物理地址映射到一个宏上面,这样的话就可以对寄存器操作了,你自己可以改动,比如reg52.h中的sfr P0 = 0x80;你改为sfr PP=0X80; 那么单片机上的P1口(起名P1口...

C51单片机入门编程问题
答:1、你不要想它怎么关联的,它就是一种固定的写法,语法就这样。你只能这样写,也当你写成这样的时候,编译器会认得出来它代表什么的,写成其它的话,编译就会报错了。所以不要再纠结这个问题。语法这样定的,遵守就行了。2、0xfe不是什么地址,就是个简单的赋值,OutData就是等于0xfe。OutData要是...

c51单片机编程遇到程序解读问题:问题如下图,解读满意者奖金丰厚_百度知 ...
答:一般的51单片机的P0口和P2口共同作为地址总线,而P0口又作为数据总线,想想这样的板子上一般都接了锁存器。上面这句话的意思是在后面的程序中如果遇到clock_segment就当成是XBYTE[0xBFFF],后面的注释说明这个是数码管段码的地址。那么举个例子:数码管(共阴)的段码表是:unsigned char code SMG_DM[10...

单片机C51编程两个问题(里面详细,欢迎高手)
答:12个晶振周期为一个机器周期,在单片机里面的指令都以机器周期来计算的,所以要乘以12,至于那个2^16-计数初值那就是定时器的溢出计算式,也就是从计数初值到溢出所占用的机器周期来计算的!~那个延时的问题,我看有问题。也不知道你用的是多少的晶振。不过大致的计算式是:震荡周期*12*125*500=延时...

新手学c51单片机编程有个疑问?求各位老师给小弟一点指导,谢谢
答:你问的大概是while循环的控制。检验标准:i>1时继续循环,否则循环结束,开始运行后面的语句。控制:i=i-1,循环每执行一次,i-1一次,即使i初始值足够大,也总有i<=1的时候,那时候循环就结束了。问题:变成while(1),你这程序就死在循环里了,永远执行不到打印语句。结果为什么是5050,因为1+2...

单片机编程C51中的一个小问题
答:不包含:那就是0001,0011即0x13 包含:那首先要知道进位标志C是几:如果是1:0001,0011即0x13 如果是0:0001,0010即0x12 取最高位问题:一个8bit的二进制数与上1000,0000(你想任何数&0就是0,&1是原来那个数本身)所以就是取原来那个数的最高位了。呵呵,加油!!!快些入门,前途无量!

c51单片机编程遇到程序解读问题:问题如下图,解读满意者奖金丰厚_百度知 ...
答:这个语句可以看出,程序的作者用的是总线方式来控制数据流。一般的51单片机的P0口和P2口共同作为地址总线,而P0口又作为数据总线,想想这样的板子上一般都接了锁存器。上面这句话的意思是在后面的程序中如果遇到clock_segment就当成是XBYTE[0xBFFF],后面的注释说明这个是数码管段码的地址。那么举个例子...

单片机 C51的一段程序问题
答:include<reg51.h> sbit CKPIN=P0^0; //检测引脚 void main(void){ unsigned char buf;while(1){ buf=P3; //读P3的值到buf中 if(CKPIN)P1=buf&0x0f;//如果P0.0等于1,则P1的低4位置为buf的值,高4位为零 else P1=buf; //如果P0.0等于1,则P1=buf } } //1.P1...