OpenEdv-开源电子网

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

程序运行问题~大神求秒~

[复制链接]

3

主题

10

帖子

0

精华

新手上路

积分
42
金钱
42
注册时间
2014-8-2
在线时间
0 小时
发表于 2014-8-7 11:44:32 | 显示全部楼层 |阅读模式
5金钱
学了一些之后看程序看的有点晕。。求大神给讲解一下程序运行步骤:

比如这个程序:
#include "led.h"
#include "delay.h"
#include "key.h"
#include "sys.h"
#include "usart.h"
#include "timer.h"
#include "PWM_correct.h"
#include "PWM_start.h"
#include "PWM_start_updown.h"

 int main(void)
 {

delay_init();     
NVIC_Configuration();
uart_init(9600); 
LED_Init();     
TIM3_PWM_Init();

 
delay_ms(1000);
TIM_SetCompare2(TIM3,19080);
delay_ms(5000);
TIM_SetCompare2(TIM3,18000);  

   while(1)
 {
 }
}

程序先进行这些初始化:
delay_init();     
NVIC_Configuration();
uart_init(9600); 
LED_Init();     
TIM3_PWM_Init(); 
然后进行:
delay_ms(1000);
TIM_SetCompare2(TIM3,19080);
delay_ms(5000); 
TIM_SetCompare2(TIM3,18000);  
最后进入死循环:while(1){};


delay_ms(1000);
TIM_SetCompare2(TIM3,19080);
delay_ms(5000); 
TIM_SetCompare2(TIM3,18000);  
这一部分不就只运行了一遍?为什么电机还是在一直转?程序不是进入死循环了吗?不就只是在空跑吗?
是不是定时器是单独一个线路,启动了之后自己一直在跑,而主程序另外一条线空跑?

还有呀,有的时候最后不加这个死循环为什么实现效果不一样呀?

最佳答案

查看完整内容[请看2#楼]

//对72M条件下,nms<=1864  delay_ms入口参数最大值为1864.你写的5000
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

230

主题

1950

帖子

10

精华

论坛元老

Rank: 8Rank: 8

积分
4562
金钱
4562
注册时间
2010-12-14
在线时间
32 小时
发表于 2014-8-7 11:44:33 | 显示全部楼层
//对72M条件下,nms<=1864 
delay_ms入口参数最大值为1864.你写的5000
我是开源电子网?网站管理员,对网站有任何问题,请与我联系!QQ:389063473Email:389063473@qq.com
回复

使用道具 举报

10

主题

561

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1843
金钱
1843
注册时间
2014-6-27
在线时间
983 小时
发表于 2014-8-7 12:01:11 | 显示全部楼层
PWM是硬件在跑啊,你设置了,它就一直跑,当然转了。
回复

使用道具 举报

3

主题

10

帖子

0

精华

新手上路

积分
42
金钱
42
注册时间
2014-8-2
在线时间
0 小时
 楼主| 发表于 2014-8-8 12:24:44 | 显示全部楼层
回复【3楼】Admin:
---------------------------------
呃、、没看懂、大于1864有什么后果?为什么最大是1864呀?怎么算的、、

为什么有的时候程序最后不加while()死循环实现效果会不一样呀??
回复

使用道具 举报

230

主题

1950

帖子

10

精华

论坛元老

Rank: 8Rank: 8

积分
4562
金钱
4562
注册时间
2010-12-14
在线时间
32 小时
发表于 2014-8-8 17:25:15 | 显示全部楼层
回复【4楼】、太陽好大:
---------------------------------
Systick对应的计数器是24位。。。。就必定有最大值了。。。
我是开源电子网?网站管理员,对网站有任何问题,请与我联系!QQ:389063473Email:389063473@qq.com
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-7-4 02:09

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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