00问答网
所有问题
当前搜索:
51单片机串口初始化
51单片机
烧不进去程序,但能通过
串口
工具向电脑上发送数据。 但在别人的...
答:
这个驱动程序在不同电脑上表现不同。你可以试验下,先卸载驱动然后重新安装。在下载程序的时候,把波特率都设置成2400,这样成功率最高。只要别人电脑上能下上去,硬件就没有问题,属于软件问题。这个容易解决。
51单片机
波特率如何设置啊
答:
而且12M的晶振在
串口
传输时会有误差,就如你上面算的那样结果会有小数点 TH1又只能是整数的 所以传输时会有误差.参考:include<reg
51
.h> define baudrate 9600UL define fosc 11059200UL//其中,UL是不能省略的,代表长整型。unsigned char a,flag;void serial_init(void){ unsigned char S_MOD=...
请高手帮忙解答,简述
51单片机
P1,P3的主要功能和性能特点
答:
P1口 P1口为8位准双向口,每一位均可单独定义为输入或输出口,当作为输入口时,1写入锁存器,Q(非)=0,T2截止,内上拉电阻将电位拉至"1",此时该口输出为1,当0写入锁存器,Q(非)=1,T2导通,输出则为0。作为输入口时,锁存器置1,Q(非)=0,T2截止,此时该位既可以把外部电路拉成低...
51单片机
定时和
串口
冲突?
答:
T0中断太频繁了,因为同级中断,T0优先,所以总抢占中断,
串口
被边缘话了。修改一下程序:void timer_init(){ TMOD=0x22;SCON=0X50;TH1=0xfd;TL1=0xfd;TR1=1;TH0=246;TL0=246;ET0=1;TR0=1;ES=1;EA=1;PS=1; } void timer0_int() interrupt 1 {time++;if(time<50)//count为占空比...
51单片机
的
串口
通信,每一次是不是只能发送一个字节,比如说12,是分两次...
答:
如果你想发的是 字符 '1' 跟字符 ‘2’(字符串“12”),那么每次只能发一个字符。必须成‘1’跟‘2’分开。如果你想发的是数字‘12’,那么可以直接发‘12’(0x0C)。
串口
一次只能接收8个位(当然可以设置成 9个位),也就是 一次通讯 1Byte 数据。
51单片机
设晶振频率为11.0592Mhz 要求
串口
工作于方式1波特率4800利用...
答:
char c){ SBUF = c;while(!TI);TI = 0;} void main(void){ AUXR = AUXR|0x40; // T1, 1T Mode InitUART();} void UARTInterrupt(void) interrupt 4 { if(RI){ RI = 0;//add your code here!} else TI = 0;} 推荐一个小工具给楼主:
单片机
小精灵,很方便就能得出代码 ...
为什么我
51串口
通信时在串口调试助手里看到的是乱码 求指点 这是我的...
答:
乱码的话,一般情况是波特率不正确导致的。确认你
单片机
的波特率和上位机接收的波特率是一样的。上层软件的波特率设置为9600就应该可以了。
51单片机串口
工作方式0 外接74LS164的问题,TI=0还是TI=1?
答:
你所说的 I/O脚,与TI没有任何关系。TI是发送标志位,是在内部寄存器SCON中的一位。再说:while(TI==0); 这样写就行,不要另加一对大括号,这是循环语句,条件是当TI=0时就循环等待,就是当SBUF,即
串口
正在发送数据时,TI=0,当发送结束了,TI=1,那就结束循环了,向下执行了,再TI=0,...
51单片机
中,用
串口
通信助手向单片机发送数据时,不用16进制的话,发送1...
答:
发送的时候选择16进制发送,否则按字符发送,就是发送ASCII码,1的ASCII码是49,16进制就是31.具体百度一下ASCII
请问怎样让
51单片机串口
0.5秒TXD发送一个数据
答:
首先你的延时函数写错了 第一个for语句for(i=1;1<110;i++) 第二个条件 1<110,这个条件始终是真的,应该改成 i<110,这是个低级的错误,那么如何改成0.5秒呢?? 是这样的,由于你设置的事工作模式2, 8位自动重载,那么也就是说,不用每次人为的给定时器装初值,那么这个...
棣栭〉
<涓婁竴椤
5
6
7
8
10
11
12
9
13
14
涓嬩竴椤
灏鹃〉
其他人还搜