引用: QWE4562009 发表于 2020-7-6 18:41 恩 为什么第一行数组的值是0X00 接下来都是0X7?而第二行和第三行那些数组的元素是那样的值 ...
这个数组的某一行,猜测是8X8点阵显示的内容,而且为0代表 “灭”,为1代表 “亮”。第一行第一列数为0X00,这是8X8点阵的第一行(或者第一列,与硬件联接有关),即这行全灭。第一行第二列为0X7E,即第一位灭,六位亮,最后一位灭。写成二进制看得比较清楚。最后一行又是全灭。所以第一行显示的是6X6的一个方块。
第二行和第三行,仍然是写成二进制就看清楚了。
QWE4562009 发表于 2020-7-6 18:39 对 我要说的是这个
这句是说 M[j] 这个数组中第一维为 i ,第二维为 j 的那个元素装入P0。
你这个P1=_crol_(P1,1); 得再推敲一下,P1口硬件连接的是扫描输出线,所以移位做切换,P0口输出这没问题
但是按键中断里P1=0x80是做什么的?好像后面也没有完就不知道了。
既然是扫描从哪里开始也都无所谓,所以j=0可以不要
传统51要先输出1然后再读取io,你P0口完全是输出,所以P0=0xff就没有必要。
引用: huo_hu 发表于 2020-7-6 22:20 你这个P1=_crol_(P1,1); 得再推敲一下,P1口硬件连接的是扫描输出线,所以移位做切换,P0口输出这没 ...
crol看懂了,(P1,1)这个没看懂啥玩意 一个IO一个常数在括号里,,,
引用: huo_hu 发表于 2020-7-6 22:33 另外这句j=(j+1)%8;这种写法值得推敲,%8 运算和 &7;是一样的,%8没问题, %3会有个意外,255%3=0 再 ...
一个变量加上1 在对8取余数,这是什么玩意
引用: maychang 发表于 2020-7-6 19:02 QWE4562009 发表于 2020-7-6 18:39 对 我要说的是这个 这句是说 M[j] 这个数组中第一维 ...
P0不是只能是八位吗?一个元素已经为八位了啊
引用: QWE4562009 发表于 2020-7-7 09:29 P0不是只能是八位吗?一个元素已经为八位了啊
没错,就是把8位二进制数据装入P0。
注意:每次定时器中断,P0装入下一个元素,即装入下一个8位二进制数据。装完八次,第九次仍装入第一个数据,周而复始。所以要除以8的余数作为指针,指向下一个装入的数据。
引用: QWE4562009 发表于 2020-7-7 09:22 一个变量加上1 在对8取余数,这是什么玩意
加一再除以8,取余数,余数一定是0、1、2、……7。不可能余8。结果是指针(即该变量 j )恰好指向下一次定时器中断时应该取出的那个元素。
引用: maychang 发表于 2020-7-6 19:02 QWE4562009 发表于 2020-7-6 18:39 对 我要说的是这个 这句是说 M[j] 这个数组中第一维 ...
uchar code M[][8]= -------------------------这一个中括号怎么没有值 而第二个中括号时一个常数8
引用: QWE4562009 发表于 2020-7-7 09:43 uchar code M[][8]= -------------------------这一个中括号怎么没有值 而第二个中括号时一 ...
应该是有值的。
他这里为什么这样写,我不知道。这段程序是否能通过编译,严重怀疑。
引用: maychang 发表于 2020-7-7 09:41 加一再除以8,取余数,余数一定是0、1、2、……7。不可能余8。结果是指针(即该变量 j )恰好 ...
i=(i+1)%3; //i在0,1,2中取值,因为只要3个图形-------------------这个得到的余数----1对3取余数是1,2对3取余数是2,3对3取余数是0,余数就是0 1 2,这三个数作为变量I的值?i在这里代表啥含义
引用: QWE4562009 发表于 2020-7-7 09:53 i=(i+1)%3; //i在0,1,2中取值,因为只要3个图形-------------------这个得到的余数----1对3取余数是1, ...
“余数就是0 1 2,这三个数作为变量I的值?”
是。i 只能取这三个值,而且是轮流取0、1、2、0、1、2、0、1、……循环。
引用: QWE4562009 发表于 2020-7-7 09:53 i=(i+1)%3; //i在0,1,2中取值,因为只要3个图形-------------------这个得到的余数----1对3取余数是1, ...
“i在这里代表啥含义”
i 是个指针。
引用: maychang 发表于 2020-7-7 09:46 应该是有值的。 他这里为什么这样写,我不知道。这段程序是否能通过编译,严重怀疑。
编译没问题 我试过了
引用: maychang 发表于 2020-7-7 10:00 “i在这里代表啥含义” i 是个指针。
这个指针总有个要表达的意思吧
QWE4562009 发表于 2020-7-7 11:40 这个指针总有个要表达的意思吧
“这个指针总有个要表达的意思吧”
这个指针要表达的意思在这个语句里面:
这句的意思,是把M这个数组中第 i 行第 j 列那个数送P0。
本帖最后由 maychang 于 2020-7-7 14:21 编辑引用: maychang 发表于 2020-7-7 14:03 QWE4562009 发表于 2020-7-7 11:40 这个指针总有个要表达的意思吧 “这个指针总有个要表达的意 ...
就是相当于一个X轴和Y轴 就是一个行和列构成的坐标是吗?M在这里是一个变量?这个变量包含了两个数组?一个数组是行i 一个数组是列j?
引用: maychang 发表于 2020-7-7 14:03 QWE4562009 发表于 2020-7-7 11:40 这个指针总有个要表达的意思吧 “这个指针总有个要表达的意 ...
指针不是比较复杂的程序才会用到吗?这个怎么也用上指针了?还有这个M为何要取反再给到P0呢