NanaCraftのページ
(2011/5/28) MARYにて、ARM初挑戦です。(アプリよりも、)コアネタ好きです。MB-OBをパラレル接続すべく、ピン配列を考え中。
(2011/6/22) MB-OBのOLED、SPIでも十分な速度が出ることがわかった。パラレル接続は不要。
次は、OLEDのAPIを追加する予定。
(2011/6/24) APIを追加して、128ドット分を一括転送することで、1画面分表示が183msec.→43msec.に。
もう少し機能を載せてからコード公開します。
(2011/6/25) OLED関連APIを公開しました。
(2011/7/10) Counter/Timer(CT32B0)を使った、処理時間測定用APIを公開しました。
void NcCT32B0StopwatchInitialize(uint32_t divideBy);
uint32_t NcCT32B0StopwatchStart();
uint32_t NcCT32B0StopwatchStop();
uint32_t NcCT32B0StopwatchReset();
uint32_t NcCT32B0StopwatchRestart();
uint32_t NcCT32B0StopwatchGetValue();
UARTInit(9600);
NcCT32B0StopwatchInitialize(48000000 / 1000000);
NcCT32B0StopwatchStart();
UART_printf("%d\r\n", NcCT32B0StopwatchStop());
void DioInitialize()
{
LPC_GPIO1->DIR &= ~0b000000000111;
LPC_GPIO1->IS = 0b000000000000; // Edge sensitive
LPC_GPIO1->IBE = 0b000000000000; // NOT both edges
LPC_GPIO1->IEV = 0b000000000000; // Falling edges
LPC_GPIO1->IE = 0x000000000001; // Only PIO1_0
}
void PIOINT1_IRQHandler()
{
// Interrupted PIO1_0?
if (LPC_GPIO1->MIS & 0b000000000001)
{
...
LPC_GPIO1->IC = 0b000000000001; // Clear PIO1_0 interrupt.
}
}
int main(void)
{
Init_SysTick();
DioInitialize();
NVIC_SetPriority(EINT1_IRQn, 0);
NVIC_EnableIRQ(EINT1_IRQn);
...
}
プログラム
開発環境のTips
Main Board(MB基板)のTips
Main Board(MB基板)の資料
OLED Board(OB基板)のTips
OLED Board(OB基板)の資料
最終更新:2011年07月23日 22:08