原创 成功的调试了一个串口程序

2009-10-16 16:53 3699 2 3 分类: MCU/ 嵌入式

今天调试了一个MDK自带的串口例程,遇到一点小问题:


main.c(94): error:  #136: struct "<unnamed>" has no field "USART_Clock"
main.c(96): error:  #136: struct "<unnamed>" has no field "USART_CPOL"
main.c(98): error:  #136: struct "<unnamed>" has no field "USART_CPHA"
main.c(100): error:  #136: struct "<unnamed>" has no field "USART_LastBit"
编译没通过,到处找问题。由于是软件自带的例程,开始没有怀疑代码本身的问题,以为是库文件不对,折腾了半天也没调出来%……&¥*&


后来在网上看人家说例程也有问题,才静下心来一条一条的语句分析,终于发现问题所在


发现有两个结构定义USART Init Structure definition和USART Clock Init Structure definition
在main.c中的USART初始化时只用了一个结构类USART_InitStructure进行初始化设置。


/* Private variables ---------------------------------------------------------*/
USART_InitTypeDef USART_InitStructure;
USART_ClockInitTypeDef USART_ClockInitStructure;//这句是新加进去的


 


  USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx;
  /*注释掉得是源代码*/
  //USART_InitStructure.USART_Clock = USART_Clock_Disable;
  USART_ClockInitStructure.USART_Clock=USART_Clock_Disable;
  //USART_InitStructure.USART_CPOL = USART_CPOL_Low;
  USART_ClockInitStructure.USART_CPOL=USART_CPOL_Low;               
  //USART_InitStructure.USART_CPHA = USART_CPHA_2Edge;
  USART_ClockInitStructure.USART_CPHA=USART_CPHA_2Edge;
  //USART_InitStructure.USART_LastBit = USART_LastBit_Disable;
  USART_ClockInitStructure.USART_LastBit=USART_LastBit_Disable;

再编译看看


FromELF: creating hex file...
".\output\release.axf" - 0 Error(s), 0 Warning(s).


接上串口看看


CAO QUANYONG
CAO QUANYONG
CAO QUANYONG
CAO QUANYONG
CAO QUANYONG


OK!有数据出来了太高兴了^^


看来写MDK例程的人也没有调试每个程序啊,看来不要过于相信人家的东西啊。。。

PARTNER CONTENT

文章评论1条评论)

登录后参与讨论

用户1338607 2011-12-12 13:41

谢谢了!
相关推荐阅读
用户564291 2009-11-19 10:57
PLC解密
Siemens PPI协议分析    大家好:我是山东临沂的郝金红,PLC解密网是我的个人网站。由于前段时间的疯狂的研究西门子PPI协议解密之故,所以无心插柳的研究出了较实用的西门子S7-200 PP...
用户564291 2009-11-11 15:23
STM32 编码器连接
STM32的每个TIMER都有正交编码器输入接口,TI1,TI2经过输入滤波,边沿检测产生TI1FP1,TI2FP2接到编码器模块,通过配置编码器的工作模式,即可以对编码器进行正向/反向计数。    ...
用户564291 2009-10-21 16:55
STM32 LCD12864驱动
/****************************************************************【文 件 名 称】lcd12864.h【功 能 描 述】lcd1286...
用户564291 2009-10-17 22:36
DMA控制器
[STM32学习笔记DMA控制器使用 - [ARM]版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明http://tigerwang202.blogbus.com/logs/36242...
用户564291 2009-10-16 15:33
我的第一篇日志-ARM学习
                                                       sizeof用法分析1. 定义:sizeof是C/C++中的一个操作符(operator)...
EE直播间
更多
我要评论
1
2
关闭 站长推荐上一条 /3 下一条