18video性欧美19sex,欧美高清videosddfsexhd,性少妇videosexfreexxx片中国,激情五月激情综合五月看花,亚洲人成网77777色在线播放

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀(guān)看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

使用恩智浦FRDM-MCXN947開(kāi)發(fā)板移植觸摸屏

安富利 ? 來(lái)源:與非網(wǎng) ? 2025-08-13 17:02 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

前言

恩智浦“FRDM-MCXN947”評(píng)測(cè)活動(dòng)由安富利和與非網(wǎng)協(xié)同舉辦。本篇內(nèi)容由與非網(wǎng)用戶(hù)發(fā)布,已獲轉(zhuǎn)載許可。原文可在與非網(wǎng)(eefocus)工程師社區(qū)查看。

觸摸屏介紹

觸摸屏介紹參見(jiàn):【用戶(hù)測(cè)評(píng)(六):NXP FRDM-MCXN947 FLEXIO_SPI驅(qū)動(dòng)TFT LCD】

它的主要幾個(gè)參數(shù)如下:

b7022818-775b-11f0-a18e-92fbcf53809c.png

01與MCXN947連接關(guān)系

觸摸屏信號(hào)包含通信信號(hào)和復(fù)位信號(hào)。這里4個(gè)管腳全部配置為GPIO,用GPIO模擬IIC。

b7130d9a-775b-11f0-a18e-92fbcf53809c.png

移植觸摸接口

這里選擇GPIO模擬IIC的通信方式,簡(jiǎn)單,易于移植。

參考:【用戶(hù)測(cè)評(píng)(六):NXP FRDM-MCXN947 FLEXIO_SPI驅(qū)動(dòng)TFT LCD】

01管腳配置

使用MCUXpresso Config Tools大大方便管腳配置工作。

b71fe0f6-775b-11f0-a18e-92fbcf53809c.png

b74034a0-775b-11f0-a18e-92fbcf53809c.png

保存配置生成代碼,最終生成兩個(gè)函數(shù)TFT_Touch_Init(),TFT_Touch_Deinit()其中TFT_Touch_Init()函數(shù)定義如下,會(huì)被BOARD_InitBootPins()調(diào)用,無(wú)需我們手動(dòng)調(diào)用。

voidTFT_Touch_Init(void)
{
 /* Enables the clock for GPIO0: Enables clock */
 CLOCK_EnableClock(kCLOCK_Gpio0);
 /* Enables the clock for GPIO4: Enables clock */
 CLOCK_EnableClock(kCLOCK_Gpio4);
 /* Enables the clock for PORT0 controller: Enables clock */
 CLOCK_EnableClock(kCLOCK_Port0);
 /* Enables the clock for PORT4: Enables clock */
 CLOCK_EnableClock(kCLOCK_Port4);
  gpio_pin_config_tCTP_SCL_config= {
    .pinDirection = kGPIO_DigitalOutput,
    .outputLogic =0U
  };
 /* Initialize GPIO functionality on pin PIO0_14 (pin E11) */
  GPIO_PinInit(TFT_TOUCH_INIT_CTP_SCL_GPIO, TFT_TOUCH_INIT_CTP_SCL_PIN, &CTP_SCL_config);
  gpio_pin_config_tCTP_SDA_config= {
    .pinDirection = kGPIO_DigitalOutput,
    .outputLogic =0U
  };
 /* Initialize GPIO functionality on pin PIO0_15 (pin G13) */
  GPIO_PinInit(TFT_TOUCH_INIT_CTP_SDA_GPIO, TFT_TOUCH_INIT_CTP_SDA_PIN, &CTP_SDA_config);
  gpio_pin_config_tCTP_RST_config= {
    .pinDirection = kGPIO_DigitalOutput,
    .outputLogic =0U
  };
 /* Initialize GPIO functionality on pin PIO0_22 (pin B8) */
  GPIO_PinInit(TFT_TOUCH_INIT_CTP_RST_GPIO, TFT_TOUCH_INIT_CTP_RST_PIN, &CTP_RST_config);
  gpio_pin_config_tCTP_INT_config= {
    .pinDirection = kGPIO_DigitalInput,
    .outputLogic =0U
  };
 /* Initialize GPIO functionality on pin PIO4_16 (pin R8) */
  GPIO_PinInit(TFT_TOUCH_INIT_CTP_INT_GPIO, TFT_TOUCH_INIT_CTP_INT_PIN, &CTP_INT_config);
 /* PORT0_14 (pin E11) is configured as PIO0_14 */
  PORT_SetPinMux(TFT_TOUCH_INIT_CTP_SCL_PORT, TFT_TOUCH_INIT_CTP_SCL_PIN, kPORT_MuxAlt0);
  PORT0->PCR[14] = ((PORT0->PCR[14] &
           /* Mask bits to zero which are setting */
           (~(PORT_PCR_IBE_MASK)))
          /* Input Buffer Enable: Enables. */
           |PORT_PCR_IBE(PCR_IBE_ibe1));
 /* PORT0_15 (pin G13) is configured as PIO0_15 */
  PORT_SetPinMux(TFT_TOUCH_INIT_CTP_SDA_PORT, TFT_TOUCH_INIT_CTP_SDA_PIN, kPORT_MuxAlt0);
  PORT0->PCR[15] = ((PORT0->PCR[15] &
           /* Mask bits to zero which are setting */
           (~(PORT_PCR_IBE_MASK)))
          /* Input Buffer Enable: Enables. */
           |PORT_PCR_IBE(PCR_IBE_ibe1));
 /* PORT0_22 (pin B8) is configured as PIO0_22 */
  PORT_SetPinMux(TFT_TOUCH_INIT_CTP_RST_PORT, TFT_TOUCH_INIT_CTP_RST_PIN, kPORT_MuxAlt0);
  PORT0->PCR[22] = ((PORT0->PCR[22] &
           /* Mask bits to zero which are setting */
           (~(PORT_PCR_IBE_MASK)))
          /* Input Buffer Enable: Enables. */
           |PORT_PCR_IBE(PCR_IBE_ibe1));
 /* PORT4_16 (pin R8) is configured as PIO4_16 */
  PORT_SetPinMux(TFT_TOUCH_INIT_CTP_INT_PORT, TFT_TOUCH_INIT_CTP_INT_PIN, kPORT_MuxAlt0);
  PORT4->PCR[16] = ((PORT4->PCR[16] &
           /* Mask bits to zero which are setting */
           (~(PORT_PCR_IBE_MASK)))
          /* Input Buffer Enable: Enables. */
           |PORT_PCR_IBE(PCR_IBE_ibe1));
}

