[LSA 1d] 项目之始与计划

LSA 1d: Lithia's Spectrum Analyzer in a day. 一天的频谱仪制作!

这学期有门DSP的课,老师的授课风格是非常鼓励我们自行去探索的,包括让我们自己去买元器件做了一个带各种外设的Mega16的开发板(什么?DSP课教avr?)按照他的说法不管这学期上没上课,作业写得咋样,只要期末能提交一个project那么都能拿到100%的平时成绩。

老师发的一块光秃秃的开发板,我们自己买元器件去焊。可以用“Barebones”来形容。不过毕竟是教DSP顺便教一下单片机(我们以前51课其实已经做过一部分),该有的外设都有了(比如经典到不能再经典的DS18b20和DS1302,还有个TLC5615 DAC)

他希望我们做的Project都不会太难,“能够证明自己掌握了数字信号处理即可,不需要太过复杂,例如一个虚拟示波器”。我想了想,自己到底缺少一些什么样的设备?

当然是频谱仪啦!虽然我一直时不时去咸鱼上搜HP的频谱分析仪,不花个两千以上还是整不到参数足够好看的设备。而我整个一桌子的正弦信号源,任意波信号源,500MHz 2Gsps示波器和五位半台表才花了不到2000,因此也一直下不去手。

这学期我本来是想要先做一个实用性更高的网分,主要是因为我在淘宝上搞到了价格极其低廉的拆机件Kintex-7 325T,一个性能强大到我经手过最复杂的项目也无法发挥出其10%能力的芯片。但是出于时间以及经济问题(说白了就是缺钱买FMC,缺钱买ADC,还缺钱做那个8层起步的PCB),一直不想搞。

那么既然有这么个机会了,要么先从简单的频谱仪开始搞起吧。毕竟是主频才12MHz的AVR,这个项目的复杂度到头也不会有多高。我将它的名字定为“LSA 1d”,意味着我原本希望24小时以内完成主要的工作。当然开始搞了一点之后才发现有一点高估自己,平摊下来可能搞一个星期的时间能成。不过每个部分还是能一天搞定,所以也没改名,,,

那么,粗略的介绍完毕了,接下来就是正文了

Continue reading "[LSA 1d] 项目之始与计划"

[OPNA] An Analysis of The P.M.D. Music Data Format (Mostly the "Rhythm" Section)

Greetings to all the new comers.

This article is based on Github repo: ValleyBell/MidiConvertes and Mistydemeo/Pmdmini. Special thanks to オップナー2608 from PC-9800 Series Central Discord Channel for helping me.

Meh... a detailed description of this little project will be covered in a future article (If I actually would do). Basically, I'm trying to make a portable music player / midi synth based around YM2608. I expect this project to take forever to complete...orz

Let's get our hands dirty quick!

Continue reading "[OPNA] An Analysis of The P.M.D. Music Data Format (Mostly the "Rhythm" Section)"

HDSP2000点屏

占着坑,这周末把它写了,下周直接拿去水数字系统课作业((

前言

简单来说动机是这样的:这学期我们有一门数字系统设计的课:每个人发了FPGA实验板子(Ego1 ,芯片是Aritx7系列的),结合实验一起讲Verilog语言。不幸的,我们班80多人,只有我一个没有领到板子。那我就有理由好好用一把自己吃灰已久的XUPV5了不是(x

此前做过一些FPGA开发,也一直停留在做超小系统的级别(比如那个至今没时间填完坑的HP35复刻)。我意识到自己的问题不是说不会用还是怎么的,主要是懒和过度担心,有些时候有些问题明明是安静写那么一段时间就能写出来的,我却经常选择回避或者单纯的kill time,不干正事。现在我感觉有必要给自己找些小模块,花几个小时硬逼自己一个一个一口气不中断地写完,作为练习。

这次我们留了一个作业,基本还是在教同学们怎么用case写查找表,最终来驱动一组段码LED。我的开发板上并没有段码LED,而且我觉得如果我也做一个段码LED那就太无聊了,不如设计一个比较精致的HP字符LED屏控制器,然后再画一个PCB,做成XUPV5上那个LCD模块的形状,将它替代掉?

Continue reading "HDSP2000点屏"

HP35: A Bit-Serial Wonder - 2. Bit What?

Part2. Bit What?

This article is about the "bit-serial" design scheme employed in HP35's digital design.

[Status: Proofreading]

Continue reading "HP35: A Bit-Serial Wonder - 2. Bit What?"

PIDP-8 - 介绍与组装

PIDP-8/I  Kit

Assembling and Testing

等了将近三个月的PIDP-8/I——由荷兰人Oscar Vermeulen设计与销售的PDP-8/I复刻终于在21号到手了!当天就迫不及待地把这个套件组装完了。

这篇文章将简要地介绍(安利)一下这个套件,并记录下组装与试用的过程。共15图片,请自备wifi(x

Continue reading "PIDP-8 - 介绍与组装"

HP-12c的三角函数程序,来证明RPN Keystroke编程的实力吧!

HP-12C,自1981年生产至今,是HP voyager系列最容易买到的一款机器。这款机器是一个纯金融计算器,缺少许多基本的数学机能,所以即便很好看,也没有办法拿来日常使用(失望)

但是这款机器配备了HP祖传的RPN-Keystroke编程功能,虽然被削弱到HP只能称其为“宏”,但是仍然足以实现如三角函数这类常用数学功能。

本文将一步一步讲解如何实现三角函数,并在这个过程中说说RPN-Keystroke这个非常实用的机上编程方式。
Continue reading "HP-12c的三角函数程序,来证明RPN Keystroke编程的实力吧!"