完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
最近想用SerialChart这款软件将mpu6050的角度和角速度波形显示出来,可是不知道下位机如STM32的输出程序格式怎么写,我按一般的Printf("%d,%d",Angle,Angle_dot)这样的格式写的,可是不成功,其它办法也用过了。网上有Andruino的写法,可我不用这款芯片,希望用过写过的人给我指点一下。 |
|
相关推荐
1个回答
|
|
我用得板子是周立功公司LPC1114-301(cortex-m0),没用过stm32,说一下LPC1114的配置过程:1.主程序中初始化串口模块 2.在while中连续发送指定字节的数据
int main(void) { SystemInit(); /* 初始化系统 */ uartInit (); /* 串口初始化 */ while(1) { uartSendStr(GucRcvBuf, GulNum); /* 向串口发送数据 */ myDelay(1); /* 延时 */ } } void uartInit (void) { uint16_t usFdiv; LPC_SYSCON->SYSAHBCLKCTRL |= (1 << 16); /* 使能IOCON时钟 */ LPC_IOCON->PIO1_6 |= 0x01; /* 将P1.6 1.7配置为RXD和TXD */ LPC_IOCON->PIO1_7 |= 0x01; LPC_SYSCON->SYSAHBCLKCTRL |= (1<<12); /* 打开UART功能部件时钟 */ LPC_SYSCON->UARTCLKDIV = 0x01; /* UART时钟分频 */ LPC_UART->LCR = 0x83; /* 允许设置波特率 */ usFdiv = (SystemFrequency/LPC_SYSCON->UARTCLKDIV/16)/UART_BPS; /* 设置波特率115200 */ LPC_UART->DLM = usFdiv / 256; LPC_UART->DLL = usFdiv % 256; LPC_UART->LCR = 0x03; /* 锁定波特率 */ LPC_UART->FCR = 0x87; /* 使能FIFO,设置8个字节触发点 */ NVIC_EnableIRQ(UART_IRQn); /* 使能UART中断,并配置优先级 */ NVIC_SetPriority(UART_IRQn, 1); } void uartSendStr (uint8_t const *pucStr, uint32_t ulNum) { uint32_t i; for (i = 0; i < ulNum; i++){ /* 发送指定个字节数据 */ uartSendByte (*pucStr++); } } void uartSendByte (uint8_t ucDat) { LPC_UART->THR = ucDat; /* 写入数据 */ while ((LPC_UART->LSR & 0x40) == 0); /* 等待数据发送完毕 */ } 所以说,你应该是先找一个stm32串行通信的成功例程,然后自己在那个基础上添加东西,OK!!
最佳答案
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
1276 浏览 1 评论
AD7686芯片不传输数据给STM32,但是手按住就会有数据。
1209 浏览 3 评论
2288 浏览 0 评论
如何解决MPU-9250与STM32通讯时,出现HAL_ERROR = 0x01U
1372 浏览 1 评论
hal库中i2c卡死在HAL_I2C_Master_Transmit
1799 浏览 1 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-29 08:16 , Processed in 0.602288 second(s), Total 75, Slave 57 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号