使用MCS-51的串行口进行8位数据、无校验的异步传输。波特率为4800,振荡器频率为11.0592MHz。定时器/计数器T2另有他用,以T1作为波特率发生器。发送使用查询方式,而接收过程用中断处理。写出串行口的初始化程序。
单片机编程题目,望达人奉上答案~
\/\/初始化程序 void InitUART(void){ TMOD = 0x20;SCON = 0x50;TH1 = 0xFA;TL1 = TH1;PCON = 0x00;EA = 1;ES = 1;TR1 = 1;} \/\/发送 SBUF = c;while(!TI);TI = 0;\/\/接收中断程序 void UARTInterrupt(void) interrupt 4 { RI = 0;c=SBUF;} ...
单片机编程题目,望达人奉上答案~
include <reg51.h> sbit SqW=P1^0;void main(void){ TMOD = 0x01;TH0 = 0x0EC;TL0 = 0x78;EA = 1;ET0 = 1;TR0 = 1;while(1);} void Timer0Interrupt(void) interrupt 1 { TH0 = 0x0EC;TL0 = 0x78;SqW=~SqW;} ...
求51单片机进行数据处理时的注意事项,如编程时能进行什么类型的计算,效 ...
数据类型:变量尽量用8位单字节unsigned char型的,或者16位双字节unsigned int。一般足够了。如果只是用真假两种状态,(比如标志位)可以用1位的bit型,才用八分之一个字节。不能像电脑编程那样挥霍内存。浮点数等类型,就算了吧。计算方面:尽量用加减运算,移位运算,与、或、非、运算。以上运算一个...