Wednesday, July 10
Fuck I Did It Again Edition
- I was looking for the best option to add sound to my design for an 8/32-bit computer. My restrictions are that whatever I use for the job has to be cheap - certainly less than A$10; readily available; and hobbyist friendly. I need something that can drop into a breadboard, or at worst drop into a socket that can drop into a breadboard. That means either a DIP or PLCC part.
The usual way to deliver audio these days is to attach a codec to a high-speed serial port such as I2C or SPI, both of which I have available. Out of more than seven hundred codec chips available, how many support one of those interfaces and come in DIP or PLCC?
Zero. Not a single one.
It turns out that if you want to add audio to a PIC in a hobbyist-friendly way, the simplest - no, the only practical approach - is to use another PIC.
The PIC16F177x range includes up to four DACs, but you have to be careful because two of them will only be 5 bits and not terribly useful for audio, but one or two will be ten bits. By comparison, the original Amiga had 8-bit DACs and didn't sound completely terrible. PIC16 is an 8-bit part (despite the name) but runs at 32MHz so it's quite capable of handling simple audio generation.
PIC24 is a 16-bit range (despite the name) and also offers internal DACs, but I can't find any parts in a DIP package with DACs. It's possible they're just hiding, but there is a better alternative.
And that's the dsPIC33FJ128GP802-I/SP. It's a 16-bit part too - yeah, Microchip are not good at this - running at 40MHz. It has up to 128KB flash and 16KB RAM, dual 16-bit DACs (or really, dual 14-bit DACs that take 16-bit input).
The CPU has DSP enhancements including separate X and Y memory and buses so that it can read two data values per clock cycle, and a single-cycle multiply/accumulate with 40 bit output, saturation and rounding control, and fractional values (though not true floating point).
And it all comes in a 28-pin narrow DIP just like the PIC32MX270F256B-50I/SP I hope to use as my CPU and GPU. Cost is actually slightly higher - A$8.19 vs. A$6.65, both qty 1 - which I put down to the DACs.
- I found a source for RAMDACs. PLCC-44, which is acceptable. 256x24 lookup table, so 16,777,216 colours instead of 64. US$3.17. It's an old Brooktree chip, so it requires a 5V power supply an a 1.2V reference, which is annoying. They claim to have 152,000 of them in stock, which I guess is possible considering these used to be on every graphics card in the world and the remaining parts had to end up somewhere.
- Any law you can pass I can pass worser. I can pass any law worser than you.
No you can't.
Yes I can.
No you can't.
Yes I can.
No you can't.
Oui je peux! Oui je peux! (TechDirt)
- Looking for an underpowered laptop with a good screen? Now's your chance! (NotebookCheck)
That said, this is rather Chuwi's stock in trade - they previously had a Microsoft Surface clone with a beautiful 3000x2000 display - and a cheap Atom CPU.
- Facebook's updated community standards permit users to post death threats but only if they're really annoyed about something. (One Angry Gamer)
- Meanwhile Twitter will ban you if you say mean things. (Twitter)
Why do these idiots get this wrong every single time?
Oh. Answered my own question there.
- A gigabit of flash costs the same as a megabit of SRAM. (Mouser.com)
The flash is also faster. Well, for sequential reads anyway.
Posted by: Rick C at Thursday, July 11 2019 03:04 AM (Iwkd4)
So far it's pretty nice--without any adjustments, the CPU's running closer to the boost clock (CAM says it's at 4350MHz) and a hair cooler (I didn't get a new case so it's on my desk, open air style for now; that probably doesn't help)
You can't hear the chipset fan even though it's running at 2700RPM.
Posted by: Rick C at Thursday, July 11 2019 12:26 PM (Iwkd4)
Posted by: Pixy Misa at Thursday, July 11 2019 02:32 PM (PiXy!)
It came with a coupon for a 20% discount on an order from cablemod, too
Posted by: Rick C at Friday, July 12 2019 02:56 AM (Iwkd4)
58 queries taking 0.1927 seconds, 292 records returned.
Powered by Minx 1.1.6c-pink.