<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>LPC Microcontrollers中的主题 Re: EA LPC4357 Development Kits and emWin</title>
    <link>https://community.nxp.com/t5/LPC-Microcontrollers/EA-LPC4357-Development-Kits-and-emWin/m-p/552951#M14488</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by gokhannsahin on Tue Jun 30 07:11:06 MST 2015&lt;/STRONG&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; I get a this error ; &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;DIV class="j-rte-table"&gt;&lt;TABLE border="1"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD bgcolor="#cacaca" style="border:1px solid black;background-color:#cacaca;"&gt; &lt;PRE&gt;GUI_Task.c:(.text.GUI_Unlock+0xa): undefined reference to `GUI_X_Unlock'
E:\emWin516_library\LPCXpresso_4\libemWin_516_LPCXpresso423_M4_LE_Redlib.a(GUI_Task.o): In function `GUI_Lock':
GUI_Task.c:(.text.GUI_Lock+0xc): undefined reference to `GUI_X_GetTaskId'
GUI_Task.c:(.text.GUI_Lock+0x14): undefined reference to `GUI_X_Lock'
GUI_Task.c:(.text.GUI_Lock+0x18): undefined reference to `GUI_X_GetTaskId'
GUI_Task.c:(.text.GUI_Lock+0x2e): undefined reference to `GUI_X_GetTaskId'
E:\emWin516_library\LPCXpresso_4\libemWin_516_LPCXpresso423_M4_LE_Redlib.a(GUI_Task.o): In function `GUITASK_Init':
GUI_Task.c:(.text.GUITASK_Init+0x36): undefined reference to `GUI_X_InitOS'
E:\emWin516_library\LPCXpresso_4\libemWin_516_LPCXpresso423_M4_LE_Redlib.a(GUI_Core.o): In function `GUI__Config':
GUI_Core.c:(.text.GUI__Config+0xc): undefined reference to `GUI_X_Config'
GUI_Core.c:(.text.GUI__Config+0x10): undefined reference to `LCD_X_Config'
E:\emWin516_library\LPCXpresso_4\libemWin_516_LPCXpresso423_M4_LE_Redlib.a(GUI_Core.o): In function `GUI_Init':
GUI_Core.c:(.text.GUI_Init+0xe): undefined reference to `GUI_X_Init'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug\liblpc_board_ea_oem_4357.a(board.o): In function `StopWatch_Elapsed':
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_chip_43xx\inc/stopwatch.h:61: undefined reference to `StopWatch_Start'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug\liblpc_board_ea_oem_4357.a(board.o): In function `StopWatch_DelayMs':
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_chip_43xx\inc/stopwatch.h:116: undefined reference to `StopWatch_MsToTicks'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_chip_43xx\inc/stopwatch.h:117: undefined reference to `StopWatch_Start'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug\liblpc_board_ea_oem_4357.a(board.o): In function `StopWatch_DelayUs':
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_chip_43xx\inc/stopwatch.h:128: undefined reference to `StopWatch_UsToTicks'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_chip_43xx\inc/stopwatch.h:129: undefined reference to `StopWatch_Start'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug\liblpc_board_ea_oem_4357.a(board.o): In function `Board_DelayMs':
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/board.c:133: undefined reference to `StopWatch_Init'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug\liblpc_board_ea_oem_4357.a(board.o): In function `Board_DelayUs':
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/board.c:156: undefined reference to `StopWatch_Init'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug\liblpc_board_ea_oem_4357.a(board.o): In function `Board_Debug_Init':
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/board.c:184: undefined reference to `Chip_UART_Init'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/board.c:185: undefined reference to `Chip_UART_SetBaud'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug\liblpc_board_ea_oem_4357.a(board.o): In function `Board_Init':
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/board.c:299: undefined reference to `Chip_GPIO_Init'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug\liblpc_board_ea_oem_4357.a(board.o): In function `Board_I2C_Init':
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/board.c:335: undefined reference to `Chip_I2C_Init'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/board.c:336: undefined reference to `Chip_I2C_SetClockRate'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/board.c:337: undefined reference to `Chip_I2C_EventHandlerPolling'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/board.c:337: undefined reference to `Chip_I2C_EventHandlerPolling'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/board.c:337: undefined reference to `Chip_I2C_SetMasterEventHandler'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug\liblpc_board_ea_oem_4357.a(board.o): In function `Board_LCD_Init':
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/board.c:363: undefined reference to `Chip_RGU_TriggerReset'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/board.c:364: undefined reference to `Chip_RGU_InReset'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug\liblpc_board_ea_oem_4357.a(board_sysinit.o): In function `Board_SetupExtMemory':
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/board_sysinit.c:368: undefined reference to `Chip_EMC_Init'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/board_sysinit.c:370: undefined reference to `Chip_EMC_Dynamic_Init'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/board_sysinit.c:373: undefined reference to `Chip_EMC_Static_Init'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/board_sysinit.c:376: undefined reference to `Chip_EMC_Static_Init'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/board_sysinit.c:379: undefined reference to `Chip_EMC_Static_Init'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug\liblpc_board_ea_oem_4357.a(board_sysinit.o): In function `Board_SetupClocking':
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/board_sysinit.c:393: undefined reference to `Chip_SetupCoreClock'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug\liblpc_board_ea_oem_4357.a(ea_lcd_board.o): In function `I2CWrite':
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/ea_lcd_board.c:145: undefined reference to `Chip_I2CM_XferBlocking'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug\liblpc_board_ea_oem_4357.a(lcdb_eeprom.o): In function `I2CWrite':
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/lcdb_eeprom.c:80: undefined reference to `Chip_I2CM_XferBlocking'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug\liblpc_board_ea_oem_4357.a(lcdb_eeprom.o): In function `I2CRead':
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/lcdb_eeprom.c:98: undefined reference to `Chip_I2CM_XferBlocking'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug\liblpc_board_ea_oem_4357.a(pca9532.o): In function `I2CWrite':
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/pca9532.c:70: undefined reference to `Chip_I2CM_XferBlocking'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug\liblpc_board_ea_oem_4357.a(pca9532.o): In function `I2CRead':
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/pca9532.c:88: undefined reference to `Chip_I2CM_XferBlocking'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug\liblpc_board_ea_oem_4357.a(tsc2046_touch.o): In function `spiTransfer':
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/tsc2046_touch.c:144: undefined reference to `Chip_SSP_WriteFrames_Blocking'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/tsc2046_touch.c:149: undefined reference to `Chip_SSP_ReadFrames_Blocking'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug\liblpc_board_ea_oem_4357.a(tsc2046_touch.o): In function `touch_init':
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/tsc2046_touch.c:336: undefined reference to `Chip_SSP_Init'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/tsc2046_touch.c:337: undefined reference to `Chip_SSP_SetMaster'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/tsc2046_touch.c:338: undefined reference to `Chip_SSP_SetBitRate'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/tsc2046_touch.c:353: undefined reference to `Chip_SSP_WriteFrames_Blocking'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug\liblpc_board_ea_oem_4357.a(tsc2046_touch.o): In function `touch_xyz':
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/tsc2046_touch.c:387: undefined reference to `Chip_SSP_WriteFrames_Blocking'
collect2: ld returned 1 exit status
make: *** [ea_touch_calibration.axf] Error 1&lt;/PRE&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; I have attached my project with board and chip librarys. &lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 15 Jun 2016 18:37:29 GMT</pubDate>
    <dc:creator>lpcware</dc:creator>
    <dc:date>2016-06-15T18:37:29Z</dc:date>
    <item>
      <title>EA LPC4357 Development Kits and emWin</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/EA-LPC4357-Development-Kits-and-emWin/m-p/552950#M14487</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by gokhannsahin on Tue Jun 30 04:53:35 MST 2015&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; Hi everyone,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; I m new Arm programming. I have been trying to make emWin app with LPC4357 Dev.Kits and TFT 7.0 which is Embedded Artists too. But I couldn't . In sample app. which given by Embedded Artist' and in LPC Open 2.10 have no emwin sample app.&amp;nbsp; Do you have this sample app ? &lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 18:37:28 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/EA-LPC4357-Development-Kits-and-emWin/m-p/552950#M14487</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T18:37:28Z</dc:date>
    </item>
    <item>
      <title>Re: EA LPC4357 Development Kits and emWin</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/EA-LPC4357-Development-Kits-and-emWin/m-p/552951#M14488</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by gokhannsahin on Tue Jun 30 07:11:06 MST 2015&lt;/STRONG&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; I get a this error ; &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;DIV class="j-rte-table"&gt;&lt;TABLE border="1"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD bgcolor="#cacaca" style="border:1px solid black;background-color:#cacaca;"&gt; &lt;PRE&gt;GUI_Task.c:(.text.GUI_Unlock+0xa): undefined reference to `GUI_X_Unlock'
