找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 5200|回复: 14
收起左侧

单片机串口控制74HC595的问题

[复制链接]
ID:963748 发表于 2023-2-6 10:54 | 显示全部楼层 |阅读模式
我想通过串口来控制595,发送一个data(0x01)控制一个IO后,再发送一个data(0x02)控制另一个IO,不影响前一个IO的状态,这个data要和前一个data怎么处理来实现单独控制某个IO口
回复

使用道具 举报

ID:752974 发表于 2023-2-6 13:46 | 显示全部楼层
置1:0x01|0x02
清零:0x03&0x20 或 0x03&0x01
回复

使用道具 举报

ID:332444 发表于 2023-2-6 14:23 | 显示全部楼层
在不清零情况下送(0x01)2次,按二进制串的方式控制。
回复

使用道具 举报

ID:963748 发表于 2023-2-6 15:39 | 显示全部楼层
xianfajushi 发表于 2023-2-6 14:23
在不清零情况下送(0x01)2次,按二进制串的方式控制。

不清零情况下发两次0x01,就是第1 IO口发生了高低电平转换嘛,
回复

使用道具 举报

ID:879348 发表于 2023-2-6 15:51 | 显示全部楼层
把前一个值和第二个值|运算一下再发送即可,按你的第一次发0x01,第二次就要0x01|0x02=0x03,再发就要0x03|xx
回复

使用道具 举报

ID:1034262 发表于 2023-2-6 16:02 | 显示全部楼层
程序中用一个字节,8位对应8个输出,每次操作这个字节再刷新595即可。
回复

使用道具 举报

ID:963748 发表于 2023-2-6 16:05 | 显示全部楼层
wufa1986 发表于 2023-2-6 15:51
把前一个值和第二个值|运算一下再发送即可,按你的第一次发0x01,第二次就要0x01|0x02=0x03,再发就要0x03|xx

这个 | 我想的是,那我再发0x01拉低,0x03|0x01不行呀
回复

使用道具 举报

ID:213173 发表于 2023-2-6 17:19 | 显示全部楼层
Zzwh 发表于 2023-2-6 16:05
这个 | 我想的是,那我再发0x01拉低,0x03|0x01不行呀

        Data|=0x01;//最低位写1,其它位不变
        Data|=0x02;//第2位写1,其它位不变
        Data&=0xfe;//最低位写0,其它位不变
回复

使用道具 举报

ID:965189 发表于 2023-2-6 20:47 | 显示全部楼层
第一次输入0x01,低位输出1,第二次想输入0x02,第二位输出1,但又希望第一次的低位1不变,就要0x01|0x02,再输入。或者直接输入0x03.
回复

使用道具 举报

ID:161164 发表于 2023-2-6 21:40 | 显示全部楼层
Honeycam 2023-02-06 21-39-43.gif
回复

使用道具 举报

ID:771630 发表于 2023-2-6 22:59 | 显示全部楼层
创建一个uint8_t储存当前输出值,通过位操作修改这个变量,最后输出给595就可以了
回复

使用道具 举报

ID:332444 发表于 2023-2-7 08:25 | 显示全部楼层
Zzwh 发表于 2023-2-6 15:39
不清零情况下发两次0x01,就是第1 IO口发生了高低电平转换嘛,

是不是不受影响,这要看电路和代码配合.
录像2_转.gif
回复

使用道具 举报

ID:963748 发表于 2023-2-7 08:57 | 显示全部楼层
wulin 发表于 2023-2-6 17:19
Data|=0x01;//最低位写1,其它位不变
        Data|=0x02;//第2位写1,其它位不变
        Data&=0xfe;//最低位写0, ...

好的谢谢
回复

使用道具 举报

ID:963748 发表于 2023-2-7 08:58 | 显示全部楼层
munuc_w 发表于 2023-2-6 13:46
置1:0x01|0x02
清零:0x03&0x20 或 0x03&0x01

好的谢谢
回复

使用道具 举报

ID:963748 发表于 2023-2-7 10:47 | 显示全部楼层
xianfajushi 发表于 2023-2-7 08:25
是不是不受影响,这要看电路和代码配合.

好的我看看
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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