找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3863|回复: 5
收起左侧

通过串口协议控制单片机I/O口怎么实现?

[复制链接]
ID:396689 发表于 2018-11-24 11:35 | 显示全部楼层 |阅读模式
通过串口控制单片机I/O口
如控制单个 8 路 可以 收到的SBUF值赋给P0 口,要 可以所有的 就要

设计一个 协议 如 (指令码 数据码 校验码 结束码) 你这个比较简单,可以用 两个字节
如 (指令码 数据码 ) 00 为 P0 , 01 为 P1 , 02 为 P2 , 03 为 P3 ,
如 发送 01 55 则单片机 收到 01 为 P1 口数据 等第二数据 赋给P1,P1=55






类似这样怎么用程序实现?
回复

使用道具 举报

ID:303383 发表于 2018-11-24 12:38 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

ID:258164 发表于 2018-11-24 12:58 | 显示全部楼层
基本的程序逻辑就是:单片机串口接收指令 例如你上面说的:指令码+数据码 指令码对应你的IO口,数据码对应你要对IO进行什么操作。串口收到数据后把指令码和数据码分别提取出来,再进行相应的操作即可。
回复

使用道具 举报

ID:136633 发表于 2018-11-24 13:36 | 显示全部楼层
这个应该不难吧,但想三言两语描述也不方便。静下心来,多尝试几次,应该比较容易弄出来,程序就是调出来的。
回复

使用道具 举报

ID:326783 发表于 2018-11-24 15:15 | 显示全部楼层
写个串行中断接收程序,接收到数据后校验下数据,如果正确的话,就判断,第一个字节如果是00,就把第二个字节给给P0,如果是01就把第二个字节给P1,以此类推
回复

使用道具 举报

ID:246251 发表于 2018-12-1 10:20 | 显示全部楼层
定义通信协议   头+数据长度+协议号(如果有多条协议)+数据+校验(比如数据异或)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表