本帖最后由 Ben讨厌苦咖啡 于 2015-3-23 15:15 编辑
这个程序的功能就是从一个AD的口输入一个电压值,然后经过AD转换后由串口输出,本来是F149上面的程序,已经成功运行并且功能已经实现了,我现在有个F5529的板,移植过来也改了好些地方,应该是没什么问题了,编译也没有问题,可是总是实现不了功能 求助大神!!!
我把程序的详细部分贴上来 大家帮忙看看!谢谢了!
转换程序2.zip
(406.13 KB, 下载次数: 19)
2015-3-23 15:15 上传
点击文件名下载附件
首先是主程序,while(1)里面是个输出的循环,输出到串口是一个数字的值和一个真实的模拟电压输入值。
接下来是AD中断函数,将采到的4次的值分别存入到result【】数组里面 然后用average做平均,最后将average输出到while(1)里面的两个计算的函数。
下面是我AD模块的设置,还有两个做转换的函数
好吧,那么问题来了,现在我用5529的板子仿真,可以进到AD中断,并且读取ADC12MEM6,可以看到采了值,但是,average却算不出来。没有值
而且用来存储采到数据的两个数组buffer1和buffer2都不对。。。。。。
这些函数的功能应改没问题,因为在149的板子上完全都实现了。可是不知道为什么在5529的板子上却不对,求大神帮忙啊!
此帖出自
小平头技术问答
中断服务里最后增加ADCInit函数即可,实际上直接再次开启ADC采样就够了。
如果没记错的话是下面这句:
ADC12CTL0|=ADC12SC
我貌似找到原因啦~是ADC12IFG那里没有设置~~~设置了之后就没问题了~中断那里就没问题了~~~~~
不过整个程序现在又有问题了~就是buffer1和buffer2采不到。。。。。。看到的都是error 呃。。。。。。
唤醒MCU的语句???这个我不太懂了诶。。。。。。请您详细解释下~~~~~
退出低功耗1模式,唤醒单片机继续执行后面的操作。
你搞清楚程序执行的顺序没有?
一周热门 更多>