NXP MCU 技术论坛
直播中

麻酱

8年用户 1238经验值
擅长:MEMS/传感技术
私信 关注
[问答]

MCUxpresso不会为外围设备生成结构变量怎么处理?

您好,我正在使用 nxp mcu mkm33z64a 的配置工具来生成通用外设,例如 PIT、UART 等。

我遇到了一个问题,即 mcuxpresso 不会为以下外围设备(SIM、UART、PIT)生成一些外围配置变量。
例如,mcuxpresso 配置工具不会为波特率创建变量,但初始化标头显示“baudRate_Bps:'115200'”
/**************************************************** ****************************************************** ********************
* RS485UART 初始化代码
************************** ****************************************************** *********************************************/
/* 关闭 clang 格式 * /
/* 以下文本用作工具设置 *************************************
实例:
- 名称:'RS485UART'
- 类型:'uart'
- 模式:'中断'
- custom_name_enabled:'true'
- type_id:'uart_9b45c456566d03f79ecfe90751c10bb4'
- functional_group:'BOARD_InitPeripherals'
- 外设:'UART1'
- config_sets:
- uartConfig_t:
- uartConfig :
- clockSource:'BusInterfaceClock'
- clockSourceFreq:'GetFreq'
- baudRate_Bps:'115200'
- parityMode:'kUART_ParityDisabled'
- dataBitsCount:'kUART_EightDataBits'
- enableMatchAddress1:'false'
- matchAddress1:'0'
- enableMatchAddress2:'false'
- matchAddress2 : '0'
- txFifoWatermark: '0'
- rxFifoWatermark: '1'
- idleType: 'kUART_IdleTypeStartBit'
- enableTx: 'true'
- enableRx: 'true'
- interruptsCfg:
- interrupts: 'kUART_TxDataRegEmptyInterruptEnable kUART_TransmissionCompleteInterruptEnable kUART_RxDataRegFullInterruptInterruptREnable kUART_RxDataRegFullInterruptREEnable kUART_RxDataRegFullInterruptREEnable
- interrupt_vectors:
- enable_rx_tx_irq: 'true'
- interrupt_rx_tx:
- IRQn: 'UART0_UART1_IRQn'
- enable_interrrupt: 'enabled'
- enable_priority: 'false'
- priority: '0'
- enable_custom_name: 'true'
- handler_custom_name: 'RS485UART_RX_TX_IRQHANDLER'
* 小心修改此注释 - 这是 YAML 设置对于工具 **********/
/* clang-format on */
const uart_config_t RS485UART_config = {
,
,
,
,
.parityMode = kUART_ParityDisabled,
, .idleType = kUART_IdleTypeStartBit, .enableTx = true, .enableRx =真};






如您所见,未生成变量。
.baudRate_Bps = 19200,
.txFifoWatermark = 0,
.rxFifoWatermark = 1


另一个为 RTC 模块生成代码的示例,当我使用 mcuxpresso 配置工具创建用于测试目的的默认时间时,生成的代码没有任何时间结构。

/**************************************************** ****************************************************** ********************
* RTC 初始化代码
************************** ****************************************************** *********************************************/
/* 关闭 clang 格式 * /
/* 以下文本用作工具设置 *************************************
实例:
- 名称:'RTC'
- 类型:'irtc'
- 模式:'general'
- custom_name_enabled:'false'
- type_id:'irtc_bbc7c0541dea6ecbc2805a02e8ddd930'
- functional_group:'BOARD_InitPeripherals'
- 外设:'RTC'
- config_sets:
- general:
- clockSource : 'src1'
- clockSourceFreq: 'BOARD_BootClockRUN'
- clockOutSelection: 'kIRTC_ClkoutNo'
- irtc_config:
- irtc_config_t_var: []
- wakeupSelect: 'wakeup'
- timerStdMask: 'ungated'
- alrmMatch: 'kRTC_MatchSecMinHr'
- lock: 'false'
- enableDaylightTime: 'false'
- daylight_time:
- startMonth: '1'
- endMonth: '1'
- startDay: '1'
- endDay: '1'
- startHour: '0'
- endHour: '0'
- daylight_struct_var: []
- tamper_config: []
- irtc_datetime:
- 0:
- uid: '1669725402832'
- struct_id: 'Time0'
- 描述:''
- constantStruct: 'true'
- irtc_datetime_t:
- 年:'1984'
- 月:'1'
- 日:'1'
- week_day:'0'
- 小时:'0'
- 分钟:'0'
- 秒:'0'
- disable_id:'1669719067734'
- setDateTime : '1669719067734'
- setAlarm: '1669719067734'
- interrupt_requests: 'kIRTC_1hzInterruptEnable'
- enable_interrupt: 'true'
- interrupt_vector:
- IRQn: 'RTC_IRQn'
- enable_interrrupt: 'enabled'
- enable_priority: 'false'
- 优先级:'0'
- enable_custom_name: 'false'
* 小心修改此注释 - 它是工具的 YAML 设置 **********/
/* clang-format on */
const irtc_config_t RTC_config = {
,
,
};
const irtc_datetime_t RTC_Time0 = {
,
,
,
,
,
,
};
我正在使用最新版本的 MCUexpresso 配置工具和从 mcu expresso sdk builder 在线工具下载的 Kinetis MCU SDK。我的工具链是为 IAR Embedded Workbench 创建的。
这是一个错误吗?有什么解决方法吗?

更多回帖

发帖
×
20
完善资料,
赚取积分