STR710FZ2T6串口速率始终只有设定值的四分之一
#ifndef __71x_CONF_H
#define __71x_CONF_H
/* Comment the line below to put the library in release mode */
#define RCCU_Main_Osc 0x16000000
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
这里的0x16000000改为0x4000000了没有?
/* Comment the lines below corresponding to unwanted peripherals */
//#define _ADC12
//#define _APB
//#define _APB1
//#define _APB2
//#define _BSPI
//#define _BSPI0
//#define _BSPI1
//#define _CAN
//#define _EIC
//#define _EMI
//#define _FLASH
#define _GPIO
#define _GPIO0
#define _GPIO1
#define _GPIO2
#define _I2C
#define _I2C0
#define _I2C1
#define _PCU
#define _RCCU
//#define _RTC
//#define _TIM
//#define _TIM0
//#define _TIM1
//#define _TIM2
//#define _TIM3
//#define _UART
//#define _UART0
//#define _UART1
//#define _UART2
//#define _UART3
//#define _USB
//#define _WDG
//#define _XTI
//#define _IRQVectors
#endif /* __71x_CONF_H */
确实没有设置为4000000
但,无论是改为0x4000000还是4000000,,,串口速率仍旧是1/4....困惑ING...谢谢各位老大
建议:删除所有生成的中间文件,重新编译链接项目文件
还是不行呢.
我重新从C盘的KEIL安装目录里,拷贝出了整个工程(之前我没有直接在这里修改源程序)
并且照前边两位说的,删除了所有中间文件。..但问题还是没解决啊.
还有,我在仿真里边,让程序 "RUN"起来之后,截到如下的图...
这块板子之前有BOOT,通信都正常啊
这块板子,送给我的时候,是有BOOT的。通信都正常。
而且我用ADS编译的文件也正常跑起来了。
现在买了个ULINK,,,就把BOOT擦掉了。没想到串口不正常。...是什么原因呢
检测option
见图
"4.0"MHz这个也是很早就设置好了
"4.0"MHz这个也是很早就设置好了...
也是不行的。
还有,稍微有点不放心的是,,,Device项里,,,没有选具体器件...
例程抓过来就用了。
老大们...谢谢..
到底是啥问题啊55555555555
我不大会用KEIL 的MDK
因为没有license,我一直没法使用KEIL 的MDK,而且16k的版本不够用,所以一直没有去使用它。
你的问题仅凭你提供的信息可能没法解决,你能否将你的项目整个打包放上来?
应该是要在初始化的时候设置一下时钟
在初始化部分应该设置主频率的分频和倍频,
现在一般都是直接用库编程,而库缺省是用16M的频率,虽然改了源程序的主时钟频率,但是没有重新编译库的话,还是用16M的频率
恩,谢谢
这两天在打杂,以上方法等我周末再试验。有结果给大家汇报。谢谢
这会总算可以干点正事
11点刚把手上的杂活干完,可以整整正事了。..
发现,自己怎么折腾都不行.
还是把工程打包发上来吧~~~
各位老大,帮忙吧~
相关链接:
https://bbs.eeworld.com.cn/upfiles/img/200710/20071017233331357.rar
你以为驱动个串口那么重要么
我是在学ARM没错。
这个串口驱动不驱动起来,只是个过程。我并不重视结果的。
我的目标很明确,在这个探寻的过程中,可以逐步学会这个东西。串口不正常说明设置有问题。在这个基础上作再多也没意义。
而且这个是预研,不会有那么多精力投入的。
而且我相信,有这个问题的不止我一个
而且我相信,有这个问题的不止我一个.
这些资料留在这里,还会对其他人有用的。还有,你的思维方式...
你最好不要用Keil自带的库
最好使用产生那个库的源文件去开发。
问题还是这个造成的:
#define RCCU_Main_Osc 0x16000000
Keil编译好的库中使用了RCCU_Main_Osc,而这个值就是0x16000000,在外面改不了。除非你用的晶振是16M。
我是这样作的
我打开 KEIL下 ARM/LIB/ST/SRC 下的工程。
将里边 Options for Target 里 的晶振频率改为 4MHz
然后编译.
生成新的 .LIB文件。
为了确认,我还将编译好的文件覆盖至引用的地址。
然后打开我原来的工程进行编译.下载.
结果依然没有变化.
所以我一直在想,能不能象 KEIL 2设置 ST32XX/ST33XX一样,从片子开始一步步自己建立工程。
但目前网上还没有相关资料啊...
19楼的老大,不知道我前边的方法,和您讲的是不是一样的呢。
您的方法是不包含 LIB文件而直接包含库文件么如 uart.c eic.c 等?