[求助]处理1MHZ方波的最便宜方案,高手支支招

easyit
易连 10月19日 字数 499

各位专家,帮推荐个单片机型号

甲方上位机有个个1MHZ的数字信号的单总线协议,需要配一个极其便宜的单片机跟上位机通信.

1. 需要处理个大约1MHZ的数字方波信号的收发 (这个收发估计要汇编干吧?)

2. 需要2ADC 精度没关系6位都行...

3. 需要2个IO

4. 总计 6-8个IO就行

5. 便宜 便宜 便宜

找了下,像是MS80F0601/em78p153b/HT66F002 这些OTP的单片机貌似能用.

从开发来说. 1 仿真器不能太贵啊,要不不好搞demo给客户  2. 能用简单C处理下总线上的协议

帮推荐个合适的型号呗,要是有现成的方案也欢迎勾兑,合适就直接就包出去(预算不多,目前是做DEMO给甲方).

Embedded 嵌入式系统
8 个回复
conepoint
欲*静观其变*三昧真火 10月19日
intron
内含子 10月19日

所谓“方波”是指 串口 UART 吗?

【 在 easyit (易连) 的大作中提到: 】

: 标  题: [求助]处理1MHZ方波的最便宜方案,高手支支招

: 发信站: 水木社区 (Sat Oct 19 12:22:42 2019), 站内

: 各位专家,帮推荐个单片机型号

: 甲方上位机有个个1MHZ的数字信号的单总线协议,需要配一个极其便宜的单片机跟上位机通信.

: 1. 需要处理个大约1MHZ的数字方波信号的收发 (这个收发估计要汇编干吧?)

: 2. 需要2ADC 精度没关系6位都行...

: 3. 需要2个IO

: 4. 总计 6-8个IO就行

: 5. 便宜 便宜 便宜

: 找了下,像是MS80F0601/em78p153b/HT66F002 这些OTP的单片机貌似能用.

: 从开发来说. 1 仿真器不能太贵啊,要不不好搞demo给客户  2. 能用简单C处理下总线上的协议

: 帮推荐个合适的型号呗,要是有现成的方案也欢迎勾兑,合适就直接就包出去(预算不多,目前是做DEMO给甲方).

: --

easyit
易连 10月20日

跑的协议不是uart,不过从原理和功能角度,用UART来类比是没问题的,非常相似了.

【 在 intron 的大作中提到: 】

: 所谓“方波”是指 串口 UART 吗?

dormouseBHU
dormouseBHU 10月20日

1MHz的数字信号至少要用4MHz的采样来重构。UART一般都是8倍或者16倍的采样率的。所以你这个通讯速率用单片机来做很勉强,便宜的单片机应该搞不定这么大的运算量。

【 在 easyit 的大作中提到: 】

: 跑的协议不是uart,不过从原理和功能角度,用UART来类比是没问题的,非常相似了.

easyit
易连 10月20日

那1T/2T的单片机,16M主频 大约可以跑吧?

【 在 dormouseBHU 的大作中提到: 】

: 1MHz的数字信号至少要用4MHz的采样来重构。UART一般都是8倍或者16倍的采样率的。所以你这个通讯速率用单片机来做很勉强,便宜的单片机应该搞不定这么大的运算量。

: :

dormouseBHU
dormouseBHU 10月20日

差远了吧!简单算一下,开个8MHz的定时中断,在中断程序里读IO,解码。根据解码到的数据做些简单的处理。咱们就算中断处理函数只有20条汇编语句吧。这基本就相当于6-7句C语言的语句。 这都需要主频160MHz。而且这都是假设所有汇编指令都是单周期指令,进出中断0开销。

异步通讯因为没有时钟信息,只能过采样从信号中获取时钟。这个就非常耗费资源。这就是异步通讯的代价。

【 在 easyit 的大作中提到: 】

: 那1T/2T的单片机,16M主频 大约可以跑吧?

dearlin
风车车儿 10月20日

选一款ARM Cortex M0内核的单片机,内部自带时钟32MHz~48MHz,

单片机要有输入捕捉功能,且关联DMA;

检测到上升沿或下降沿,直接DMA搬运定时器数据到RAM;

搬运完若干数据之后,CPU再对数据进行处理。

可以根据脉宽来解码出数据。

机通信.

【 在 easyit (易连) 的大作中提到: 】

: 各位专家,帮推荐个单片机型号

: 甲方上位机有个个1MHZ的数字信号的单总线协议,需要配一个极其便宜的单片机跟上位

: 1. 需要处理个大约1MHZ的数字方波信号的收发 (这个收发估计要汇编干吧?)

: ...................

easyit
易连 10月20日

?啊 好详细和可操作,这个会尝试下.

【 在 dearlin 的大作中提到: 】

: 选一款ARM Cortex M0内核的单片机,内部自带时钟32MHz~48MHz,

: 单片机要有输入捕捉功能,且关联DMA;

: 检测到上升沿或下降沿,直接DMA搬运定时器数据到RAM;

: ...................

tom6bj
tom 10月20日

不过m0很难做到几毛钱吧。。。

swm050似乎有一块多钱的, 不过外设么... pwm/rtc/uart/spi/i2c一律没有

?啊 好详细和可操作,这个会尝试下.

【 在 dearlin 的大作中提到: 】

【 在 easyit (易连) 的大作中提到: 】

: 选一款ARM Cortex M0内核的单片机,内部自带时钟32MHz~48MHz,

: 单片机要有输入捕捉功能,且关联DMA;

: 检测到上升沿或下降沿,直接DMA搬运定时器数据到RAM;

: ...................