adc采样控制pwm的问题

[复制链接]
7021|42
cemaj 发表于 2015-12-29 22:32 | 显示全部楼层
adc转换之后怎么处理
cemaj 发表于 2015-12-29 22:33 | 显示全部楼层
你的转换模式是什么
 楼主| djz1992 发表于 2015-12-31 09:41 | 显示全部楼层
pmp 发表于 2015-12-29 21:12
adc的读取实用滤波的算法

具体怎么操作呢?
 楼主| djz1992 发表于 2015-12-31 09:43 | 显示全部楼层
xyz549040622 发表于 2015-12-29 16:17
现在的问题是你前端采集到的电压就不准,所以后级出现问题就情有可原了。我晚上拿launchpad试试,AD误差真 ...

通过采样值来指制PWM可以实现了,判断语句改了改。采样值的准确性还是有些问题。我也再试试
怎么能够在程序运行的时候实时观察变量数值的变化?我现在只会运行一步看一次,不会运行中看变化。听说要建立什么示波器
 楼主| djz1992 发表于 2015-12-31 09:51 | 显示全部楼层
xyz549040622 发表于 2015-12-29 16:17
现在的问题是你前端采集到的电压就不准,所以后级出现问题就情有可原了。我晚上拿launchpad试试,AD误差真 ...

你不就是那个deyi论坛的大神吗
dirtwillfly 发表于 2015-12-31 10:00 | 显示全部楼层
djz1992 发表于 2015-12-31 09:51
你不就是那个deyi论坛的大神吗

是他
 楼主| djz1992 发表于 2015-12-31 10:39 | 显示全部楼层

每次我有问题我都是直接找他回复的
可可球 发表于 2015-12-31 16:34 | 显示全部楼层
采样不会引起电压波动的
xyz549040622 发表于 2015-12-31 16:42 | 显示全部楼层
djz1992 发表于 2015-12-31 09:51
你不就是那个deyi论坛的大神吗

共同学习@dirtwillfly 这才是大神。
 楼主| 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);怎么看定时时长是多少,怎么换算成多少秒?
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, 单位是时钟震荡次数
 楼主| 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
luofeng2g 发表于 2016-1-6 09:13 | 显示全部楼层
djz1992 发表于 2016-1-6 08:59
1.这个SysCtlClockGet()是不是固定值?还是我设置的分频后的晶振频率?
2.技术频率10HZ,代表每秒计数10 ...

1.这个你第一步配置好后,是固定的,系统时钟!
2.这不是计数速度,是计数步数;
3.这个问题,。。。。你还是看看书多!
dirtwillfly 发表于 2016-1-6 11:52 | 显示全部楼层
luofeng2g 发表于 2016-1-6 09:13
1.这个你第一步配置好后,是固定的,系统时钟!
2.这不是计数速度,是计数步数;
3.这个问题,。。。。你 ...

嗯,看看datasheet
 楼主| djz1992 发表于 2016-1-6 14:28 | 显示全部楼层

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

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
Garen2 发表于 2016-1-6 21:31 | 显示全部楼层
adc参考电压一定要稳定
Ryze 发表于 2016-1-6 21:43 | 显示全部楼层
TIVA系列单片机有哪些,还没用过
 楼主| djz1992 发表于 2016-1-8 10:08 | 显示全部楼层
xyz549040622 发表于 2015-12-29 16:17
现在的问题是你前端采集到的电压就不准,所以后级出现问题就情有可原了。我晚上拿launchpad试试,AD误差真 ...

老大,有没有邮箱啊  我的JTAG和ICDI给自制板烧程序都连不上啊,我的邮箱  602061006@qq.com
xyz549040622 发表于 2016-1-8 13:15 | 显示全部楼层
djz1992 发表于 2016-1-8 10:08
老大,有没有邮箱啊  我的JTAG和ICDI给自制板烧程序都连不上啊,我的邮箱   ...

哈哈,看你调试成功了。恭喜恭喜。那个EXT线我也不知道是干嘛用的了
 楼主| 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.有没有相似的代码,分享一下呢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部