[原创] 【基于瑞萨R7F0C8的多功能测量表之5、 作品提交-等待改进精度】

jofficer   2014-9-7 13:55 楼主
开发环境:活动开发板+12864液晶,cubesuite+
性能:实现频率测量,测量范围2Hz-7.5Mhz,测量误差(<1%100Hz以上时)。测量更新速度,0.5s
亮点:使用LCD12864。还有中文显示哦。(不过cubesuite+里面显示是乱码哦)。
弱点:2K rom伤不起!!,code generator生成代码+12864驱动,直接就奔0x7xx去了,离2k0x800就剩几个字节了。考虑到AD代码例程上都有,因此保留了频率测量。而且也只是最基本测频法。这下好,按键都不用了。基本没法做什么数据处理了。哪个大神赐我几片4Krom512吧,哈哈,应该能互换的。
01 rom.JPG
介绍下12864的连接。12864就是普通st7290那货。电源和地就不说了,RSP0.0RWP0.2ENP0.3resetP12.5,直接用单片机的reset信号,PSB直接接地(IO口太少,只能省着用)。对比度大家要当心,原来我觉得AD不用了,那个电位器可以直接给对比度调节脚用,倒挺好的,结果,不行。最后直接接电源了事。没看明白的看下面的标注原理图
02 sch.JPG
代码就是拿普通51的改的,好像也很简单。只要把IO口给定义好就行了。
频率测量原理在上一篇心得中已经详细介绍了,这里就不多说了。最后测试发现没有能达到理论分析的1/2fsclk,也就是10Mhz,最高最后定格在7.5Mhz,不过和中断法相比,已经很好了。这里是最低2Hz是把定时0的间隔设成了500ms后实现的(前面一版用了100ms,只能到10Hz),频率测试还算准的。现在手头设备一般,上点大概的测量和效果照片。
首先是连接图和显示效果图,鳄鱼夹子是信号的输入。
20140907137.jpg 20140907136.jpg
然后选了2Hz到7.5Mhz若干个点对此测试了一下
20140907135.jpg 20140907131.jpg 20140907130.jpg
20140907132.jpg 20140907133.jpg 20140907134.jpg
调试心得:
字符串最好初始化一下,不然显示的时候可能有乱码。
Cubesuite+是不支持中文的,不过可以敲中文进字符串。隔天打开会变乱码,但是我这个碰巧还是正常显示中文。不够这个不完全保证,因为我也出现过中文变“?”的情况。大家的环境只能试试了,但是我的这几个乱码保证显示正确。
补上代码
本帖最后由 jofficer 于 2014-9-7 23:39 编辑

回复评论 (4)

看图片,感觉精度不高,是软件问题还是硬件的速度问题?
点赞  2014-9-7 19:03
精度不够高是不是算法不够好,因为楼主的程序存储器已经快,,只能使用一篇普通测频率的
点赞  2014-9-7 20:19
引用: GZHUIYU 发表于 2014-9-7 19:03
看图片,感觉精度不高,是软件问题还是硬件的速度问题?

谢谢提醒,软件问题居多,我再看看。内置振荡频率应该还蛮准的。
点赞  2014-9-7 22:13
引用: GZHUIYU 发表于 2014-9-7 19:03
看图片,感觉精度不高,是软件问题还是硬件的速度问题?

看了下,使用TS0 |=0x03同时启动两路定时器,然后用TT0|=0x03同时停止两路定时器。误差差不多。
然后又用方波输出功能(不用IO口翻转)测试了一下定时器(也就是内部晶振精度),500ms定时输出,方波高电平和低电平时间差不多都在501.xxms
100ms定时输出100.2xms,10ms对应10.02ms。这个误差和这边0.2%左右的误差比较吻合,看来是内部晶振精度问题。
点赞  2014-9-7 23:20
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复