OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 35375|回复: 132

<<例说STM32>>勘误贴/问题贴

[复制链接]

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2011-7-22 16:36:03 | 显示全部楼层 |阅读模式
<<例说STM32>>第一版印刷,其中难免有些有错误的地方,希望大家把发现的问题,都在这里提出来.谢谢!
我会对问题进行解答和更正.谢谢!

第三次印刷勘误汇总,截止日期:20120722.


例说STM32第三次印刷修改内容.xls

20 KB, 下载次数: 1758

我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

13

主题

32

帖子

0

精华

初级会员

Rank: 2

积分
122
金钱
122
注册时间
2011-1-20
在线时间
5 小时
发表于 2011-7-22 16:40:03 | 显示全部楼层
小胖俺看原子哥书上P127页的定时器那块发现一个小小的问题哈,
哥在这页上写TIM3的时钟为72M,然后在下一页却写时钟为36M,
然后俺找示波器看周期,发现设置为Timerx_Init(1,7199)时候,
实际定时值为200us,Timerx_Init(2,7199)为300us,依次往后
类推,得到的应该是当前arr+1的定时值哈,求指点哈~~
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
 楼主| 发表于 2011-7-22 17:02:50 | 显示全部楼层
我在电子档上没搜索到:TIM3的时钟为72M.这句话.回头我看看书吧.
 
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
 楼主| 发表于 2011-7-23 02:17:05 | 显示全部楼层
 回复【2楼】smy096:
---------------------------------
我回家翻了2.0的手册,没找到:TIM3的时钟为72M这句话.
这里可以告诉你.
TIM3的时钟确实是72M(使用我们的源码),这点你可以看时钟树图,在<<STM32参考手册>>,里面清楚的说明了这个结果. 记得有个倍频就可以了.
既然时钟为72M.
所以Timerx_Init(1,7199),设定TIM的计数频率为10Khz.从0加到1,总共需要2个计数,即200us.
其他的依次类推.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

13

主题

73

帖子

0

精华

初级会员

Rank: 2

