标题:
单片机8*8点阵屏 没有bug但是出现不了理想结果
[打印本页]
作者:
dd小明
时间:
2020-1-11 15:27
标题:
单片机8*8点阵屏 没有bug但是出现不了理想结果
我想用8*8点阵屏写两个字,然后跟着视频自己摸索着写出的代码。整改后,虽然没有错误了但是有两个警告。然后下载后,没有理想的结果。
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
SEGMENT: ?PR?_SEND_BYTE?FUZATUXING
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
SEGMENT: ?CO?FUZATUXING
这是警告的内容,好像是说我有没有引用的变量。但是我总找不出问题,请问有哪位大神能帮我看看嘛???
附上我的代码:
#include <reg52.h>
#include <intrins.h>
sbit R_CLK = P3^6;//串行数据输入口
sbit S_CLK = P3^5;//移位寄存器时钟
sbit DIO = P3^4; //输出锁存器时钟
unsigned char code table[2][8]={
0x0C,0x1E,0x3E,0x7C,0x3E,0x1E,0x0C,0x00,
0x00,0x09,0x29,0x49,0xFD,0x0B,0x09,0x08
};
void Send_Byte(unsigned char dat)
{
unsigned char i;
S_CLK = 0;
R_CLK = 0;
for(i=0; i<8; i++)
{
if(dat & 0x01)
DIO = 1;
else
DIO = 0;
S_CLK = 1;
dat >>= 1;
S_CLK = 0;
}
}
void main()
{
//ROW 0x80, COL 0xfe
unsigned char j,k, ROW;
unsigned int z;
while(1);
{
for(k=0; k<2; k++)
{
for(z=0; z<1000; z++)
{
ROW = 0x80;
for(j=0; j<8; j++)
{
Send_Byte(table[k][j]);
Send_Byte(ROW);
R_CLK = 1;
R_CLK = 0;
ROW = _cror_(ROW,1);
}
}
}
}
}
作者:
man1234567
时间:
2020-1-14 12:56
FUZATUXING,看拼音疑似“复杂图形”,可能是有显示复杂图形用的2个函数。
如果不在本程序里,你可以用 C + V 的方法新建一个工程重新编译。
作者:
haierzaifei11
时间:
2020-1-15 08:34
是不是库文件有问题?查找下库文件,重新编译
作者:
sdxrly
时间:
2020-1-15 09:10
while(1);
后面多了一个分号
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1