02觸摸接口文件說(shuō)明

此屏幕廠(chǎng)商給的觸摸屏相關(guān)的文件如下:

touch.h是觸摸屏對(duì)外的接口文件,聲明TP_Init()函數(shù)和一個(gè)全局變量extern _m_tp_dev tp_dev表示觸摸狀態(tài)信息;

touch.c是觸摸屏接口實(shí)現(xiàn)文件,實(shí)現(xiàn)TP_init()函數(shù)并初始化全局變量tp_dev;

ctpiic.h是IIC接口的聲明,這里以GPIO模擬IIC,所以需要提供IIC各種基礎(chǔ)信號(hào)的聲明,如發(fā)出起始信號(hào)、停止信號(hào)、發(fā)送一個(gè)字節(jié)、讀取一個(gè)字節(jié)、發(fā)送ACK、接收ACK等基礎(chǔ)信號(hào)的聲明;

ctpiic.c是IIC接口的實(shí)現(xiàn),以GPIO模擬IIC的實(shí)現(xiàn);

ft6336.h是這顆FT6336觸摸IC的驅(qū)動(dòng)文件,包含寄存器定義和寄存器讀寫(xiě)函數(shù)、獲取觸摸狀態(tài)信息的函數(shù)的聲明;

ft6336.c是這顆FT6336觸摸IC驅(qū)動(dòng)的實(shí)現(xiàn)文件,包含寄存器讀寫(xiě)函數(shù)的實(shí)現(xiàn)、掃描觸摸屏獲取狀態(tài)的函數(shù)的實(shí)現(xiàn);

03觸摸接口移植適配

主要適配工作是GPIO模擬IIC功能的實(shí)現(xiàn),即修改ctpiic.c和ctpiic.h文件。

在頭文件中需要提供幾個(gè)宏定義,如下所示,因?yàn)槭荊PIO模擬IIC,所以需要實(shí)現(xiàn)如下的API:

CTP_IIC_Init()初始化IIC兩個(gè)管腳,初始配置為輸出模式,高電平;

CTP_IIC_Start()IIC作為Master發(fā)起起始信號(hào);

CTP_IIC_Stop()IIC作為Master發(fā)起結(jié)束信號(hào);

CTP_IIC_Send_Byte()IIC以GPIO模擬的方式,移位以MSB的方式發(fā)送一個(gè)字節(jié);

CTP_IIC_Read_Byte()IIC切換SDA為輸入方向,讀取一個(gè)字節(jié);

CTP_IIC_Wait_Ack()IIC作為Master等待ACK信號(hào);

