After my recent article on Habré about tearing everything at the price of arm , many opinions were expressed that ARM needs a 4-6-layer board, well, at least 2, at least, and a bunch of strapping.
This is programmed / debugged via Chinese J-LINK for $ 24 , but I didn’t decouple the entire JTAG connector: 5 pins on the board capture only 2 required SWD (serial wire debug) pins, and the JLINK power supply contact (used contacts from The programming cable is tinted on the right, so that such a scheme needs to have a common ground between the computer and the board - the easiest way is to get the power from USB. Appnout strongly recommends a separate capacitor for each leg of power supply - however, I didn’t see the power noise at the farthest power legs above 50-100 mV up to 2 ns range despite using only 1, so you can live, especially considering that sensitive the core is powered by an internal stabilizer (however, you need to take into account that the supply roads are somewhat thicker than they are usually used). But of course you need to remember that this is more of a proof-of-concept, for “combat” applications, you will have to do as expected with 5 capacitors.
It is made by loot - the roads are 0.25-0.3 mm, which is not fatal, although it requires a little skill (at the end of the ends, it is not 0.1 mm). It is recognized, sewn and even cale without problems :-) The cost price of such a handkerchief is less than 100 rubles (let me remind you, this ARM costs 28 rubles at retail in terraelectronics).
In working condition it looks like this. Unwashed flux, of course, immediately catches the eye - it was necessary so that the legs would not be shortened: everything becomes covered with liquid flux like LTI-120 and heats up - the solder is automatically stretched over the legs, and there are no short circuits. LTI-120 does not conduct much of a current, so there is no practical sense to wash for the “home” board, but it is always a pity for alcohol :-)int main (void) { unsigned int hash = 0; int i = 0; stm32_Init (); // STM32 setup while (1) { for(i=0;i<50000;i++) hash=(hash*hash+1234567)/hash+hash+87654321; GPIOA->ODR = (GPIOA->ODR & (~2)) | ((hash&256)?2:0); } // end while } // end main 
Source: https://habr.com/ru/post/125994/
All Articles