1

Cortex M3、Stellaris® LM3S6965 評価ボードを使用しています。動作しているOLED画面にテキストを表示しようとしています。しかし、テキストサイズを大きくする方法がわかりません。

誰もそれを行う方法を知っていますか?

私の現在のコード:

    #include "inc/hw_types.h"
#include "driverlib/debug.h"
#include "driverlib/sysctl.h"
#include "drivers/rit128x96x4.h"


//*****************************************************************************
//
// The error routine that is called if the driver library encounters an error.
//
//*****************************************************************************
#ifdef DEBUG
void
__error__(char *pcFilename, unsigned long ulLine)
{
}
#endif

//*****************************************************************************
//
// Display scrolling text plus graphics on the OLED display.
//
//*****************************************************************************
int
main(void)
{
    unsigned long ulRow, ulCol, ulWidth, ulHeight;
    volatile int iDelay;
    unsigned char *pucRow;
    static char pucHello[] =
    {
        "                      "
        "Current selected timezone: +2 GMT - Brussels"
        "                      "
    };

    //
    // Set the clocking to run directly from the crystal.
    //
    SysCtlClockSet(SYSCTL_SYSDIV_1 | SYSCTL_USE_OSC | SYSCTL_OSC_MAIN |
                   SYSCTL_XTAL_8MHZ);

    //
    // Initialize the OLED display.
    //
    RIT128x96x4Init(1000000);

    // Simple scrolling text display
    //
    ulCol = 0;
    while(1)
    {
        //
        // Display the text.
        //
        RIT128x96x4StringDraw(&pucHello[ulCol++], 8, 8, 11);

        //
        // Delay for a bit.
        //
        for(iDelay = 0; iDelay < 100000; iDelay++)
        {
        }

        //
        // Wrap the index back to the beginning of the string.
        //
        if(ulCol > 53)
        {
            ulCol = 0;
        }
    }
}
4

3 に答える 3

2

StellarisWareの下のgrlib\fontsフォルダにフォントの番号があります。API呼び出しGrContextFontSet()を使用してフォントを変更できます

于 2013-01-03T17:18:28.293 に答える
2

もちろん、できるという保証はありません。

組み込みシステムは通常、フォントの使用に関して自由度があまりありません。動的スケーリングは非常にコストがかかり、多くのフォントは特定のサイズのレンダリング済みバイナリ ビットマップとして処理されます。

ヘッダーで定義されている API を調べる必要がありますrit128x96x4.h。これは、ディスプレイ固有の機能と思われるためです。

現在取得しているフォントの大きさはわかりません。128x96 という小さなディスプレイでは、画面に収まるテキストの量を最大化するために小さなフォントを提供する方が一般的には便利なので、非常に大きなフォントはないと思います。

更新:このランダムな Google ヒットが正確である場合、提供されているグラフィックス API は正確にはリッチではなく、フォントを切り替える方法はないようです。

于 2013-01-03T08:56:55.113 に答える
1

通常、フォントは単なるビットマップの配列です。必要なフォントのビットマップを再定義できます。サイズを大きくしたい場合は、他の定数も変更する必要がある場合があります。これにより、描画ルーチンがレンダリング時に文字の間隔を空ける方法を認識できるようになります。

于 2013-01-03T14:13:24.880 に答える