CTP_IIC_Ack()IIC發(fā)送一個(gè)ACK信號(hào);

CTP_IIC_Nack()IIC發(fā)送一個(gè)NAK信號(hào);

雖說(shuō)有這么多的接口需要實(shí)現(xiàn),但實(shí)際上我只需要實(shí)現(xiàn)CTP_IIC_Init()初始化SCL/SDA對(duì)應(yīng)的兩個(gè)管腳,然后實(shí)現(xiàn)下面的幾個(gè)宏定義即可,如下代碼所示:

CTP_SDA_IN()切換SDA管腳為輸入方向,每種MCU的驅(qū)動(dòng)調(diào)用不同,這里調(diào)用NXP的API也同時(shí)以寄存器的訪(fǎng)問(wèn)方式相結(jié)合,實(shí)現(xiàn)SDA管腳切換為輸入方式;

CTP_SDA_OUT()切換為SDA管腳為輸出方向,原理同上;

CTP_IIC_SCL(n)實(shí)現(xiàn)SCL管腳輸出高低電平;

CTP_IIC_SDA(n)實(shí)現(xiàn)SDA管腳輸出高低電平;

CTP_READ_SDA實(shí)現(xiàn)讀取SDA管腳輸入電平,這幾個(gè)宏定義直接調(diào)用NXP的庫(kù)函數(shù)即可;

#ifndef__CTPIIC_H
#define__CTPIIC_H


#include
#include"pin_mux.h"
#include"fsl_gpio.h"


