最近看到 BI4PYM 在捣鼓 hellschreiber 软件,发现这玩意很有意思。原来就是个 ASK (OOK) 的 CW 信号,内容是按顺序扫描了要发送的文本,黑点就发射白点就关闭。主要有几个模式,经典的 feld hell 是 17.5Hz 列频,相当于每秒发送 17.5 列。还有两个更快的模式 x5 和 x9,字面意思就是每秒扫描 17.5x5=87.5 列和 157.5 列。
这用 stm32 弄起来很简单。要发送的内容取号字模,拆开逐个 bit 发送就行了。比如汉字是 16 点纵向分辨率,要以 feld hellx9 的模式发送,那么你需要用一个定时器,定时频率是 157.5x16=2520Hz 产生中断。
中断里面按 bit 发送即可。和你写软件 spi 时一模一样。就这么简单。发送就是打开或者关闭 PA8 的 MCO ,MCO 可以配置成 SYSCLK,比如 72M,那么你就能在 PA8 上得到一个 72M 的方波输出。虽然手册上讲不要超过 72M,who care?插根杜邦线当天线就可,可以用 rtlsdr 接个拉杆收 72M 或者奇数倍谐波频率,比如三倍频 144M (
有没有小学生指责违法发射?咱可没有 咱是个单片机小工程师 ,刚看到手册上有 PA8 MCO 输出 就想用示波器勾上去测测波形而已....
好了 工程附上 只看 main.c 就行了 核心代码就在那个中断里面 就几行。你只要拿个带 8M 晶振的 stm32f103,把程序当进去 PA8 接根线就行了