单片机与pc机通信单片机双机通信以及与pc机的通信
单片机与pc机通信 时间:2021-09-09 阅读:(
)
pc机与单片机通信
串口调试助手只是调试用的,真正用的时候必须要对应的程序才行,看你的要求这个发送的数据量还是满大的。
电脑与单片机通信可以有很多方式,比如串口,并口。
最简单的可以控制并口,可以直接输出好像九路ttl电平,随你控制小车动作,连单片机都省了。
而且实时性高,所有程序都在电脑上,效率高。
串口也是相当简单,直接用串口控件,各种软件都有的。
单片机单用串口中断。
51单片机与pc机通信,谁能发个程序和接线图呀,万分感谢,问题如下:
<p>给你图,芯片是MAX232,其中TXD和RXD接单片机的TXD和RXD。
OUT和IN接232串口,需要一条同相串口线与PC连。
</p> <p>参考程序如下:</p> <p> TMOD?=?0x20; //定时器T1定义为模式2</p> <p> TL1?=?0xFD; TH1?=?0xFD; //设置波特率为9600bps</p> <p> PCON?=?0x00; //SMOD=0</p> <p> SCON?=?0x70; //SM0,SM1=01--选择工作方式1</p> <p> //SM2=1--多机控制位置1</p> <p> //REN=1--禁止接收</p> <p> //TB8=0--此方式无要发送第9位数据</p> <p> //RB8=0--此方式无接收到的第9位数据</p> <p> //TI=0--发送中断标志清0</p> <p> //RI=0--接收中断标志清0</p> <p> TR1?=?1; //启动定时器T1</p> <p>这是初始化程序?晶振11.0592</p> <p></p>如何实现(电脑)PC机与单片机的串行通信
硬件部分有二种情况
1、电脑带有原生串口,就是主板上带有串行口,这个情况就太好办了。
用“串口调试助手”测试一下就可以用VB写程序了。
电脑和单片机用232芯片进行接口转换。
2、电脑没有原生串口,就是主板上没有串行口,这个情况有点麻烦。
要用USB转串口的模块,装好驱动后会在“设备管理器”中出现一个串口,直接当原生串口用就行了,而且经过USB转出来的串口一般都TTL电平的,也就是可以直接接单片机不用232芯片的。
不过这也要看你用的是哪种模块了,具体的要看模块说明书。
最后要注意的是波特率和单片机晶振的选用,不知道你用的是什么型号的单片机。
软件部分,可以用简单的VB编写上位机软件,这方面网上有很多的代码。
单片机部分只要按照普通的串行写程序就行了,测试时可以用“串口调试助手”这款软件,调试好后再写VB程序。
上述是我们做项目和产品的经验,希望对你有所帮助。
单片机双机通信以及与pc机的通信
利用方式1实现单片机双机通信,主频为6M,波特率为2400bps,电路见图5-10。
当两个单片机距离较近时,甲、乙两机的发送端与接收端分别直接相联,两机共地。
执行程序,甲机将亮灯信号发送给乙机,若通信正常,乙机接收到信号后点亮20个发光二极管。
乙机采用查询与中断两种工作方式。
当然20个LED乙机可单独控制,也可接受甲机的控制,并执行甲机指令,还需要进一步完善程序.
甲机发送程序:
org 0000h
sta: mov tmod,#20h ;设置波特率
mov tl1,#0FAh
mov th1,#0FAh
setb tr1
mov scon,#40h ;置工作方式1
clr ti
mov a,#00h
mov sbuf,a ;发送亮灯信号
wait: jbc ti,cont ;发送成功清标志
ajmp wait ;等待发送完毕
cont: sjmp sta ;重复发送
end
乙机查询工作方式接收:
org 0000h
mov tmod,#20h ;设置通信波特率
mov tl1,#0FAh
mov th1,#0FAh
setb tr1
mov scon,#40h
clr ri
setb ren ;允许接收
wait: jbc ri,read ;接收成功清标志
ajmp wait ;接收未完等待
read: mov a ,sbuf
mov p1,a ;接收亮灯信号送P1口
sjmp $
end
乙机中断工作方式接收
org 0000h
ajmp main
org 0023h
ajmp zd ;转串口中断程序
START: MOV TMOD,#20h
mov tl1,#0FAh
mov th1,#0FAh
setb tr1
mov scon,#50h
clr ri
mov ie,#90h ;开中断
MAIN:sjmp $ 主程序
zd: clr ri ;清接收标志
;==============中断程序还要再完善==============
mov a ,sbuf ;读接收信号
mov p1,a
MOV R1,A ;将收到的信号送缓存
reti ;中断返回
end
采用方式2 通信,数据帧格式是11位的,TB8为奇偶校验位,接收过程要求判断RB8,若出错置F0标志为1,正确则置F0标志为0,然后返回。
发送波特率375kbps,晶振为12MHz,所以SMOD=l。
由于传送数据的波特率与定时器无关,所以程序中无需对定时器编程.
send:
MOV SCON,#80H ;设置串行口为方式2
MOV PCON,#80H ;SMOD=l
MOV R0,#50H ;设数据块指针
MOV R7,#20 ;设数据块长度
STA: MOV A,@R0 ;取数据给A
MOV C,P
MOV TB8,C ;奇偶位P送给TB8,
MOV SBUF,A ;启动发送
;====================================================
WAIT: JBC TI,CONT ;若发完一帧数据,清标志后发下一帧数据
AJMP WAIT ;未完等待
;=======================================================
CONT:INC R0 ;修改数据指针
DJNZ R7,STA ;循环发送至结束
RET
;========================================================
;乙机接收程序如下:
; 在进行双机通信时,两机应采用相同的工作方式和波特率。
;=============================================================
MOV SCON,#90H ;设置串行口为方式2,REN为1,允许接收
MOV PCON,#80H ;SMOD=1
MOV R0,#50H ;设置数据块首址
MOV R7,#20 ;置数据块长度
;=========================================================
WAIT:JBC RI,READ ;接收完一帧数据则RI清零并读入数据
AJMP WAIT ;未完等待
;==========================================
READ:MOV A,SBUF ;读入数据
JNB PSW.0,PZ ;收到数为偶数则转
JNB RB8,ERR ;收到数为奇数,发端为偶数则通信出错
SJMP RIGHT ;相符则正确
PZ:JB RB8,ERR ;收到数为偶数,发端为奇数则出错
;========================================
RlGHT:MOV @R0,A ;通信正确,存放数据
INC R0 ;更改地址指针
DJNZ R7,WAIT ;数据块接收完否,未完继续
CLR PSW.5 ;通信正确,置F0为0
RET ;返回
ERROR:SETB PSW.5 ;通信出错,置F0为l
RET ;返回
v5.net一直做独立服务器这块儿的,自从推出云服务器(VPS)以来站长一直还没有关注过,在网友的提醒下弄了个6G内存、2核、100G SSD的美国云服务器来写测评,主机测评给大家趟雷,让你知道v5.net的美国云服务器效果怎么样。本次测评数据仅供参考,有兴趣的还是亲自测试吧! 官方网站:https://v5.net/cloud.html 从显示来看CPU是e5-2660(2.2GHz主频),...
LOCVPS(全球云)发布了新上韩国机房KVM架构主机信息,提供流量和带宽方式,适用全场8折优惠码,优惠码最低2G内存套餐月付仅44元起。这是一家成立较早的国人VPS服务商,目前提供洛杉矶MC、洛杉矶C3、和香港邦联、香港沙田电信、香港大埔、日本东京、日本大阪、新加坡、德国和荷兰等机房VPS主机,基于KVM或者XEN架构。下面分别列出几款韩国机房KVM主机配置信息。韩国KVM流量型套餐:KR-Pl...
#年终感恩活动#华纳云海外物理机688元/月,续费同价,50M CN2 GIA/100M国际大带宽可选,超800G 防御,不限流华纳云成立于2015年,隶属于香港联合通讯国际有限公司。拥有香港政府颁发的商业登记证明,作为APNIC 和 ARIN 会员单位,现有香港、美国等多个地区数据中心资源,百G丰富带宽接入,坚持为海内外用户提供自研顶级硬件防火墙服务,支持T B级超大防护带宽,单IP防护最大可达...
单片机与pc机通信为你推荐
bug代码CF怎么卡BUG,而且不会错误代码,请教高手返回vivo返回键怎么设置项目质量管理项目质量管理的名词解释容灾备份容灾备份的容灾分类swift语言苹果为什么要推出swift语言短信应用默认短信应用,什么意思?t320华为T320怎么样burndownburn down与burn up有何区别暂停线程Java里如何暂停一个线程,达到一定条件后又唤醒线程?海淀区公司注册注册海淀公司需要验资报告吗
深圳域名注册 已备案域名注册 快速域名备案 购买域名和空间 科迈动态域名 淘宝抢红包攻略 inmotionhosting cpanel主机 老左博客 警告本网站 html空间 佛山高防服务器 免费cdn 申请网页 多线空间 江苏双线服务器 starry 广州虚拟主机 免费php空间 重庆服务器 更多