|
求助,這個程序是從百度文庫里的STM32移植過來的,不知為什么編譯出錯誤,unitrecord[y_unit][x] = unitrecord[y_unit][x] | write_table[y_pos];這個語句有什么問題嗎?求助
無標(biāo)題.png (37.69 KB, 下載次數(shù): 106)
下載附件
2017-3-8 14:26 上傳
#include "reg51.h"
#include "intrins.h"
#define uchar unsigned char
#define uint unsigned int
const unsigned char code write_table[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
const unsigned char code clear_table[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
const unsigned char code unitrecord[6][84]={0};
void drew8bits(uchar X,uchar Y,uchar dat) //共84X6個單元 可在指定單元里畫點(diǎn) X 0-83 Y 0-5
{
X=X;
Y=Y;
dat=dat;
}
void makepoint(uchar x ,uchar y ,uchar point )//x 0-83 y 0-47 point為1 該點(diǎn)亮
{
uchar x_pos,y_pos,y_unit;
x_pos = x; // x坐標(biāo) 0-83
y_unit = y/8; //看指定坐標(biāo)在哪個單元 0-5
y_pos = y-(y_unit*8); //在單元中的具體位置 0-7
if(point==1)
{
unitrecord[y_unit][x] = unitrecord[y_unit][x] | write_table[y_pos];
drew8bits(x_pos, y_unit, unitrecord[y_unit][x]);
}
else if(point==0)
{
unitrecord[y_unit][x]= unitrecord[y_unit][x] & clear_table[y_pos];
drew8bits(x_pos, y_unit, unitrecord[y_unit][x]);
}
}
void main()
{
makepoint(2,2,1);
while(1);
}
|
|