积分
147
金钱
147
注册时间
2011-7-2
在线时间
3 小时
发表于 2011-7-24 18:14:04 | 显示全部楼层
原子哥lcd.h中的说明有误:
void LCD_Init(void) 
{  
  RCC->APB2ENR|=1<<3;//先使能外设PORTB时钟 
  RCC->APB2ENR|=1<<4;//先使能外设PORTC时钟 

RCC->APB2ENR|=1<<0;    //开启辅助时钟 
JTAG_Set(SWD_ENABLE);  //开启SWD 
  
//PORTC6~10复用推挽输出 ??这里感觉复用推挽不对应该是3=0011(modex=00,cnfy=11) 
GPIOC->CRH&=0XFFFFF000; //通用推挽输出50MHZ 3=0011(modex=00,cnfy=11)
GPIOC->CRH|=0X00000333;  
GPIOC->CRL&=0X0000FFFF; 
GPIOC->CRL|=0X33330000;   
GPIOC->ODR|=0X07C0;   
//PORTB 推挽输出  
GPIOB->CRH=0X33333333; 
GPIOB->CRL=0X33333333;    
GPIOB->ODR=0XFFFF; 
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
 楼主| 发表于 2011-7-24 19:17:24 | 显示全部楼层
回复【5楼】hpy6666:
---------------------------------
是推挽输出,复用推挽,可能注释有误.
以代码为准,注释可能有误!
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

8

主题

37

帖子

0

精华

初级会员

Rank: 2

积分
89
金钱
89
注册时间
2011-7-25
在线时间
0 小时
发表于 2011-7-25 20:33:49 | 显示全部楼层
p144 “ 因为我们在 Stm32_Clock_Init 函数里面已经初
始化 APB1的时钟为 2分频,所以,TIM3 的时钟为 36M,”
貌似是72M吧。
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
 楼主| 发表于 2011-7-25 22:23:38 | 显示全部楼层
回复【7楼】十八铜人:
---------------------------------
对,是72M.
但是这个72M,不是由APB1来的,apb1得到的是36M,但是通用定时器,在其时钟分频数不为1的条件下,会倍频.
所以频率=2*APB1的分频频率.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

8

主题

37

帖子

0

精华

初级会员

Rank: 2

积分
89
金钱
89
注册时间
2011-7-25
在线时间
0 小时
发表于 2011-7-26 10:41:25 | 显示全部楼层
我的意思是36M是不是印刷错误,应该改成72M。

还是我理解的有问题?
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
 楼主| 发表于 2011-7-26 10:45:55 | 显示全部楼层
回复【9楼】十八铜人:
---------------------------------
不是印刷错误,是我的错误.呵呵.出版社按我的稿印刷的.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

8

主题

37

帖子

0

精华

初级会员

Rank: 2

积分
89
金钱
89
注册时间
2011-7-25
在线时间
0 小时
发表于 2011-7-26 11:21:49 | 显示全部楼层
回复【10楼】正点原子:
---------------------------------
哦 
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手入门

积分
22
金钱
22
注册时间
2011-7-23
在线时间
0 小时
发表于 2011-7-26 18:45:42 | 显示全部楼层
其他都挺好的,就是光盘不怎么给力啊。时间很短,才到第三章。
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
21
金钱
21
注册时间
2011-6-30
在线时间
0 小时
发表于 2011-9-1 10:28:00 | 显示全部楼层
key.c的那个文件夹的那个程序少一个头文件夹“sys.h” 没有这个程序不能编译
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
 楼主| 发表于 2011-9-1 12:27:14 | 显示全部楼层
回复【13楼】zhpnncjdsg:
---------------------------------
谢谢
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

9

主题

27

帖子

0

精华

初级会员

Rank: 2

积分
85
金钱
85
注册时间
2011-9-2
在线时间
4 小时
发表于 2011-9-2 09:30:04 | 显示全部楼层
你好,我想问问我按照书本上的实验八PWM的例子,只改了IO口之后就没有效果了,一直同样的亮度,不知道是什么原因呢?还有的是用了PWM2模式是不是可以不用管TIM3中断呢?因为我看到在main函数当中没有了Timerx_Init。。。请指教一下。。
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
 楼主| 发表于 2011-9-2 09:38:05 | 显示全部楼层
回复【15楼】newmandirl:
---------------------------------
pwm必须通过某些固定的IO口来输出的,你随意换,怎么能行呢?
你还没理解PWM,及它与IO口之间的关系,弄懂了这个再说。
另外,这里是书本的勘误贴,提问请单独开贴,强烈建议提问之前先搜索论坛,很多问题别人已经问过了。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

39

主题

597

帖子

2

精华

金牌会员

Rank: 6Rank: 6

积分
2116
金钱
2116
注册时间
2011-9-3
在线时间
121 小时
发表于 2011-9-25 14:59:15 | 显示全部楼层
原大哥,你好。《例说STM32》P195:ADC_SQR1的位19:15描述中的“这些位定义了转换序列中的第16个转换通道的编号(01~7)”,应为“这些位定义了转换序列中的第16个转换通道的编号(01~17)”,请确认!
回复 支持 反对

使用道具 举报

39

主题

597

帖子

2

精华

金牌会员

Rank: 6Rank: 6

积分
2116
金钱
2116
注册时间
2011-9-3
在线时间
121 小时
发表于 2011-9-26 22:30:36 | 显示全部楼层
另外P210处第一行,“DMA_IFCR的各位就是用来清除DMA_ISR的对应位的,通过写0清除”正确为“DMA_IFCR的各位就是用来清除DMA_ISR的对应位的,通过写1清除”.
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
 楼主| 发表于 2011-10-12 14:16:19 | 显示全部楼层
回复【17楼】螃蟹爱虫:
---------------------------------
却是是bug,应该是01~17.

回复【18楼】螃蟹爱虫:
---------------------------------
这也是一个bug.

谢谢你的两个建议.下次在我这里买东西,送你一个18b20.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

39

主题

597

帖子

2

精华

金牌会员

Rank: 6Rank: 6

积分
2116
金钱
2116
注册时间
2011-9-3
在线时间
121 小时
发表于 2011-10-17 21:47:36 | 显示全部楼层
不客气,我也希望论坛能向更好的方向发展,送东西就不必了,我也知道你也是需要成本的,我只希望在这里提有关STM32的问题能够得到大家以及原子的积极回应就好啦,这样大家也能共同进步,呵呵。。
回复 支持 反对

使用道具 举报

39

主题

597

帖子

2

精华

金牌会员

Rank: 6Rank: 6

积分
2116
金钱
2116
注册时间
2011-9-3
在线时间
121 小时
发表于 2011-10-17 21:52:54 | 显示全部楼层
P264,SD卡初始化第三步后,应该增加一步。发送CMD8命令获取SD卡支持的电压以及版本等操作条件寄存器。。。程序是写了这一步,文字叙述没写。。
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
 楼主| 发表于 2011-10-17 22:30:12 | 显示全部楼层
回复【21楼】螃蟹爱虫:
---------------------------------
谢谢
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

0

主题

5

帖子

0

精华

新手上路

积分
35
金钱
35
注册时间
2011-10-18
在线时间
2 小时
发表于 2011-10-18 11:27:27 | 显示全部楼层
昨天去参加研讨会,领到了你的大作,谢谢! 以后还望多多指教。 有什么工程项目要做的话也分我一点。
回复 支持 反对

使用道具 举报

3

主题

12

帖子

0

精华

初级会员

Rank: 2

积分
52
金钱
52
注册时间
2011-10-18
在线时间
2 小时
发表于 2011-10-18 17:55:41 | 显示全部楼层
P208 表20.1 通道5中,USART3_RX ,应该为USART1_RX
回复 支持 反对

使用道具 举报

3

主题

12

帖子

0

精华

初级会员

Rank: 2

积分
52
金钱
52
注册时间
2011-10-18
在线时间
2 小时
发表于 2011-10-18 18:00:52 | 显示全部楼层
P203 第三行,设置ADC,并开启ADC_CR2的AWDEN位,是否是设置ADC,并开启ADC_CR2的TSVREFE位呢
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
 楼主| 发表于 2011-10-18 23:31:06 | 显示全部楼层
回复【24楼】raosibin:
---------------------------------
确实有误。
ADC_CR2有TSVREFE位么?
我没发现哦。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

3

主题

12

帖子

0

精华

初级会员

Rank: 2

积分
52
金钱
52
注册时间
2011-10-18
在线时间
2 小时
发表于 2011-10-20 10:59:25 | 显示全部楼层
回复【26楼】正点原子:
---------------------------------
ADC_CR2 的23位不是写的TSVREFE 位吗,书上P193页图18.3 上也有呢。参考手册上P173也是这样说的啊。难道是我看错了啊
回复 支持 反对

使用道具 举报

3

主题

12

帖子

0

精华

初级会员

Rank: 2

积分
52
金钱
52
注册时间
2011-10-18
在线时间
2 小时
发表于 2011-10-20 11:01:01 | 显示全部楼层
回复【26楼】正点原子:
---------------------------------
更何况AWDEN 是ADC_CR1上的位吧
回复 支持 反对

使用道具 举报

3

主题

12

帖子

0

精华

初级会员

Rank: 2

积分
52
金钱
52
注册时间
2011-10-18
在线时间
2 小时
发表于 2011-10-20 11:17:42 | 显示全部楼层
P221 SPI总线时序图中(a)里面 MISI 应为MOSI,两个时序图好像也颠倒了吧?即(a)中的应该是CPHA = 1的时序图,不知道我的理解对不对
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
 楼主| 发表于 2011-10-20 20:07:18 | 显示全部楼层
回复【28楼】raosibin:
---------------------------------
不好意思,当时写的时候,看的是第七版的资料.上面标错了...我就跟着错了...
回复【29楼】raosibin:
---------------------------------
这个我回家考证一下.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

2

主题

41

帖子

0

精华

初级会员

Rank: 2

积分
70
金钱
70
注册时间
2011-10-17
在线时间
0 小时
发表于 2011-10-23 09:04:50 | 显示全部楼层
   原子哥,书上P76最后一行的 GPIOA->CRH1 = 0X000008B0; 是不是有问题啊,是不是应该是 GPIOA->CRH |= 0X000008B0;我觉得应该是”按位或“而不是1啊?
回复 支持 反对

使用道具 举报

10

主题

32

帖子

0

精华

新手上路

积分
34
金钱
34
注册时间
2011-10-26
在线时间
10 小时
发表于 2011-10-26 22:07:55 | 显示全部楼层
回复【楼主位】正点原子:
---------------------------------
我的stm32读到的LCD ID是8989,可<不完全手册>上介绍的是9230。光盘中的资料没有关于8989的,有些命令不一样。不知大家发现没?
回复 支持 反对

使用道具 举报

18

主题

82

帖子

0

精华

初级会员

Rank: 2

积分
174
金钱
174
注册时间
2011-10-27
在线时间
0 小时
发表于 2011-10-28 14:05:54 | 显示全部楼层
回复【31楼】haspire:
---------------------------------
你说的对,是“按位或”。原子哥最近有点忙。
回复 支持 反对

使用道具 举报

18

主题

82

帖子

0

精华

初级会员

Rank: 2

积分
174
金钱
174
注册时间
2011-10-27
在线时间
0 小时
发表于 2011-10-28 14:07:14 | 显示全部楼层
回复【32楼】dby12:
---------------------------------
命令的确不一样,不过程序上已经都考虑到了,做了相应的处理。请参考光盘中SSD1289资料.谢谢
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
 楼主| 发表于 2011-10-28 16:22:34 | 显示全部楼层
回复【31楼】haspire:
---------------------------------
这个应该是笔误了.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
 楼主| 发表于 2011-10-29 23:47:59 | 显示全部楼层
fengye1966 提出:
原子哥,我先提出关于这个问题的一个勘误。《例说STM32》125页图12.5最后寄存器的最后一位标志“UIE”应该是“UIF”。我看勘误贴中没有这个信息,麻烦您转过去,谢谢。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

26

主题

279

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
409
金钱
409
注册时间
2010-12-15
在线时间
0 小时
发表于 2011-11-4 14:33:47 | 显示全部楼层
我来支持一下
STM32芯片---上海银洋电子021-53086303
欢迎来电15900733302??采购找张经理
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
 楼主| 发表于 2011-11-14 11:18:39 | 显示全部楼层
书本介绍void uart_init(u32 pclk2,u32 bound)这个函数的时候,最后的中断配置有误.
MY_NVIC_Init(3,3,USART1_IRQChannel,2);//组2,最低优先级 
应该为:
MY_NVIC_Init(2,3,USART1_IRQChannel,2);//组2,最低优先级 

我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

1

主题

11

帖子

0

精华

新手上路

积分
35
金钱
35
注册时间
2011-11-8
在线时间
0 小时
发表于 2011-11-15 12:06:25 | 显示全部楼层
#define GPIOD_ODR_Addr    (GPIOD_BASE+12) //0x4001140C 
#define GPIOE_ODR_Addr    (GPIOE_BASE+12)  //0x4001180C 
#define GPIOF_ODR_Addr    (GPIOF_BASE+12)  //0x40011A0C    
#define GPIOG_ODR_Addr   (GPIOG_BASE+12)  //0x40011E0C   

GPIOF_BASE和GPIOG_BASE     注释应该是错了吧???
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
 楼主| 发表于 2011-11-15 12:29:00 | 显示全部楼层
回复【39楼】在路上9303:
---------------------------------
没错啊.
144脚的型号有GPIOF和G...
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

1

主题

11

帖子

0

精华

新手上路

积分
35
金钱
35
注册时间
2011-11-8
在线时间
0 小时
发表于 2011-11-15 16:33:36 | 显示全部楼层
回复【40楼】正点原子:
---------------------------------
不是,我说的是GPIOF和GPIOG寄存器基地址  你后边的注释好像错啦
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
 楼主| 发表于 2011-11-15 22:38:42 | 显示全部楼层
这个可能有误.呵呵.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

4

主题

6

帖子

0

精华

新手上路

积分
49
金钱
49
注册时间
2011-11-22
在线时间
3 小时
发表于 2011-11-22 14:05:45 | 显示全部楼层
回复【楼主位】正点原子:
---------------------------------
书上有个地方印错了,第81页最上面第二排图 CNF0印错成CNF4了
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
 楼主| 发表于 2011-11-22 14:18:48 | 显示全部楼层
谢谢
回复 支持 反对

使用道具 举报

38

主题

527

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
1424
金钱
1424
注册时间
2011-11-27
在线时间
122 小时
发表于 2011-11-27 21:07:21 | 显示全部楼层

int main(void)
{
Stm32_Clock_Init(9); //系统时钟设置
delay_init(72);
//延时初始化
uart_init(729600);
//串口初始化
LED_Init();
//初始化与LED连接的硬件接口
Timerx_Init(50007199);//10Khz的计数频率,计数到5000500ms
while(1)
{
LED0=!LED0;
delay_ms(200);
}
}
这里的代码和之前大同小异,此段代码对TIM3进行初始化之后,进入死循环等待TIM3溢出中断,当TIM3_CNT的值等于TIM3_ARR的值的时候,就会产生TIM3的更新中断,然后在中断里面取反LED1TIM3_CNT再从0开始计数。
下载与测试,在完成软件设计之后,我们将编译好的文件下载到MiniSTM32开发板上,观看其运行结果是否与我们编写的一致。如果没有错误,我们将看DS0不停闪烁(每400ms闪烁一次),而DS1也是不停的闪烁,但是闪烁时间较DS0慢(1s一次)。

--------------------------------

Timerx_Init(50007199);//10Khz的计数频率,计数到5000500ms

delay_ms(200);

是不是应该是DS0200ms闪烁一次,而DS10.5s闪烁一次?

永远保持一颗学习的心态。
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
 楼主| 发表于 2011-11-27 21:17:13 | 显示全部楼层
回复【45楼】科科1987:
---------------------------------
你可以实际下载看看.
为什么是一倍的关系?
因为亮200ms,灭200ms,需要400ms才一个周期.
所以是0.4s,同样,1s也是这么来的.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

38

主题

527

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
1424
金钱
1424
注册时间
2011-11-27
在线时间
122 小时
发表于 2011-11-27 21:37:41 | 显示全部楼层

回复【46楼】正点原子:
---------------------------------
板子还没有收到,只能脑袋里想想,现在明白了,呵呵

 

永远保持一颗学习的心态。
回复 支持 反对

使用道具 举报

5

主题

21

帖子

0

精华

初级会员

Rank: 2

积分
61
金钱
61
注册时间
2011-11-28
在线时间
0 小时
发表于 2011-11-29 16:49:14 | 显示全部楼层
原子大哥,在DMA实验里使能DMA时钟后是不是要加至少两个nop()等待时钟稳定呢,我写的时候按照你的来DMA不工作,加上nop()便OK了,我看的还是1.0,刚才下2.0没成功,所以不知道2.0修改了吗,为了完善不完全手册还是提出来了,呵呵
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
 楼主| 发表于 2011-11-29 17:06:43 | 显示全部楼层
回复【48楼】zhangjikuan0521:
---------------------------------
是应该加延时的.
最新的代码应该修改过来了吧 ?
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

98

主题

408

帖子

3

精华

金牌会员

Rank: 6Rank: 6

积分
1280
金钱
1280
注册时间
2010-12-14
在线时间
0 小时
发表于 2011-12-8 21:11:22 | 显示全部楼层
P58下面,“nms,其参数nms为要延时的微秒数”---》应为“毫秒数”
希望openedv能给大家提供一个友好的技术交流平台!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-19 08:21

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表