完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛|
我正在研究 mpc 5777c 的 LIN 通信。我正在寻找 mpc 5777c 的 LIN 示例代码,但找不到。我可以获得此代码的帮助吗?我想传输和接收多个数据,但它不起作用。这是代码。
#define esci_c #include "..\typedefs_mpc.h" #include "..\proto_mpc.h" void esci_init(void) { LIN_EN = 1; SIU.PCR[LIN_TXD_pin].R = 0x400; // 为主要功能配置焊盘:LIN_TXD SIU.PCR[LIN_RXD_pin].R = 0x400; // 为主要功能配置焊盘:LIN_RXD eSCI_B.CR2.R = 0x2000; // 模块已启用(默认设置) eSCI_B.LCR1.R = 0x0000; // LIN 模块停用 eSCI_B.BRR.B.SBR = 625; eSCI_B.LCR1.B.LIN = 1; // LIN 模块激活 eSCI_B.CR2.B.BRCL = 1; eSCI_B.CR2.B.BESTP = 1; eSCI_B.CR2.B.BSTP = 1; eSCI_B.CR1.B.TE = 1; // 启用发送 eSCI_B.CR1.B.RE = 1; // 启用 Rx //发送中断激活 eSCI_B.CR1.B.RIE = 1; } uint8_t lin_data = 0x2; uint8_t receivedID; //帧传输 void LIN_SendFrame(uint8_t 标头、uint8_t* 数据、uint8_t 长度) { //eSCI_B.LRR.R = 标题; uint8_tj=0;/* 虚拟变量 */ 对于(j=0;j<长度;j++) { 如果(eSCI_B.IFSR2.B.TXRDY == 1) { eSCI_B.IFSR2.R = 0x4000;/* 清除 TXRDY 标志 */ eSCI_B.LTR.R = *(数据+j); /* 发送 8 位数据 */ } } } #define MY_ID 0x15 uint8_t test_lin = 0; // 帧接收 void LIN_ReceiveFrame(uint8_t* 标头,uint8_t* 数据,uint8_t 长度) { uint8_tj=0;/* 虚拟变量 */ 如果(eSCI_B.IFSR2.B.RXRDY == 1) { eSCI_B.IFSR2.B.RXRDY = 0x8000; /* 清除 RXRDY 标志 */ *header = eSCI_B.LRR.R; 如果 (*header == MY_ID) { test_lin = 1; 对于(j=0;j<长度;j++) { eSCI_B.IFSR2.B.RXRDY = 0x8000; /* 清除 RXRDY 标志 */ *(数据 + j) = eSCI_B.LRR.R; /* 读取数据字节*/ } } } } void LIN_IRQHandler(void) { 如果 (eSCI_B.IFSR2.B.OVFL) { eSCI_B.IFSR2.B.OVFL = 0; } 如果 (eSCI_B.IFSR2.B.RXRDY) { uint8_t receivedID = eSCI_B.LRR.R; 如果(receivedID == MY_ID) { uint8_t receivedData = eSCI_B.LRR.R; } eSCI_B.IFSR2.B.RXRDY = 0; } 如果 (eSCI_B.IFSR2.B.TXRDY) { eSCI_B.IFSR2.B.TXRDY = 0; } } uint8_t txHeader = 0x01; uint8_t txData[] = {0x15, 0x22, 0x33,0x44}; LIN_SendFrame(txHeader, txData, 4); LIN_ReceiveFrame(&rxHeader, rxData, 4); |
|
相关推荐
|
|
只有小组成员才能发言,加入小组>>
2135个成员聚集在这个小组
加入小组我的项目我做主,使用GN+Ninja来完成构建系统(VSCode开发RT106X)
37376 浏览 0 评论
NXP IMX8应用处理器快速入门必备:技巧、使用、设计指南
6775 浏览 1 评论
7793 浏览 1 评论
7642 浏览 0 评论
NXP i.MX6UL开发板(linux系统烧录+规格+硬件+模块移植)使用手册
5071 浏览 0 评论
1556浏览 2评论
关于NINA-W132 Wi-Fi模块SPI通信遇到的疑问求解
1208浏览 2评论
如何在MPC PowerPC MCU上首次刷写后禁用BDM?
749浏览 1评论
将HFREFR和LFREFR寄存器值设置为错误的值来将故障注入CMU,但CMU_ISR值始终为零,为什么?
735浏览 1评论
将SPSDK for FRDM-MCX-W71 SDK与VS一起安装时出现hidapi构建错误怎么解决?
678浏览 1评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-2 08:00 , Processed in 0.683258 second(s), Total 72, Slave 55 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
687