soma 发表于 2024-6-28 22:56:02

_奶咖君_ 发表于 2024-6-28 08:45
你这是啥变量,,,人家要的啥变量,,你把char换成楼主说的sbit试一试?

这个结构体加数据结构

wjy123 发表于 2024-6-29 02:15:12

数组可以不

_奶咖君_ 发表于 2024-6-29 08:44:59

moto_yufo 发表于 2024-6-28 22:01
都把砖搬到你脚下了,还要我砌上去证明是砖吗?

你不证明你的砖能砌上去 谁用啊,,做小白老鼠?

_奶咖君_ 发表于 2024-6-29 08:50:29

soma 发表于 2024-6-28 22:56
这个结构体加数据结构

他的那个问题的关键是,sbit可以作为结构体或者联合体的成员么?我这里成疑问态度,,
如果他只是说说,,如果我的提问者,我并不会去采纳,,而且他这里写的用的是uchar 这种结构体加联合体加位域的方式我也知道能用,,但是把变量的数据类型换成sbit我就要打个问号了。。

小坤 发表于 2024-6-29 14:08:58

我是这样操作的 读按键

moto_yufo 发表于 2024-6-29 14:52:55

小坤 发表于 2024-6-29 14:08
我是这样操作的 读按键

对滴,这不就有人知道{:4_250:}

llyymm 发表于 2024-7-7 09:24:18

知识又进步一点

hyjs 发表于 2024-7-7 10:56:43

C251支持位段吗
{:4_165:}

liuzonggong 发表于 2024-8-6 10:10:50

本帖最后由 liuzonggong 于 2024-8-6 10:12 编辑

bdata unsigned charoperate=0x00;
sbit op_x1=operate^0;
sbit op_x2=operate^1;
sbit op_x3=operate^2;
sbit op_x4=operate^3;
sbit op_y1=operate^4;
sbit op_y2=operate^5;
sbit op_y3=operate^6;
sbit op_y4=operate^7;
sbit aj_x1 = P3^6;    //设置矩阵键盘X1行接P3.6
sbit aj_x2 = P3^7;    //设置矩阵键盘X2行接P3.7
sbit aj_x3 = P1^1;    //设置矩阵键盘X3行接P1.1
sbit aj_x4 = P1^0;    //设置矩阵键盘X4行接P1.0
sbit aj_y1 = P1^4;    //设置矩阵键盘y1行接P1.4
sbit aj_y2 = P1^5;    //设置矩阵键盘y2行接P1.5
sbit aj_y3 = P1^6;    //设置矩阵键盘y3行接P1.6
sbit aj_y4 = P1^7;    //设置矩阵键盘y4行接P1.7

void write_port(void)
{
   aj_x1 = op_x1;
   aj_x2 = op_x2;
   aj_x3 = op_x3;
   aj_x4 = op_x4;
   aj_y1 = op_y1;
   aj_y2 = op_y2;
   aj_y3 = op_y3;
   aj_y4 = op_y4;
}

void read_port(void)
   {
   op_x1 = aj_x1;
   op_x2 = aj_x2;
   op_x3 = aj_x3;
   op_x4 = aj_x4;
   op_y1 = aj_y1;
   op_y2 = aj_y2;
   op_y3 = aj_y3;
   op_y4 = aj_y4 ;   
   }

main()
{
while(1)
{
operate=mychara;
write_port();
a=10;
b=20;
read_port();
a=10;
b=20;
mycharb=operate;
}

}

Lkck8210 发表于 2024-8-6 10:56:55

hyjs 发表于 2024-7-7 10:56
C251支持位段吗

看我13楼的回答
STC32用ebdata{:5_284:}
页: 1 2 [3] 4
查看完整版本: 新手问个技术问题,我怎么把8个bit数据封装成一个字节BYTE。