我是一名Java专家,正在尝试为我拥有的Arduino项目用C ++编写一些东西。我所得到的是一个LED灯矩阵,我正在尝试在上面写字。我为每个字符设置了一个2D数组,现在尝试创建一个函数,该函数将在给定位置在LED板上绘制适当的字符。
例如,我已经定义了
theme.settings.Height
然后,理想情况下,我想有一个函数,它接受单个字符输入以及应将字符放置在灯光阵列中的x,y位置。
但是,我找不到一种方法来选择正确的2D数组。我尝试了if语句,其中
boolean y[8][5]={
{1,0,0,0,1},
{0,1,0,1,0},
{0,1,0,1,0},
{0,0,1,0,0},
{0,0,1,0,0},
{0,0,1,0,0},
{0,0,1,0,0},
{0,0,1,0,0}};
但是当我真正想要使用charMap时,它说它还没有被创建...甚至带有保证其创建的catchall else语句。
关于如何获取功能以根据输入字符识别需要使用哪个2D数组的任何想法?
答案 0 :(得分:-3)
您可以这样做
bool letters[24][8][5];
//24 for 24 letters
然后访问您只需要的每个字母
int letter_index = (int)charIn - 97;
int charMap[8][5] = letters[letter_index];
对于大写字母,您可以这样做
int letter_index = (int)charIn - 65;
int charMap[8][5] = letters[letter_index];
ofc,您必须确定输入是否为字母,否则将使您超出范围。