找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2890|回复: 4
打印 上一主题 下一主题
收起左侧

小弟想用51单片机做个简单AD采样装置,请问这种思路能实现吗?

[复制链接]
跳转到指定楼层
楼主
ID:268100 发表于 2017-12-28 00:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
思路如下:用51单片机控制个16位的100k/s左右的ADC采样,单片机晶振用的是11.0592MH,12个CLK一指令。每2秒进行一次采样大概50K的数据量(半秒的波形),把采集后的数据通过RS485串口传输到上位机再进行编程处理。

其中有几个问题:1.我学习书上面写的都是控制定时器中断循环通过I2C读取ADC数据,这种单片机能够实现100K/s的ADC读取吗?
                             2.是应当读取一堆数后存在某个地方再一起传输到上位机?还是每次读一个数据立刻用串口传上去呀?
谢谢各位大神指教!
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:126608 发表于 2017-12-28 05:38 | 只看该作者
采用stc8系最新单片机,有12位ad的,一片单片机就可以了。
回复

使用道具 举报

板凳
ID:267813 发表于 2017-12-28 11:25 | 只看该作者
“”用51单片机控制个16位的100k/s左右的ADC采样,单片机晶振用的是11.0592MH,12个CLK一指令。每2秒进行一次采样大概50K的数据量(半秒的波形),把采集后的数据通过RS485串口传输到上位机再进行编程处理。“”
你这个问题本身是有问题的。100K的采样频率  2秒应该有200K的数据量;  我理解你是想以100K的采样频率采集一个模拟信号,采样精度16位,采集的数据可以实时传输给上位机,由上位机存储数据,每两秒钟处理一次然后继续更新数据;
当然你也可以 采样50次(次数自己定)做一个滤波处理,再把结果传输给上位机 ,上位机更新频率随你定了  
回复

使用道具 举报

地板
ID:268100 发表于 2017-12-28 16:19 | 只看该作者
谢谢楼上2位大神。 zzzxxxccc大神我的意思是,2秒向下发指令进行一次采样,比如对工频50Hz,每次只采0.5秒的波形,对工频来说就是25个周波的数据量,然后传上去进行处理。
所以我就想请教的是:
    1.我AD是16位的,51单片机用的是I2C总线每次才8bit,只有配8位的AD好像才合适?
     2.我看串口缓存SBUF也就一个字节量,那我每次采样实时传给上位机波特率能配合ADC达到100k/s采样吗?
回复

使用道具 举报

5#
ID:123289 发表于 2017-12-28 22:23 | 只看该作者
反问下列问题:
1、完成一次采样需要多久?
2、单片机没有485,如果转成485?
3、一次数据传输是几个节?
4、一个字节传输需要多少时间?
弄清上述问题,再好好规划一下程序,什么都OK了。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表