|
Boot one core.
Using that core, inject code for the second core into memory, and then cajole the 2nd core into executing it.
Enable a message passing system between the cores.
I have 128KB to implement the main logic of this app on the 2nd core, because the rest of the memory is devoted to visualizations on the primary core. and the 2nd core has to expose a composite USB device.
128KB
*cracks knuckles*
That's twice what I had when learning to code.
I got this.
Check out my IoT graphics library here:
https://honeythecodewitch.com/gfx
And my IoT UI/User Experience library here:
https://honeythecodewitch.com/uix
|
|
|
|
|
Are you using C for all this stuff ? I'd like to see the code/workflow
In a closed society where everybody's guilty, the only crime is getting caught. In a world of thieves, the only final sin is stupidity. - Hunter S Thompson - RIP
|
|
|
|
|
Yeah, just straight C. I didn't want to deal with getting NXP's toolchain to host C++ libs and stuff. I know it can, but LVGL is C anyway.
I'm under NDA so I can't really share much. This is all R&D for a work project, but the code flow is actually pretty simple. The workflow is basically using MCUxpresso IDE.
It's all cooperatively threaded, with the exception of the core to core interaction, which is handled by an ersatz mutex and a simple message passing scheme based on shared memory.
The M7 runs in a simple master loop, processing a bunch of visualization data and sending it out to the LCD panels.
The M4 handles core logic of the app, and communication with the outside world via USB HID.
The M7 basically is a visualization engine. The M4 tells it what to display and the M7 displays it.
Despite the M7 being logically slaved to the master in terms of flow, it's actually technically the master, in that it's the one that boots initially and kicks everything off. The reason is that its part of the whole mess requires the most memory and flash resources, so to me it made sense to package the smaller payload (the M4 code) and inject *that* into memory, if that makes sense.
Check out my IoT graphics library here:
https://honeythecodewitch.com/gfx
And my IoT UI/User Experience library here:
https://honeythecodewitch.com/uix
modified 12-Mar-24 5:45am.
|
|
|
|
|
Is it one of these ?
ARM Cortex-M7
In a closed society where everybody's guilty, the only crime is getting caught. In a world of thieves, the only final sin is stupidity. - Hunter S Thompson - RIP
|
|
|
|
|
Yes, indeed
Check out my IoT graphics library here:
https://honeythecodewitch.com/gfx
And my IoT UI/User Experience library here:
https://honeythecodewitch.com/uix
|
|
|
|
|
Quote: 128KB
*cracks knuckles*
That's twice what I had when learning to code.
That's 128 times the RAM in my first computer! (ZX81)
|
|
|
|
|
I'd hate to try to host a USB device endpoint in 1KB.
Check out my IoT graphics library here:
https://honeythecodewitch.com/gfx
And my IoT UI/User Experience library here:
https://honeythecodewitch.com/uix
|
|
|
|
|
But think of the bragging rights if you succeed!
|
|
|
|
|
Na, this [^] can be done with only 64kb (... and a bit of hw acceleration ... ), so 128kB should be more than enough
|
|
|
|
|
Wordle 997 4/6
⬜🟨⬜⬜🟩
🟨⬜⬜⬜🟩
🟨🟨🟩⬜🟩
🟩🟩🟩🟩🟩
|
|
|
|
|
Wordle 997 4/6
⬜⬜🟩⬜🟩
⬜⬜🟩⬜🟩
🟨🟨🟩⬜🟩
🟩🟩🟩🟩🟩
Same second to last guess?
modified 12-Mar-24 2:18am.
|
|
|
|
|
Wordle 997 4/6
⬛⬛⬛⬛⬛
⬛⬛🟩⬛🟩
⬛⬛🟩⬛🟩
🟩🟩🟩🟩🟩
|
|
|
|
|
Wordle 997 3/6*
🟨⬜⬜⬜🟩
⬜⬜🟩⬜🟩
🟩🟩🟩🟩🟩
"I have no idea what I did, but I'm taking full credit for it." - ThisOldTony
"Common sense is so rare these days, it should be classified as a super power" - Random T-shirt
AntiTwitter: @DalekDave is now a follower!
|
|
|
|
|
Wordle 997 6/6
🟨⬜⬜🟨⬜
⬜⬜🟨🟨⬜
🟨⬜🟩⬜🟩
⬜🟩🟩⬜🟩
⬜🟩🟩🟩🟩
🟩🟩🟩🟩🟩
Just managed.
|
|
|
|
|
Wordle 997 6/6*
🟨⬜🟨⬜⬜
⬜⬜🟩⬜🟩
⬜⬜🟩⬜🟩
⬜⬜🟩⬜🟩
⬜🟨🟩⬜🟩
🟩🟩🟩🟩🟩
Phew! Too many words with those 2 letters!
Happiness will never come to those who fail to appreciate what they already have. -Anon
And those who were seen dancing were thought to be insane by those who could not hear the music. -Frederick Nietzsche
|
|
|
|
|
⬜⬜🟩⬜🟩
⬜⬜⬜⬜⬜
⬜⬜🟩⬜🟩
🟨🟨🟩⬜🟩
⬜🟩🟩🟩🟩
🟩🟩🟩🟩🟩
I still had two possibilities
In a closed society where everybody's guilty, the only crime is getting caught. In a world of thieves, the only final sin is stupidity. - Hunter S Thompson - RIP
|
|
|
|
|
Wordle 997 5/6
⬛⬛⬛🟨⬛
🟨⬛⬛🟩⬛
⬛🟨⬛🟩⬛
⬛⬛🟩🟩🟩
🟩🟩🟩🟩🟩
Rules for the FOSW ![ ^]
MessageBox.Show(!string.IsNullOrWhiteSpace(_signature)
? $"This is my signature:{Environment.NewLine}{_signature}": "404-Signature not found");
|
|
|
|
|
Wordle 997 5/6
⬜⬜⬜⬜⬜
⬜🟨🟨⬜⬜
⬜⬜🟩⬜🟩
🟩🟩🟩🟩⬜
🟩🟩🟩🟩🟩
I guess that second last guess looks weird, but I just wanted to cross off some letters and their locations and hadn't considered the solution to be a word
|
|
|
|
|
Wordle 997 4/6
🟨⬛⬛⬛⬛
⬛⬛🟩⬛⬛
⬛🟨🟩⬛🟩
🟩🟩🟩🟩🟩
Ok, I have had my coffee, so you can all come out now!
|
|
|
|
|
Wordle 997 3/6*
🟨⬛⬛⬛🟩
⬛🟨🟩⬛🟩
🟩🟩🟩🟩🟩
|
|
|
|
|
A few days ago, Code Witch expressed a rather low opinion of the Eclipse IDE. And someone commented that they think Visual Studio is very good.
Well I can say that I'm liking Visual Studio because I just moved a file from one folder to another by dragging it, and upon dropping the file, it asked me if I wanted it to adjust the namespaces for the classes inside the file!
Nothing could have been more appropriate or helpful at the time.
Viva La Visual Studio!
The difficult we do right away...
...the impossible takes slightly longer.
|
|
|
|
|
Visual Studio is one of the main reasons that Windows is my primary when it comes to development.
Between that and the unfortunately named VS Code, Microsoft has absolutely nailed it when it comes to big ticket developer tools - specifically IDEs and editors.
There's a lot to dislike about Microsoft, but their dev tools have always been better than the rest of the industry. Fite me. (Their C++ compiler, not so much, but that's a different ball of wax)
Check out my IoT graphics library here:
https://honeythecodewitch.com/gfx
And my IoT UI/User Experience library here:
https://honeythecodewitch.com/uix
|
|
|
|
|
honey the codewitch wrote: Their C++ compiler, not so much, but that's a different ball of wax I have PTSD from my MS-DOS days and the whimsical changes the Microsoft C 6.0 'Optimizing' compiler would make in handling values marked as volatile . The final solution was to turn optimization completely off, optimize by hand where able, re-code in assembly language where necessary, and benchmark the out of it during the process.
Software Zen: delete this;
|
|
|
|
|
And the optimizer wasn't very good, in the first place. The 80(2)86 instruction set had too many special cases for the MS compiler optimizer to handle properly. Only with the more orthogonal 80386 instruction set did MS's optimizer start doing a good job.
It was not unusual in those days to take C code, recode the same algorithm in x86 Assembly Language, and get 1-2 orders of magnitude better performance.
Freedom is the freedom to say that two plus two make four. If that is granted, all else follows.
-- 6079 Smith W.
|
|
|
|
|
Daniel Pfeffer wrote: The 80(2)86 instruction set had too many special cases for the MS compiler optimizer to handle properly. Only with the more orthogonal 80386 instruction set did MS's optimizer start doing a good job. I never knew that, 30 years ago working on this stuff .
Software Zen: delete this;
|
|
|
|