//IIC IO方向設(shè)置
#defineCTP_SDA_IN() 
do { 
 GPIO_PortInputEnable(TFT_TOUCH_INIT_CTP_SDA_GPIO, TFT_TOUCH_INIT_CTP_SDA_GPIO_PIN_MASK);
 TFT_TOUCH_INIT_CTP_SDA_GPIO->PDDR&=GPIO_FIT_REG(~(1UL <PDDR|=GPIO_FIT_REG(1UL <

后面的幾個(gè)API都依賴(lài)于上面的宏定義,我們無(wú)需過(guò)多關(guān)心。下面給出其中一個(gè)函數(shù)的實(shí)現(xiàn),可以看出都依賴(lài)于上面的宏定義。

voidCTP_IIC_Send_Byte(uint8_t txd)
{
 uint8_t t;
CTP_SDA_OUT();
CTP_IIC_SCL(0);//拉低時(shí)鐘開(kāi)始數(shù)據(jù)傳輸
for(t =0;t <8;t++)
? {
CTP_IIC_SDA((txd &0x80) >>7);
  txd <<=1;
CTP_IIC_SCL(1);
CTP_Delay();
CTP_IIC_SCL(0);
CTP_Delay();
? }
}

運(yùn)行效果

先運(yùn)行廠(chǎng)商提供的觸摸屏測(cè)試程序,發(fā)現(xiàn)很卡,屏幕刷新很卡,觸摸屏也不靈敏。這個(gè)是由原因的,模組廠(chǎng)商的刷屏函數(shù)是一個(gè)一個(gè)打點(diǎn),沒(méi)有發(fā)揮 FLEXIO_SPI_EDMA的優(yōu)勢(shì),所以刷屏很卡,繼而影響觸摸效果。

關(guān)于安富利

安富利是全球領(lǐng)先的技術(shù)分銷(xiāo)商和解決方案提供商,在過(guò)去一個(gè)多世紀(jì)里一直秉持初心,致力于滿(mǎn)足客戶(hù)不斷變化的需求。通過(guò)遍布全球的專(zhuān)業(yè)化和區(qū)域化業(yè)務(wù)覆蓋,安富利可在產(chǎn)品生命周期的每個(gè)階段為客戶(hù)和供應(yīng)商提供支持。安富利能夠幫助各種類(lèi)型的公司適應(yīng)不斷變化的市場(chǎng)環(huán)境,在產(chǎn)品開(kāi)發(fā)過(guò)程中加快設(shè)計(jì)和供應(yīng)速度。安富利在整個(gè)技術(shù)價(jià)值鏈中處于中心位置,這種獨(dú)特的地位和視角讓其成為了值得信賴(lài)的合作伙伴,能夠幫助客戶(hù)解決復(fù)雜的設(shè)計(jì)和供應(yīng)鏈難題,從而更快地實(shí)現(xiàn)營(yíng)收。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀(guān)點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 恩智浦
    +關(guān)注

    關(guān)注

    14

    文章

    6028

    瀏覽量

    126684
  • 觸摸屏
    +關(guān)注

    關(guān)注

    42

    文章

    2418

    瀏覽量

    120245
  • 移植
    +關(guān)注

    關(guān)注

    1

    文章

    406

    瀏覽量

    29100
  • GPIO
    +關(guān)注

    關(guān)注

    16

    文章

    1301

    瀏覽量

    55384

原文標(biāo)題:用戶(hù)測(cè)評(píng)(九):NXP FRDM-MCXN947 移植觸摸屏

文章出處:【微信號(hào):AvnetAsia,微信公眾號(hào):安富利】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    TFT適配LVGL實(shí)踐分享

    1前言說(shuō)明本章通過(guò)FRDM-MCXN947開(kāi)發(fā)板與正點(diǎn)原子的TFTLCD進(jìn)行實(shí)踐1.2模塊介紹硬件:FRDM-MCXN947開(kāi)發(fā)板:該開(kāi)發(fā)板
    的頭像 發(fā)表于 09-04 08:06 ?2587次閱讀
    TFT適配LVGL實(shí)踐分享

    MCX N23的官方評(píng)估FRDM-MCXN236詳解

    ,想必大家早已有所耳聞,NXP為以前的Kinetis系列以及最新的MCX系列都推出了FRDM板子,比如MCX系列的FRDM-MCXN947, FRDM-MCXA153,今天為大家介紹
    的頭像 發(fā)表于 11-14 09:43 ?2133次閱讀
    <b class='flag-5'>恩</b>智<b class='flag-5'>浦</b>MCX N23的官方評(píng)估<b class='flag-5'>板</b><b class='flag-5'>FRDM-MCXN</b>236詳解

    FRDM-MCXN947開(kāi)發(fā)板部署DeepSeek大語(yǔ)言模型

    還在羨慕那些動(dòng)輒幾十GB顯存的AI大佬?今天,我們用一塊小小的FRDM-MCXN947開(kāi)發(fā)板,就能讓你體驗(yàn)到與大語(yǔ)言模型暢聊的快感!誰(shuí)說(shuō)嵌入式設(shè)備只能閃爍LED?今天我們就要讓它"口吐蓮花"!
    的頭像 發(fā)表于 04-10 17:23 ?3128次閱讀
    在<b class='flag-5'>恩</b>智<b class='flag-5'>浦</b><b class='flag-5'>FRDM-MCXN947</b><b class='flag-5'>開(kāi)發(fā)板</b>部署DeepSeek大語(yǔ)言模型

    使用FRDM-MCXN947開(kāi)發(fā)板LVGL移植觸摸屏

    LVGL接入輸入設(shè)備,可以參考其自帶的示例,即examples/porting/lv_port_indev_template.c文件和對(duì)應(yīng)的頭文件。咱們先把這兩個(gè)文件拷貝出來(lái),放到bsp/lvgl_port/目錄下,并重命名為lv_port_indev.c和lv_port_indev.h。
    的頭像 發(fā)表于 07-17 14:23 ?1259次閱讀
    使用<b class='flag-5'>恩</b>智<b class='flag-5'>浦</b><b class='flag-5'>FRDM-MCXN947</b><b class='flag-5'>開(kāi)發(fā)板</b>LVGL<b class='flag-5'>移植</b><b class='flag-5'>觸摸屏</b>

    FRDM-MCXN947的純Linux命令行環(huán)境搭建

    10000-commandfile /mnt/MyNAS/walker/work/rt-thread/bsp/nxp/mcx/mcxn/frdm-mcxn947/flash.jlink\' 編寫(xiě)flash.jlink燒錄文件
    發(fā)表于 07-28 22:55

    關(guān)于將Flash寫(xiě)入FRDM-MCXN947的問(wèn)題求解

    這次我想問(wèn)一個(gè)關(guān)于使用 MCXN947 將 Flash 寫(xiě)入另一個(gè)的問(wèn)題。 我嘗試使用 FRDM-MCXN947 的寫(xiě)入方法作為參考寫(xiě)入此,但發(fā)生了錯(cuò)誤。 下面是當(dāng)時(shí)控制臺(tái)的內(nèi)容。
    發(fā)表于 03-17 06:29

    FRDM-MCXN947在初始化lpI2C時(shí), I2C無(wú)法正常工作怎么解決?

    我正在使用 FRDM-MCXN947 開(kāi)發(fā)板,發(fā)現(xiàn)在初始化 lpI2C 時(shí), I2C 無(wú)法正常工作。我的配置如圖所示。 我使用的配置基于演示。您能幫我檢查一下問(wèn)題可能是什么嗎?謝謝。
    發(fā)表于 03-25 06:32

    富昌電子推薦兩款的MCX A和MCX N系列微控制器

    富昌電子為您推薦的 MCX A 和 MCX N 系列微控制器開(kāi)發(fā)板 FRDM-MCXA153 和 FRDM-MCXN947,幫助您快速
    的頭像 發(fā)表于 05-09 16:44 ?1933次閱讀

    FRDM-MCXN947開(kāi)發(fā)實(shí)踐指南》上線(xiàn)啦

    RT-Thread率先支持NXPFRDM-MCXN947,并聯(lián)合半導(dǎo)體推出了NXPFRDM-MCXN947開(kāi)發(fā)板評(píng)測(cè)活動(dòng)。測(cè)評(píng)活動(dòng)順利
    的頭像 發(fā)表于 05-13 18:19 ?2858次閱讀
    《<b class='flag-5'>恩</b>智<b class='flag-5'>浦</b><b class='flag-5'>FRDM-MCXN947</b><b class='flag-5'>開(kāi)發(fā)</b>實(shí)踐指南》上線(xiàn)啦

    使用VSCode調(diào)試FRDM MCXN947開(kāi)發(fā)板

    想必關(guān)注MCXN947系列MCU的朋友們已經(jīng)知道板載MCXN947FRDM開(kāi)發(fā)板已經(jīng)正式和大家見(jiàn)面了。
    的頭像 發(fā)表于 05-16 11:16 ?1599次閱讀
    使用VSCode調(diào)試<b class='flag-5'>FRDM</b> <b class='flag-5'>MCXN947</b><b class='flag-5'>開(kāi)發(fā)板</b>

    新品MCX N系列線(xiàn)下培訓(xùn)來(lái)啦!LVGL、AI等超多精彩Demo演示,快來(lái)報(bào)名吧!

    基于FRDM-MCXN947和RT-Thread的動(dòng)手實(shí)踐,率先完成的同學(xué)有福利哦~同時(shí),我們還特別設(shè)置了現(xiàn)場(chǎng)交流環(huán)節(jié),RT-Thread和的資深技術(shù)工程師將
    的頭像 發(fā)表于 05-19 08:36 ?1873次閱讀
    <b class='flag-5'>恩</b>智<b class='flag-5'>浦</b>新品MCX N系列線(xiàn)下培訓(xùn)來(lái)啦!LVGL、AI等超多精彩Demo演示,快來(lái)報(bào)名吧!

    基于Label CIFAR10 image on FRDM-MCXN947例程實(shí)現(xiàn)鞋和帽子的識(shí)別

    前言 ? ? FRDM-MCXN947 ”評(píng)測(cè)活動(dòng)由安富利和與非網(wǎng)協(xié)同舉辦。本篇內(nèi)容由與非網(wǎng)用戶(hù)發(fā)布,已授權(quán)轉(zhuǎn)載許可。原文可在與非網(wǎng)(eefocus)工程師社區(qū)查看。 PART 0 1
    的頭像 發(fā)表于 01-13 09:18 ?976次閱讀
    基于Label CIFAR10 image on <b class='flag-5'>FRDM-MCXN947</b>例程實(shí)現(xiàn)鞋和帽子的識(shí)別

    使用NXP MCX-N板卡搭建環(huán)境及點(diǎn)燈

    FRDM-MCXN947開(kāi)發(fā)板是一個(gè)基于MCXN947器件的低成本設(shè)計(jì)的評(píng)估。MCXN947器件將兩個(gè)Arm Cortex-M33微控制
    的頭像 發(fā)表于 02-12 09:07 ?1375次閱讀
    使用NXP MCX-N板卡搭建環(huán)境及點(diǎn)燈

    推出FRDM i.MX 93開(kāi)發(fā)板

    備受嵌入式開(kāi)發(fā)者青睞的FRDM開(kāi)發(fā)平臺(tái),迎來(lái)了一位新成員——FRDM i.MX 93
    的頭像 發(fā)表于 02-21 14:22 ?2444次閱讀

    FRDM-MCXA156開(kāi)發(fā)實(shí)踐指南》上線(xiàn)啦

    ,完成了電子書(shū)《FRDM-MCXA156開(kāi)發(fā)實(shí)踐指南》,希望能夠給大家提供一些支持?!?b class='flag-5'>恩智
    的頭像 發(fā)表于 04-06 10:51 ?2125次閱讀
    《<b class='flag-5'>恩</b>智<b class='flag-5'>浦</b><b class='flag-5'>FRDM</b>-MCXA156<b class='flag-5'>開(kāi)發(fā)</b>實(shí)踐指南》上線(xiàn)啦