mdsk.net
当前位置:首页 >> 51单片机protEus仿真串口通信发数,以9600Bps传输,单片机时钟设成了12M及以上,发出 >>

51单片机protEus仿真串口通信发数,以9600Bps传输,单片机时钟设成了12M及以上,发出

你说的终端是什么?proteus在串口仿真的时候bug很多的.

你觉得有点多是吗?串口速率单位是bps 比特每秒 9600bps就是说每秒可以传输9600位的二进制编码我们来看看现在的CPU每秒运算多少次 以中档产品i5 760为例 他的最大主频是2.8GHz也就是说 只要传输介质足够给力 他每秒可以发送2800000000位二进制编码 这还不算超频再看传输介质 以思科串口线为例 最大支持百兆 也就是可以传输100000000bit每秒所以每秒9600位的传输 我们人类做不到 但是计算机还是很轻松的

#include "reg51.h"#include "intrins.h" typedef unsigned char BYTE; typedef unsigned int WORD;#define FOSC 11059200L #define BAUD 9600 bit busy; void SendData(BYTE dat); void SendString(char *s); void main() { BYTE i; SCON = 0x

因为16位定时器,溢出时,你要重新用程序装入定时器初值.但是,就是这个装入的过程,也是需要机器周期的,因此,16位定时器无法做到精确的定时. 如果想精确的话,就必须用方式2 . 串口通信也是用方式2,对吧? 还有啥不懂的,可以看我名字找到我

这个不可能的把,波特率不对接收不了数据,甚至数据出错的,

1、检查波特率,Proteus的单片机、COM口以及虚拟串口的COM的波特率2、检查单片机的晶振频率,应为11.0592MHz

可以参考:http://blog.163.com/asm_c/blog/static/248203113201311711560166/发送方产生时分秒,并发送.接收方收到数据,进行显示.楼主给出这两部分程序,就可以帮你改一改.

一个单片机按键 另一个单片机显示 供参考 #include // 发送 sbit k0=P1^0; sbit k1=P1^1; sbit k2=P1^2; sbit k3=P1^3; sbit k4=P1^4; sbit k5=P1^5; sbit k6=P1^6; sbit k7=P1^7; sbit k8=P3^3; sbit k9=P3^4; sbit led=P3^5; bit y0,y1,y2,y3,y4,y5,y6,y7,y8,y

相关文档
网站首页 | 网站地图
All rights reserved Powered by www.mdsk.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com