2024-09-01
售卖作品
00

目录

全部代码

*4.电压检测:对50Hz的正弦电压的正半波进行AD转换,要求半个周期内转换 50 个点的值,并求出50 个点的平均值和有效值,并通过LCD显示和通过串口传到PC机的串口助手上。

50HZ 20ms 10ms半波 半波一次性采集50个点 间隔0.2ms

但是ADC采集速度最快也要0.5ms。

第一次解决方案:每20.2ms采集一次。会遇到单片机中断时间不是那么契合。采集50个点。观察下图,发现40个点才是一个周期。

在这里插入图片描述

第二次解决方案:改成采集40个点就计算一次就好了。从原始数据看来,也的确是40个点一个周期。

在这里插入图片描述

第三次解决方案:契合题目的50个点,契合办法就是一点一点改变定时器中断时间点,使得采集50个点是能行成一个周期。

matlab

c
hello_yuan=[ 2 6 2 4 6 2 2 4 5 6 8 10 11 13 15 17 19 21 24 24 28 31 33 33 37 37 39 39 45 42 47 47 49 46 48 48 50 51 51 51 51 50 50 49 49 17 13 14 7 3 9 6 4 3 1 3 4 6 6 10 9 13 14 17 22 21 24 28 28 29 34 34 38 38 41 41 42 42 45 45 49 49 50 51 51 52 51 52 51 52 52 51 50 50 48 14 6 8 2 6 5 1 3 3 5 6 10 12 14 15 19 22 24 23 27 31 30 34 37 38 41 39 43 43 45 46 48 50 50 52 53 53 53 54 54 55 54 54 54 52 52 51 50 48 48 6 5 2 4 6 8 10 12 13 15 20 22 22 24 28 30 33 36 36 39 40 43 44 47 47 48 50 51 53 53 54 55 56 56 58 57 56 57 56 55 54 53 53 53 55 49 51 47 47 42 2 3 5 8 7 10 15 16 15 18 20 22 24 29 31 34 34 36 38 42 44 45 46 49 50 53 53 56 55 57 58 58 59 60 60 59 60 59 59 59 59 55 54 56 55 50 48 43 47 43 4 6 7 10 12 12 14 15 17 17 25 27 29 31 34 36 38 40 43 45 46 49 50 52 54 56 57 58 59 59 61 60 63 60 62 62 61 61 59 60 57 55 57 56 49 49 49 43 42 44 4 2 2 5 4 5 12 15 18 12 19 21 23 26 28 31 33 35 38 40 43 45 47 49 52 53 53 57 58 59 60 60 63 62 63 63 63 63 63 63 63 59 56 56 61 51 57 54 53 52 1 1 1 4 8 7 8 9 13 14 16 19 22 24 26 30 31 33 36 39 42 44 47 49 51 53 54 56 57 58 63 63 62 63 63 63 63 63 62 62 63 63 63 61 63 55 53 54 51 48 1 10 1 3 4 6 10 13 12 15 19 19 21 25 27 29 32 34 37 40 42 44 46 49 52 54 54 58 60 61 61 63 57 61 60 63 63 63 63 62 63 63 63 60 60 57 56 55 52 50 0 62 18 17 16 14 10 8 6 4 1 1 5 3 7 9 9 13 15 15 17 21 20 26 26 29 33 34 36 38 40 45 44 46 48 49 50 52 53 55 56 56 57 58 59 60 58 60 59 57 56 57 16 12 11 5 6 3 2 1 3 7 8 9 9 12 17 19 20 23 24 27 30 28 31 36 37 41 40 43 44 46 48 49 51 52 53 55 56 56 57 56 57 56 56 56 55 55 54 53 52 50 4 2 4 1 6 8 9 14 12 17 16 18 21 23 24 30 32 30 34 36 40 39 41 45 45 47 47 49 51 51 52 54 54 55 54 55 54 54 54 54 51 53 50 50 48 46 45 44 43 43 1 3 4 7 8 10 12 16 17 20 22 25 23 29 31 31 33 34 39 41 44 43 45 44 48 49 50 50 51 52 52 52 53 51 52 52 52 51 51 49 49 48 47 46 43 41 39 37 37 36 1 4 4 6 8 9 11 14 17 19 22 22 24 29 31 31 32 34 38 39 38 44 41 47 48 49 47 49 50 51 50 51 51 51 51 51 49 50 48 48 47 46 44 43 41 40 39 36 34 32 1 3 5 6 8 8 11 12 15 18 20 21 24 28 29 30 34 36 34 39 38 40 44 45 46 48 45 49 50 47 48 49 51 51 50 49 49 49 48 49 46 45 43 43 41 40 37 35 35 31 1 1 1 4 5 7 9 10 11 14 16 18 19 22 24 27 28 30 33 35 35 37 37 40 40 46 46 44 49 49 49 49 49 49 51 48 48 48 48 47 46 45 45 43 42 40 38 37 36 35 1 3 1 2 6 7 7 8 10 11 14 15 17 19 21 23 26 26 30 32 34 36 45 44 43 43 42 46 48 48 48 50 48 50 51 47 50 48 48 49 47 47 45 44 44 41 41 38 37 36 2 4 2 1 3 4 5 7 8 9 11 14 15 16 18 21 22 23 26 27 29 32 33 35 38 39 43 41 45 46 44 48 49 49 50 50 49 50 46 49 47 47 47 46 45 43 43 41 38 38 1 2 1 2 4 9 9 6 8 12 13 16 16 19 20 21 23 25 27 28 33 34 35 35 38 39 43 41 42 45 45 48 49 49 53 53 52 51 51 47 49 47 47 46 47 46 43 40 39 38 3 3 2 2 2 5 2 4 3 6 9 9 11 13 13 16 18 20 23 23 25 27 29 30 33 36 39 37 40 44 42 44 46 48 49 47 48 47 50 48 49 46 46 48 47 46 44 44 42 42 5 1 1 1 1 1 1 3 3 6 7 9 10 12 15 16 17 18 24 23 25 27 29 31 33 37 38 41 41 42 43 46 47 47 49 47 48 48 46 50 47 50 48 46 46 46 45 44 42 42 2 2 1 1 1 2 2 4 6 8 9 10 13 14 16 18 20 22 24 26 27 30 31 34 36 38 37 43 45 44 44 43 47 47 50 53 48 50 52 49 48 48 48 46 46 48 46 45 44 42 7 4 1 9 5 6 1 2 2 4 6 6 8 9 11 13 13 13 17 20 18 21 22 24 26 29 29 34 38 39 40 39 39 44 45 47 48 44 50 52 52 53 50 48 50 50 49 49 47 46 15 12 43 62 63 63 63 60 60 57 56 55 52 50 ]; hello=hello_yuan(4:53) mean(hello)*5/64 rms(hello)*5/64 plot(hello_yuan)

全部代码

cpp
https://docs.qq.com/sheet/DUEdqZ2lmbmR6UVdU?tab=BB08J2
如果对你有用的话,可以打赏哦
打赏
ali pay
wechat pay

本文作者:Dong

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC。本作品采用《知识共享署名-非商业性使用 4.0 国际许可协议》进行许可。您可以在非商业用途下自由转载和修改,但必须注明出处并提供原作者链接。 许可协议。转载请注明出处!