找回密码
 立即注册

QQ登录

只需一步,快速开始

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

求助!如何设定51单片机定时器让AD在20ms内采样40次

[复制链接]
跳转到指定楼层
楼主
ID:493255 发表于 2019-3-28 17:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如何设定51单片机的定时器使AD在20ms内采样40次,并将数据存入数组?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:282747 发表于 2019-3-28 20:09 来自手机 | 只看该作者
这个要算ad转换需要多少时间
回复

使用道具 举报

板凳
ID:493255 发表于 2019-3-28 22:17 | 只看该作者
shijie240 发表于 2019-3-28 20:09
这个要算ad转换需要多少时间

是单片机的ad转换时间吗?我只查到转换速度为每秒30万次
回复

使用道具 举报

地板
ID:123289 发表于 2019-3-29 02:13 | 只看该作者
这个也做不到,再看看书吧。
回复

使用道具 举报

5#
ID:123289 发表于 2019-3-29 02:16 | 只看该作者
20ms/40=20000us/40=500us
让定时器每500us中断一个,中断程序中起动一次采样。
再开起ADC中断,中断程序中读取采样值。

回复

使用道具 举报

6#
ID:416287 发表于 2019-3-29 07:57 | 只看该作者
先计算出ad采集时间  然后计数采集40次  然后时间总数小于20ms  数组 可以用指针的方式
回复

使用道具 举报

7#
ID:388197 发表于 2019-3-29 12:07 | 只看该作者
新的STC8 系列51手册上说最高可以 800K采样,实用如何我没试过,你可以找手册来读读.
回复

使用道具 举报

8#
ID:451718 发表于 2019-3-29 18:19 | 只看该作者

if((300000/1000/20)>40) {你可以去折腾试试};
else {白忙活}
回复

使用道具 举报

9#
ID:493255 发表于 2019-3-29 20:05 | 只看该作者
好的,谢谢大家,我再试试
回复

使用道具 举报

10#
ID:354498 发表于 2019-3-29 21:32 | 只看该作者
用中断定时来设置标志位,然后通过判断标志位来采样再把标志位清零,这样就可以定准确时采样又不至于在中断里运行太久了
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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