打印

adc采样控制pwm的问题

[复制链接]
楼主: djz1992
手机看帖
扫描二维码
随时随地手机跟帖
21
adc转换之后怎么处理

使用特权

评论回复
22
cemaj| | 2015-12-29 22:33 | 只看该作者
你的转换模式是什么

使用特权

评论回复
23
djz1992|  楼主 | 2015-12-31 09:41 | 只看该作者
pmp 发表于 2015-12-29 21:12
adc的读取实用滤波的算法

具体怎么操作呢?

使用特权

评论回复
24
djz1992|  楼主 | 2015-12-31 09:43 | 只看该作者
xyz549040622 发表于 2015-12-29 16:17
现在的问题是你前端采集到的电压就不准,所以后级出现问题就情有可原了。我晚上拿launchpad试试,AD误差真 ...

通过采样值来指制PWM可以实现了,判断语句改了改。采样值的准确性还是有些问题。我也再试试
怎么能够在程序运行的时候实时观察变量数值的变化?我现在只会运行一步看一次,不会运行中看变化。听说要建立什么示波器

使用特权

评论回复
25
djz1992|  楼主 | 2015-12-31 09:51 | 只看该作者
xyz549040622 发表于 2015-12-29 16:17
现在的问题是你前端采集到的电压就不准,所以后级出现问题就情有可原了。我晚上拿launchpad试试,AD误差真 ...

你不就是那个deyi论坛的大神吗

使用特权

评论回复
26
dirtwillfly| | 2015-12-31 10:00 | 只看该作者
djz1992 发表于 2015-12-31 09:51
你不就是那个deyi论坛的大神吗

是他

使用特权

评论回复
27
djz1992|  楼主 | 2015-12-31 10:39 | 只看该作者

每次我有问题我都是直接找他回复的

使用特权

评论回复
28
可可球| | 2015-12-31 16:34 | 只看该作者
采样不会引起电压波动的

使用特权

评论回复
29
xyz549040622| | 2015-12-31 16:42 | 只看该作者
djz1992 发表于 2015-12-31 09:51
你不就是那个deyi论坛的大神吗

共同学习@dirtwillfly 这才是大神。

使用特权

评论回复
30
djz1992|  楼主 | 2016-1-4 14:12 | 只看该作者

SysCtlClockSet(SYSCTL_SYSDIV_5|SYSCTL_USE_PLL|SYSCTL_XTAL_16MHZ|SYSCTL_OSC_MAIN);//5分频,使用PLL,外部晶振16M,system时钟源选择 main osc。系统时钟40MHZSysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOF); //使能GPIOF外设
GPIOPinTypeGPIOOutput(GPIO_PORTF_BASE, GPIO_PIN_1|GPIO_PIN_2|GPIO_PIN_3);
SysCtlPeripheralEnable(SYSCTL_PERIPH_TIMER0); //使能TIMER0
//TimerConfigure(TIMER0_BASE, TIMER_CFG_ONE_SHOT);//单次计数模式
TimerConfigure(TIMER0_BASE, TIMER_CFG_PERIODIC);//周期性计数模式
TimerLoadSet(TIMER0_BASE, TIMER_A,SysCtlClockGet() / 10 - 1);//计数频率10HZ
   
    以这个代码为例,TimerLoadSet(TIMER0_BASE, TIMER_A,SysCtlClockGet() / 10 - 1);怎么看定时时长是多少,怎么换算成多少秒?

使用特权

评论回复
31
dirtwillfly| | 2016-1-5 21:20 | 只看该作者
djz1992 发表于 2016-1-4 14:12
SysCtlClockSet(SYSCTL_SYSDIV_5|SYSCTL_USE_PLL|SYSCTL_XTAL_16MHZ|SYSCTL_OSC_MAIN);//5分频,使用PLL ...

第三个参数写你想要设置的period, 单位是时钟震荡次数

使用特权

评论回复
32
djz1992|  楼主 | 2016-1-6 08:59 | 只看该作者
dirtwillfly 发表于 2016-1-5 21:20
第三个参数写你想要设置的period, 单位是时钟震荡次数

1.这个SysCtlClockGet()是不是固定值?还是我设置的分频后的晶振频率?
2.技术频率10HZ,代表每秒计数10次,我记得是累加或者递减到TimerLoadSet设定的值后进入中断,为什么这里TimerLoadSet里设置的是计数的速度,而不是目标值,那目标值是哪里设置的?
3.为什么SysCtlClockGet() / 10 - 1,总是要-1

使用特权

评论回复
33
luofeng2g| | 2016-1-6 09:13 | 只看该作者
djz1992 发表于 2016-1-6 08:59
1.这个SysCtlClockGet()是不是固定值?还是我设置的分频后的晶振频率?
2.技术频率10HZ,代表每秒计数10 ...

1.这个你第一步配置好后,是固定的,系统时钟!
2.这不是计数速度,是计数步数;
3.这个问题,。。。。你还是看看书多!

使用特权

评论回复
34
dirtwillfly| | 2016-1-6 11:52 | 只看该作者
luofeng2g 发表于 2016-1-6 09:13
1.这个你第一步配置好后,是固定的,系统时钟!
2.这不是计数速度,是计数步数;
3.这个问题,。。。。你 ...

嗯,看看datasheet

使用特权

评论回复
35
djz1992|  楼主 | 2016-1-6 14:28 | 只看该作者

我的JTAG烧写器是XDS510,jtag口是这样设计的,由于13和14要连接的引脚,TM4C123单片机没有,我就没接。
现在烧写有错误, ,不知道是怎么回事,是不是jita口不对劲

使用特权

评论回复
36
Garen2| | 2016-1-6 21:31 | 只看该作者
adc参考电压一定要稳定

使用特权

评论回复
37
Ryze| | 2016-1-6 21:43 | 只看该作者
TIVA系列单片机有哪些,还没用过

使用特权

评论回复
38
djz1992|  楼主 | 2016-1-8 10:08 | 只看该作者
xyz549040622 发表于 2015-12-29 16:17
现在的问题是你前端采集到的电压就不准,所以后级出现问题就情有可原了。我晚上拿launchpad试试,AD误差真 ...

老大,有没有邮箱啊  我的JTAG和ICDI给自制板烧程序都连不上啊,我的邮箱  602061006@qq.com

使用特权

评论回复
39
xyz549040622| | 2016-1-8 13:15 | 只看该作者
djz1992 发表于 2016-1-8 10:08
老大,有没有邮箱啊  我的JTAG和ICDI给自制板烧程序都连不上啊,我的邮箱   ...

哈哈,看你调试成功了。恭喜恭喜。那个EXT线我也不知道是干嘛用的了

使用特权

评论回复
40
djz1992|  楼主 | 2016-1-14 11:28 | 只看该作者
xyz549040622 发表于 2016-1-8 13:15
哈哈,看你调试成功了。恭喜恭喜。那个EXT线我也不知道是干嘛用的了

我是新手,多亏大哥们带的好啊。不过我又有新问题啦。采样的精度我差不多搞定了,误差在6-8之间。我现在要采的时220V交流电,我已经把交流信号用分压的方法,调到1.32-1.98之间了,听说是在0.02S内所有取值的平方,求和,然后除以采样频率,再开根号。我有些疑问
1.第一个采样点不一定是0点,也就是采到的正弦波不一定是从0度开始到360度结束的,是不是不影响?
2.是不是把所有采到的保存到数组
3.有没有相似的代码,分享一下呢

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则