/******************************************************************* * PIC24F_TFT2P2037_TEST_2 * コントローラIC:S6D0151 * * Condition: * 8MHz Internal RC oscillator, 4x PLL (8MHzx4= 32MHz) * Fcy=32MHz/2=16MHz, Tcy=62.5ns * * CPU: PIC24FJ64GA002 * * 2022/8/6: N.Ishii ********************************************************************/ #include #include "S6D0151.h" // Set Configuration Word 1 _CONFIG1 ( JTAGEN_OFF & // JTAG Port: OFF GCP_OFF & // Code Protect: OFF GWRP_OFF & // Write Protect:OFF BKBUG_OFF & // Background Debug: OFF COE_OFF & // Clip On Emulation: OFF ICS_PGx1 & // Select ICD Pin: EMUC/EMUD-> PGC1/PGD1 For Common Use FWDTEN_OFF // WDT: OFF ) // Set Configuration Word 2 _CONFIG2 ( IESO_OFF & // 2 Speed Start Up: OFF FNOSC_FRCPLL & // 8MHz Internal RC oscillator, 4x PLL-> 8MHzx4=32MHz FCKSM_CSDCMD & // Change Clock Control: OFF Clock Monitor: OFF OSCIOFNC_ON & // OSCO/RA3 function: Used RA3 IOL1WAY_OFF & // RP Register Protection: Unlimited Writes To RP Registers I2C1SEL_PRI & // I2C1 pins Select: Use Primary I2C1 pins POSCMOD_NONE // Oscillator Selection: Primary disabled ) //----------------------------------------------------------------------------------- int T0 = 5000; ////---------------------------------------------------------------------------------- void DisplayFunc() { unsigned char i,j,ASCII; ///文字列描画(ASCII 8x8dot文字用)---------------------------------------------------------------------------- lcd_Str_8x8(0,0,"Hellow",BLACK,WHITE); lcd_Str_8x8(1,1,"World !!",RED,WHITE); lcd_Str_8x8(2,2,"Japan",BLUE,WHITE); lcd_Str_8x8(3,3,"Tokyo",WHITE,BLACK); lcd_Str_8x8(4,4,"Chiyodaku",RED,BLACK); lcd_Str_8x8(5,5,"Sotokanda",GREEN,BLACK); lcd_Str_8x8(6,6,"Akihabara",RED,YELLOW); lcd_Str_8x8(7,7,"AKB48",GREEN,YELLOW); delay_ms(5000); // 5秒待ち Clear_LCD(BLACK); // クリア ///-------------------------------------------------------------------------------------------------------- /// ASCII 8x8dot文字(全192文字)の描画--------------------------------------------------------------------- for(j=0; j<16; j++){ for(i=0; i<20; i++){ ASCII = j*20+i+0x20; // スペースコードから開始し、1行20文字で繰返し if (j<3) lcd_Char_8x8(i, j, ASCII, WHITE, BLACK); // 文字表示制御 if ((j>2) && (j<6)) lcd_Char_8x8(i, j, ASCII, GREEN, BLACK); if ((j>5) && (j<9)) lcd_Char_8x8(i, j, ASCII, RED, BLACK); if (j==9) lcd_Char_8x8(i, j, ASCII, YELLOW, BLACK); } } delay_ms(5000); // 5秒待ち Clear_LCD(BLACK); // クリア ///-------------------------------------------------------------------------------------------------------- /// 文字列描画(ASCII 12x12dot文字)----------------------------------------------------------------------- lcd_Str_12x12(0, 0, "12x12dot", WHITE, BLACK); lcd_Str_12x12(0, 1, "ANK Font", WHITE, BLACK); lcd_Str_12x12(0, 2, "Display Test",WHITE, BLACK); lcd_Str_12x12(0, 5, "Nobosan's", GREEN, BLACK); lcd_Str_12x12(0, 6, "デンシコウサクノヘヤ", GREEN, BLACK); lcd_Str_12x12(0, 8, "2022/8/5", YELLOW, BLACK); delay_ms(T0); // 5秒待ち Clear_LCD(BLACK); // クリア ///-------------------------------------------------------------------------------------------------------- /// ASCII 12x12dot文字(全224文字)の描画--------------------------------------------------------------------- /// 1画面目117文字:0x20〜0x94('')? for(j=0; j<3; j++){ // ASCII文字全表示 XChar文字/行 for(i=0; i