E:\emWin516_library\LPCXpresso_4\libemWin_516_LPCXpresso423_M4_LE_Redlib.a(GUI_Task.o): In function `GUI_Lock':
GUI_Task.c:(.text.GUI_Lock+0xc): undefined reference to `GUI_X_GetTaskId'
GUI_Task.c:(.text.GUI_Lock+0x14): undefined reference to `GUI_X_Lock'
GUI_Task.c:(.text.GUI_Lock+0x18): undefined reference to `GUI_X_GetTaskId'
GUI_Task.c:(.text.GUI_Lock+0x2e): undefined reference to `GUI_X_GetTaskId'
E:\emWin516_library\LPCXpresso_4\libemWin_516_LPCXpresso423_M4_LE_Redlib.a(GUI_Task.o): In function `GUITASK_Init':
GUI_Task.c:(.text.GUITASK_Init+0x36): undefined reference to `GUI_X_InitOS'
E:\emWin516_library\LPCXpresso_4\libemWin_516_LPCXpresso423_M4_LE_Redlib.a(GUI_Core.o): In function `GUI__Config':
GUI_Core.c:(.text.GUI__Config+0xc): undefined reference to `GUI_X_Config'
GUI_Core.c:(.text.GUI__Config+0x10): undefined reference to `LCD_X_Config'
E:\emWin516_library\LPCXpresso_4\libemWin_516_LPCXpresso423_M4_LE_Redlib.a(GUI_Core.o): In function `GUI_Init':
GUI_Core.c:(.text.GUI_Init+0xe): undefined reference to `GUI_X_Init'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug\liblpc_board_ea_oem_4357.a(board.o): In function `StopWatch_Elapsed':
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_chip_43xx\inc/stopwatch.h:61: undefined reference to `StopWatch_Start'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug\liblpc_board_ea_oem_4357.a(board.o): In function `StopWatch_DelayMs':
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_chip_43xx\inc/stopwatch.h:116: undefined reference to `StopWatch_MsToTicks'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_chip_43xx\inc/stopwatch.h:117: undefined reference to `StopWatch_Start'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug\liblpc_board_ea_oem_4357.a(board.o): In function `StopWatch_DelayUs':
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_chip_43xx\inc/stopwatch.h:128: undefined reference to `StopWatch_UsToTicks'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_chip_43xx\inc/stopwatch.h:129: undefined reference to `StopWatch_Start'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug\liblpc_board_ea_oem_4357.a(board.o): In function `Board_DelayMs':
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/board.c:133: undefined reference to `StopWatch_Init'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug\liblpc_board_ea_oem_4357.a(board.o): In function `Board_DelayUs':
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/board.c:156: undefined reference to `StopWatch_Init'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug\liblpc_board_ea_oem_4357.a(board.o): In function `Board_Debug_Init':
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/board.c:184: undefined reference to `Chip_UART_Init'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/board.c:185: undefined reference to `Chip_UART_SetBaud'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug\liblpc_board_ea_oem_4357.a(board.o): In function `Board_Init':
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/board.c:299: undefined reference to `Chip_GPIO_Init'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug\liblpc_board_ea_oem_4357.a(board.o): In function `Board_I2C_Init':
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/board.c:335: undefined reference to `Chip_I2C_Init'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/board.c:336: undefined reference to `Chip_I2C_SetClockRate'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/board.c:337: undefined reference to `Chip_I2C_EventHandlerPolling'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/board.c:337: undefined reference to `Chip_I2C_EventHandlerPolling'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/board.c:337: undefined reference to `Chip_I2C_SetMasterEventHandler'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug\liblpc_board_ea_oem_4357.a(board.o): In function `Board_LCD_Init':
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/board.c:363: undefined reference to `Chip_RGU_TriggerReset'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/board.c:364: undefined reference to `Chip_RGU_InReset'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug\liblpc_board_ea_oem_4357.a(board_sysinit.o): In function `Board_SetupExtMemory':
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/board_sysinit.c:368: undefined reference to `Chip_EMC_Init'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/board_sysinit.c:370: undefined reference to `Chip_EMC_Dynamic_Init'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/board_sysinit.c:373: undefined reference to `Chip_EMC_Static_Init'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/board_sysinit.c:376: undefined reference to `Chip_EMC_Static_Init'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/board_sysinit.c:379: undefined reference to `Chip_EMC_Static_Init'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug\liblpc_board_ea_oem_4357.a(board_sysinit.o): In function `Board_SetupClocking':
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/board_sysinit.c:393: undefined reference to `Chip_SetupCoreClock'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug\liblpc_board_ea_oem_4357.a(ea_lcd_board.o): In function `I2CWrite':
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/ea_lcd_board.c:145: undefined reference to `Chip_I2CM_XferBlocking'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug\liblpc_board_ea_oem_4357.a(lcdb_eeprom.o): In function `I2CWrite':
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/lcdb_eeprom.c:80: undefined reference to `Chip_I2CM_XferBlocking'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug\liblpc_board_ea_oem_4357.a(lcdb_eeprom.o): In function `I2CRead':
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/lcdb_eeprom.c:98: undefined reference to `Chip_I2CM_XferBlocking'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug\liblpc_board_ea_oem_4357.a(pca9532.o): In function `I2CWrite':
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/pca9532.c:70: undefined reference to `Chip_I2CM_XferBlocking'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug\liblpc_board_ea_oem_4357.a(pca9532.o): In function `I2CRead':
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/pca9532.c:88: undefined reference to `Chip_I2CM_XferBlocking'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug\liblpc_board_ea_oem_4357.a(tsc2046_touch.o): In function `spiTransfer':
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/tsc2046_touch.c:144: undefined reference to `Chip_SSP_WriteFrames_Blocking'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/tsc2046_touch.c:149: undefined reference to `Chip_SSP_ReadFrames_Blocking'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug\liblpc_board_ea_oem_4357.a(tsc2046_touch.o): In function `touch_init':
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/tsc2046_touch.c:336: undefined reference to `Chip_SSP_Init'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/tsc2046_touch.c:337: undefined reference to `Chip_SSP_SetMaster'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/tsc2046_touch.c:338: undefined reference to `Chip_SSP_SetBitRate'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/tsc2046_touch.c:353: undefined reference to `Chip_SSP_WriteFrames_Blocking'
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug\liblpc_board_ea_oem_4357.a(tsc2046_touch.o): In function `touch_xyz':
C:\Users\gokhan.sahin\Documents\LPCXpresso_6.1.2_177\workspace\lpc_board_ea_oem_4357\Debug/../src/tsc2046_touch.c:387: undefined reference to `Chip_SSP_WriteFrames_Blocking'
collect2: ld returned 1 exit status
make: *** [ea_touch_calibration.axf] Error 1&lt;/PRE&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; I have attached my project with board and chip librarys. &lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 18:37:29 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/EA-LPC4357-Development-Kits-and-emWin/m-p/552951#M14488</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T18:37:29Z</dc:date>
    </item>
    <item>
      <title>Re: EA LPC4357 Development Kits and emWin</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/EA-LPC4357-Development-Kits-and-emWin/m-p/552952#M14489</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by gokhannsahin on Wed Jul 01 07:45:02 MST 2015&lt;/STRONG&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; I have run emwin app. with tft 7.0 , but touch screen is wrong. it needs to calibration. Can I calibrate touch screen on emWin ? Should I change only LCDConf.c?&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; TFT 800x480 7.0 . I have attached LCDConf.c file.&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;TABLE border="1"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD bgcolor="#cacaca"&gt; &lt;PRE&gt;/*********************************************************************
*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SEGGER Microcontroller GmbH &amp;amp; Co. KG&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *
*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Solutions for real time microcontroller applications&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *
**********************************************************************
*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *
*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (c) 1996 - 2012&amp;nbsp; SEGGER Microcontroller GmbH &amp;amp; Co. KG&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *
*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *
&lt;SPAN&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Internet: &lt;A href="www.segger.com&amp;nbsp;&amp;nbsp;&amp;nbsp;" rel="nofollow noopener noreferrer noopener noreferrer" target="test_blank"&gt;www.segger.com&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/A&gt; Support:&amp;nbsp; &lt;/SPAN&gt;&lt;A class="jive-link-email-small" href="mailto:support@segger.com" rel="nofollow noopener noreferrer noopener noreferrer" target="_blank"&gt;support@segger.com&lt;/A&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; *&lt;/SPAN&gt;
*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *
**********************************************************************

** emWin V5.18 - Graphical user interface for embedded applications **
All&amp;nbsp; Intellectual Property rights&amp;nbsp; in the Software belongs to&amp;nbsp; SEGGER.
emWin is protected by&amp;nbsp; international copyright laws.&amp;nbsp; Knowledge of the
source code may not be used to write a similar product.&amp;nbsp; This file may
only be used in accordance with the following terms:

The software has been licensed to&amp;nbsp; NXP Semiconductors USA, Inc.&amp;nbsp; whose
registered&amp;nbsp; office&amp;nbsp; is&amp;nbsp; situated&amp;nbsp; at&amp;nbsp; 1109 McKay Dr, M/S 76, San Jose, 
CA 95131, USA&amp;nbsp; solely for&amp;nbsp; the&amp;nbsp; purposes&amp;nbsp; of&amp;nbsp; creating&amp;nbsp; libraries&amp;nbsp; for 
NXPs M0, M3/M4 and&amp;nbsp; ARM7/9 processor-based&amp;nbsp; devices,&amp;nbsp; sublicensed&amp;nbsp; and
distributed under the terms and conditions of the NXP End User License
Agreement.
Full source code is available at: &lt;A href="https://community.nxp.com/www.segger.com" rel="nofollow noopener noreferrer noopener noreferrer" target="test_blank"&gt;www.segger.com&lt;/A&gt;

We appreciate your understanding and fairness.
----------------------------------------------------------------------
File&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : LCDConf.c
Purpose&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : Display controller configuration (single layer)
---------------------------END-OF-HEADER------------------------------
*/

#include "GUI.h"
#include "GUIDRV_Lin.h"
#include "board.h"

/*********************************************************************
*
*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Layer configuration (to be modified)
*
**********************************************************************
*/
//
// Physical display size
//
#define XSIZE_PHYS&amp;nbsp; (BOARD_LCD.PPL)&amp;nbsp; // 240
#define YSIZE_PHYS&amp;nbsp; (BOARD_LCD.LPP)&amp;nbsp; // 320

//
// Color conversion
//
#define COLOR_CONVERSION GUICC_M565

#define DISPLAY_ORIENTATION&amp;nbsp; (GUI_SWAP_XY | GUI_MIRROR_Y)

//
// Display driver
//
//#define DISPLAY_DRIVER GUIDRV_LIN_32
#if&amp;nbsp;&amp;nbsp; (DISPLAY_ORIENTATION == (GUI_MIRROR_X))
&amp;nbsp; #define DISPLAY_DRIVER GUIDRV_LIN_OX_16
#elif (DISPLAY_ORIENTATION == (GUI_MIRROR_Y))
&amp;nbsp; #define DISPLAY_DRIVER GUIDRV_LIN_OY_16
#elif (DISPLAY_ORIENTATION == (GUI_MIRROR_X | GUI_MIRROR_Y))
&amp;nbsp; #define DISPLAY_DRIVER GUIDRV_LIN_OXY_16
#elif (DISPLAY_ORIENTATION == (GUI_SWAP_XY))
&amp;nbsp; #define DISPLAY_DRIVER GUIDRV_LIN_OS_16
#elif (DISPLAY_ORIENTATION == (GUI_SWAP_XY | GUI_MIRROR_X))
&amp;nbsp; #define DISPLAY_DRIVER GUIDRV_LIN_OSX_16
#elif (DISPLAY_ORIENTATION == (GUI_SWAP_XY | GUI_MIRROR_Y))
&amp;nbsp; #define DISPLAY_DRIVER GUIDRV_LIN_OSY_16
#else
&amp;nbsp; #define DISPLAY_DRIVER GUIDRV_LIN_16
#endif

//
// Touch screen
//
#define USE_TOUCH&amp;nbsp;&amp;nbsp; 1
//
// Touch screen calibration
#define TOUCH_X_MIN&amp;nbsp; (&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0)&amp;nbsp; // 0x00E0
#define TOUCH_X_MAX&amp;nbsp; (XSIZE_PHYS)&amp;nbsp; // 0x0F40
#define TOUCH_Y_MIN&amp;nbsp; (&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0)&amp;nbsp; // 0x00C0
#define TOUCH_Y_MAX&amp;nbsp; (YSIZE_PHYS)&amp;nbsp; // 0x0F60

//
// Buffers / VScreens
//
#define NUM_BUFFERS&amp;nbsp; 1 // Number of multiple buffers to be used
#define NUM_VSCREENS 1 // Number of virtual screens to be used

/*********************************************************************
*
*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Configuration checking
*
**********************************************************************
*/
#ifndef&amp;nbsp;&amp;nbsp; VRAM_ADDR
&amp;nbsp; #define VRAM_ADDR&amp;nbsp; (FRAMEBUFFER_ADDR)&amp;nbsp; // 0x28000000 // TBD by customer: This has to be the frame buffer start address
#endif
#ifndef&amp;nbsp;&amp;nbsp; XSIZE_PHYS
&amp;nbsp; #error Physical X size of display is not defined!
#endif
#ifndef&amp;nbsp;&amp;nbsp; YSIZE_PHYS
&amp;nbsp; #error Physical Y size of display is not defined!
#endif
#ifndef&amp;nbsp;&amp;nbsp; COLOR_CONVERSION
&amp;nbsp; #error Color conversion not defined!
#endif
#ifndef&amp;nbsp;&amp;nbsp; DISPLAY_DRIVER
&amp;nbsp; #error No display driver defined!
#endif
#ifndef&amp;nbsp;&amp;nbsp; NUM_VSCREENS
&amp;nbsp; #define NUM_VSCREENS 1
#else
&amp;nbsp; #if (NUM_VSCREENS &amp;lt;= 0)
&amp;nbsp;&amp;nbsp;&amp;nbsp; #error At least one screeen needs to be defined!
&amp;nbsp; #endif
#endif
#if (NUM_VSCREENS &amp;gt; 1) &amp;amp;&amp;amp; (NUM_BUFFERS &amp;gt; 1)
&amp;nbsp; #error Virtual screens and multiple buffers are not allowed!
#endif

#ifndef&amp;nbsp;&amp;nbsp; DISPLAY_ORIENTATION
&amp;nbsp; #define DISPLAY_ORIENTATION&amp;nbsp; 0
#endif

#if ((DISPLAY_ORIENTATION &amp;amp; GUI_SWAP_XY) != 0)
#define LANDSCAPE&amp;nbsp;&amp;nbsp; 1
#else
#define LANDSCAPE&amp;nbsp;&amp;nbsp; 0
#endif

#if (LANDSCAPE == 1)
#define WIDTH&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; YSIZE_PHYS&amp;nbsp; /* Screen Width (in pixels)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; */
#define HEIGHT&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; XSIZE_PHYS&amp;nbsp; /* Screen Hight (in pixels)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; */
#else
#define WIDTH&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; XSIZE_PHYS&amp;nbsp; /* Screen Width (in pixels)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; */
#define HEIGHT&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; YSIZE_PHYS&amp;nbsp; /* Screen Hight (in pixels)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; */
#endif

#if ((DISPLAY_ORIENTATION &amp;amp; GUI_SWAP_XY) != 0)
&amp;nbsp; #if ((DISPLAY_ORIENTATION &amp;amp; GUI_MIRROR_X) != 0)
&amp;nbsp;&amp;nbsp;&amp;nbsp; #define TOUCH_TOP&amp;nbsp;&amp;nbsp;&amp;nbsp; TOUCH_X_MAX
&amp;nbsp;&amp;nbsp;&amp;nbsp; #define TOUCH_BOTTOM TOUCH_X_MIN
&amp;nbsp; #else
&amp;nbsp;&amp;nbsp;&amp;nbsp; #define TOUCH_TOP&amp;nbsp;&amp;nbsp;&amp;nbsp; TOUCH_X_MIN
&amp;nbsp;&amp;nbsp;&amp;nbsp; #define TOUCH_BOTTOM TOUCH_X_MAX
&amp;nbsp; #endif
&amp;nbsp; #if ((DISPLAY_ORIENTATION &amp;amp; GUI_MIRROR_Y) != 0)
&amp;nbsp;&amp;nbsp;&amp;nbsp; #define TOUCH_LEFT&amp;nbsp;&amp;nbsp; TOUCH_Y_MAX
&amp;nbsp;&amp;nbsp;&amp;nbsp; #define TOUCH_RIGHT&amp;nbsp; TOUCH_Y_MIN
&amp;nbsp; #else
&amp;nbsp;&amp;nbsp;&amp;nbsp; #define TOUCH_LEFT&amp;nbsp;&amp;nbsp; TOUCH_Y_MIN
&amp;nbsp;&amp;nbsp;&amp;nbsp; #define TOUCH_RIGHT&amp;nbsp; TOUCH_Y_MAX
&amp;nbsp; #endif
#else
&amp;nbsp; #if ((DISPLAY_ORIENTATION &amp;amp; GUI_MIRROR_X) != 0)
&amp;nbsp;&amp;nbsp;&amp;nbsp; #define TOUCH_LEFT&amp;nbsp;&amp;nbsp; TOUCH_X_MAX
&amp;nbsp;&amp;nbsp;&amp;nbsp; #define TOUCH_RIGHT&amp;nbsp; TOUCH_X_MIN
&amp;nbsp; #else
&amp;nbsp;&amp;nbsp;&amp;nbsp; #define TOUCH_LEFT&amp;nbsp;&amp;nbsp; TOUCH_X_MIN
&amp;nbsp;&amp;nbsp;&amp;nbsp; #define TOUCH_RIGHT&amp;nbsp; TOUCH_X_MAX
&amp;nbsp; #endif
&amp;nbsp; #if ((DISPLAY_ORIENTATION &amp;amp; GUI_MIRROR_Y) != 0)
&amp;nbsp;&amp;nbsp;&amp;nbsp; #define TOUCH_TOP&amp;nbsp;&amp;nbsp;&amp;nbsp; TOUCH_Y_MAX
&amp;nbsp;&amp;nbsp;&amp;nbsp; #define TOUCH_BOTTOM TOUCH_Y_MIN
&amp;nbsp; #else
&amp;nbsp;&amp;nbsp;&amp;nbsp; #define TOUCH_TOP&amp;nbsp;&amp;nbsp;&amp;nbsp; TOUCH_Y_MIN
&amp;nbsp;&amp;nbsp;&amp;nbsp; #define TOUCH_BOTTOM TOUCH_Y_MAX
&amp;nbsp; #endif
#endif

/*********************************************************************
*
*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Public code
*
**********************************************************************
*/
/*********************************************************************
*
*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LCD_X_Config
*
* Purpose:
*&amp;nbsp;&amp;nbsp; Called during the initialization process in order to set up the
*&amp;nbsp;&amp;nbsp; display driver configuration.
*&amp;nbsp;&amp;nbsp; 
*/
void LCD_X_Config(void) {
&amp;nbsp; //
&amp;nbsp; // At first initialize use of multiple buffers on demand
&amp;nbsp; //
&amp;nbsp; #if (NUM_BUFFERS &amp;gt; 1)
&amp;nbsp;&amp;nbsp;&amp;nbsp; GUI_MULTIBUF_Config(NUM_BUFFERS);
&amp;nbsp; #endif
&amp;nbsp; //
&amp;nbsp; // Set display driver and color conversion for 1st layer
&amp;nbsp; //
&amp;nbsp; GUI_DEVICE_CreateAndLink(DISPLAY_DRIVER, COLOR_CONVERSION, 0, 0);
&amp;nbsp; //
&amp;nbsp; // Display driver configuration, required for Lin-driver
&amp;nbsp; //
&amp;nbsp; if (LCD_GetSwapXY()) {
&amp;nbsp;&amp;nbsp;&amp;nbsp; LCD_SetSizeEx (0, YSIZE_PHYS, XSIZE_PHYS);
&amp;nbsp;&amp;nbsp;&amp;nbsp; LCD_SetVSizeEx(0, YSIZE_PHYS * NUM_VSCREENS, XSIZE_PHYS);
&amp;nbsp; } else {
&amp;nbsp;&amp;nbsp;&amp;nbsp; LCD_SetSizeEx (0, XSIZE_PHYS, YSIZE_PHYS);
&amp;nbsp;&amp;nbsp;&amp;nbsp; LCD_SetVSizeEx(0, XSIZE_PHYS, YSIZE_PHYS * NUM_VSCREENS);
&amp;nbsp; }
&amp;nbsp; LCD_SetVRAMAddrEx(0, (void *)VRAM_ADDR);
 
&amp;nbsp; #if (USE_TOUCH == 1)
&amp;nbsp;&amp;nbsp;&amp;nbsp; //
&amp;nbsp;&amp;nbsp;&amp;nbsp; // Set orientation of touch screen
&amp;nbsp;&amp;nbsp;&amp;nbsp; //
&amp;nbsp;&amp;nbsp;&amp;nbsp; GUI_TOUCH_SetOrientation(DISPLAY_ORIENTATION);
&amp;nbsp;&amp;nbsp;&amp;nbsp; //
&amp;nbsp;&amp;nbsp;&amp;nbsp; // Calibrate touch screen
&amp;nbsp;&amp;nbsp;&amp;nbsp; //
&amp;nbsp;&amp;nbsp;&amp;nbsp; GUI_TOUCH_Calibrate(GUI_COORD_X, 0, WIDTH&amp;nbsp; - 1, TOUCH_LEFT, TOUCH_RIGHT);
&amp;nbsp;&amp;nbsp;&amp;nbsp; GUI_TOUCH_Calibrate(GUI_COORD_Y, 0, HEIGHT - 1, TOUCH_TOP,&amp;nbsp; TOUCH_BOTTOM);
&amp;nbsp; #endif

&amp;nbsp; //
&amp;nbsp; // Set user palette data (only required if no fixed palette is used)
&amp;nbsp; //
&amp;nbsp; #if defined(PALETTE)
&amp;nbsp;&amp;nbsp;&amp;nbsp; LCD_SetLUTEx(0, PALETTE);
&amp;nbsp; #endif
}

/*********************************************************************
*
*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LCD_X_DisplayDriver
*
* Purpose:
*&amp;nbsp;&amp;nbsp; This function is called by the display driver for several purposes.
*&amp;nbsp;&amp;nbsp; To support the according task the routine needs to be adapted to
*&amp;nbsp;&amp;nbsp; the display controller. Please note that the commands marked with
*&amp;nbsp;&amp;nbsp; 'optional' are not cogently required and should only be adapted if 
*&amp;nbsp;&amp;nbsp; the display controller supports these features.
*
* Parameter:
*&amp;nbsp;&amp;nbsp; LayerIndex - Index of layer to be configured
*&amp;nbsp;&amp;nbsp; Cmd&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - Please refer to the details in the switch statement below
*&amp;nbsp;&amp;nbsp; pData&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - Pointer to a LCD_X_DATA structure
*
* Return Value:
*&amp;nbsp;&amp;nbsp; &amp;lt; -1 - Error
*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; -1 - Command not handled
*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0 - Ok
*/
int LCD_X_DisplayDriver(unsigned LayerIndex, unsigned Cmd, void * pData) {
&amp;nbsp; int r;

&amp;nbsp; switch (Cmd) {
&amp;nbsp; case LCD_X_INITCONTROLLER: {
&amp;nbsp;&amp;nbsp;&amp;nbsp; //
&amp;nbsp;&amp;nbsp;&amp;nbsp; // Called during the initialization process in order to set up the
&amp;nbsp;&amp;nbsp;&amp;nbsp; // display controller and put it into operation. If the display
&amp;nbsp;&amp;nbsp;&amp;nbsp; // controller is not initialized by any external routine this needs
&amp;nbsp;&amp;nbsp;&amp;nbsp; // to be adapted by the customer...
&amp;nbsp;&amp;nbsp;&amp;nbsp; //
&amp;nbsp;&amp;nbsp;&amp;nbsp; // ...
&amp;nbsp;&amp;nbsp;&amp;nbsp; return 0;
&amp;nbsp; }
&amp;nbsp; case LCD_X_SETVRAMADDR: {
&amp;nbsp;&amp;nbsp;&amp;nbsp; //
&amp;nbsp;&amp;nbsp;&amp;nbsp; // Required for setting the address of the video RAM for drivers
&amp;nbsp;&amp;nbsp;&amp;nbsp; // with memory mapped video RAM which is passed in the 'pVRAM' element of p
&amp;nbsp;&amp;nbsp;&amp;nbsp; //
&amp;nbsp;&amp;nbsp;&amp;nbsp; //LCD_X_SETVRAMADDR_INFO * p;
&amp;nbsp;&amp;nbsp;&amp;nbsp; //p = (LCD_X_SETVRAMADDR_INFO *)pData;
&amp;nbsp;&amp;nbsp;&amp;nbsp; //...
&amp;nbsp;&amp;nbsp;&amp;nbsp; return 0;
&amp;nbsp; }
&amp;nbsp; case LCD_X_SETORG: {
&amp;nbsp;&amp;nbsp;&amp;nbsp; //
&amp;nbsp;&amp;nbsp;&amp;nbsp; // Required for setting the display origin which is passed in the 'xPos' and 'yPos' element of p
&amp;nbsp;&amp;nbsp;&amp;nbsp; //
&amp;nbsp;&amp;nbsp;&amp;nbsp; //LCD_X_SETORG_INFO * p;
&amp;nbsp;&amp;nbsp;&amp;nbsp; //p = (LCD_X_SETORG_INFO *)pData;
&amp;nbsp;&amp;nbsp;&amp;nbsp; //...
&amp;nbsp;&amp;nbsp;&amp;nbsp; return 0;
&amp;nbsp; }
&amp;nbsp; case LCD_X_SHOWBUFFER: {
&amp;nbsp;&amp;nbsp;&amp;nbsp; //
&amp;nbsp;&amp;nbsp;&amp;nbsp; // Required if multiple buffers are used. The 'Index' element of p contains the buffer index.
&amp;nbsp;&amp;nbsp;&amp;nbsp; //
&amp;nbsp;&amp;nbsp;&amp;nbsp; //LCD_X_SHOWBUFFER_INFO * p;
&amp;nbsp;&amp;nbsp;&amp;nbsp; //p = (LCD_X_SHOWBUFFER_INFO *)pData;
&amp;nbsp;&amp;nbsp;&amp;nbsp; //...
&amp;nbsp;&amp;nbsp;&amp;nbsp; return 0;
&amp;nbsp; }
&amp;nbsp; case LCD_X_SETLUTENTRY: {
&amp;nbsp;&amp;nbsp;&amp;nbsp; //
&amp;nbsp;&amp;nbsp;&amp;nbsp; // Required for setting a lookup table entry which is passed in the 'Pos' and 'Color' element of p
&amp;nbsp;&amp;nbsp;&amp;nbsp; //
&amp;nbsp;&amp;nbsp;&amp;nbsp; //LCD_X_SETLUTENTRY_INFO * p;
&amp;nbsp;&amp;nbsp;&amp;nbsp; //p = (LCD_X_SETLUTENTRY_INFO *)pData;
&amp;nbsp;&amp;nbsp;&amp;nbsp; //...
&amp;nbsp;&amp;nbsp;&amp;nbsp; return 0;
&amp;nbsp; }
&amp;nbsp; case LCD_X_ON: {
&amp;nbsp;&amp;nbsp;&amp;nbsp; //
&amp;nbsp;&amp;nbsp;&amp;nbsp; // Required if the display controller should support switching on and off
&amp;nbsp;&amp;nbsp;&amp;nbsp; //
&amp;nbsp;&amp;nbsp;&amp;nbsp; return 0;
&amp;nbsp; }
&amp;nbsp; case LCD_X_OFF: {
&amp;nbsp;&amp;nbsp;&amp;nbsp; //
&amp;nbsp;&amp;nbsp;&amp;nbsp; // Required if the display controller should support switching on and off
&amp;nbsp;&amp;nbsp;&amp;nbsp; //
&amp;nbsp;&amp;nbsp;&amp;nbsp; // ...
&amp;nbsp;&amp;nbsp;&amp;nbsp; return 0;
&amp;nbsp; }
&amp;nbsp; default:
&amp;nbsp;&amp;nbsp;&amp;nbsp; r = -1;
&amp;nbsp; }
&amp;nbsp; return r;
}

/*********************************************************************
*
*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Global functions for GUI touch
*
********************************************************************/

#if (USE_TOUCH == 1)&amp;nbsp; // Used when touch screen support is enabled

/*********************************************************************
*
*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GUI_TOUCH_X_ActivateX()
*
* Function decription:
*&amp;nbsp;&amp;nbsp; Called from GUI, if touch support is enabled.
*&amp;nbsp;&amp;nbsp; Switches on voltage on X-axis,
*&amp;nbsp;&amp;nbsp; prepares measurement for Y-axis.
*&amp;nbsp;&amp;nbsp; Voltage on Y-axis is switched off.
*/
void GUI_TOUCH_X_ActivateX(void) {
}

/*********************************************************************
*
*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GUI_TOUCH_X_ActivateY()
*
* Function decription:
*&amp;nbsp;&amp;nbsp; Called from GUI, if touch support is enabled.
*&amp;nbsp;&amp;nbsp; Switches on voltage on Y-axis,
*&amp;nbsp;&amp;nbsp; prepares measurement for X-axis.
*&amp;nbsp;&amp;nbsp; Voltage on X-axis is switched off.
*/
void GUI_TOUCH_X_ActivateY(void) {
}

/*********************************************************************
*
*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GUI_TOUCH_X_MeasureX()
*
* Function decription:
*&amp;nbsp;&amp;nbsp; Called from GUI, if touch support is enabled.
*&amp;nbsp;&amp;nbsp; Measures voltage of X-axis.
*/
int&amp;nbsp; GUI_TOUCH_X_MeasureX(void) {
&amp;nbsp; return 0;
}

/*********************************************************************
*
*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GUI_TOUCH_X_MeasureY()
*
* Function decription:
*&amp;nbsp;&amp;nbsp; Called from GUI, if touch support is enabled.
*&amp;nbsp;&amp;nbsp; Measures voltage of Y-axis.
*/
int&amp;nbsp; GUI_TOUCH_X_MeasureY(void) {
&amp;nbsp; return 0;
}

#endif&amp;nbsp; // USE_TOUCH

/*************************** End of file ****************************/
&lt;/PRE&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 02 Nov 2020 13:39:20 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/EA-LPC4357-Development-Kits-and-emWin/m-p/552952#M14489</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2020-11-02T13:39:20Z</dc:date>
    </item>
  </channel>
</rss>

