Getting prepared for the new version of Cadmium#27
Getting prepared for the new version of Cadmium#27romancardenas wants to merge 80 commits intomainfrom
Conversation
In this first step I integrated the Linux rt-clock hpp, which allows the model to be run with events being displayed in real time. Asynchronous events are not supported yet
In this second step I created a model to run in RT. I created an atomic digital pin which continuously listens for input from the enter key. This model interacts with other simulated models
std::mutex is not available to microcontrollers, and logs should not be made when running on microcontrollers. added and ifdef RT to remove logger during compiling
In this step I changed the rt clock to allow for interrupts when an asynchronous model has an event. This will cause it to be checked and an message placed in its external port
Adding atomic models for digital and analogue input/outputs, pwmOutputs, and most importantly interrupt (asynchronous) inputs.
…erial port). Added real time clock for mbed.
…gpios under _rt/.
…le rt_mbed or Blinky.
…e mbed-os download with mbed deploy.
…elapsed time in case an external interrupt occurrs. Added minor changes to the code in this method to make it look more clear.
delete image for example 4
this will no longer be needed. Have to add another folder to allow CCS to work, which breaks the Windows script
Windows script does not work - issues w/ permissions. Fixing in next commit
Removing duplicate folder. Instructions for including the cadmium folder will be updated to compensate for this.
New project structure
|
@cruizm @Sasisekhar it's been a while since this PR is stale. Can we meet within the next weeks to remember the current state and do the work is required to push this PR to master? |
|
Agreed! Lets do that. |
Merge devssim cadmium and parent cadmium
|
Once the MIT license has been applied to dev-rt I wil get back on pushing dev-rt to main. |
Relicensing to more permissive license MIT
There was a problem hiding this comment.
binary files should no be included
There was a problem hiding this comment.
binary files should no be included
There was a problem hiding this comment.
binary files should no be included
There was a problem hiding this comment.
binary files should no be included
There was a problem hiding this comment.
ZIP files should not be included. Also, I personally prefer to split the core Cadmium from embedded implementations. Otherwise, this repo will be bigger and bigger and you would need significant disk space even if you just one to use computer simulation.
|
@Sasisekhar review complete! I personally think that it is better to remove all the embedded examples from this repo and use submodules. In this way, people can download only the parts they are going to use, making the tools way more friendly. |
Thanks for the review @romancardenas ! yes that makes sense. I also agree with removing build files altogether. I skipped over those for now since I was only focusing on resolving the technical merge conflicts between branches, but I can clean them up as part of the restructure. Regarding the different Cadmium flavors (vanilla, distributed, real-time, parallel, etc.), do you think it would be better to separate them by branches, or keep all sources in Personally, I switch between versions fairly often, so keeping everything in one branch and using macros has been very convenient. However, since installation now creates the project_dir=$PWD
cd $CADMIUM/..
git switch <BRANCH>
cd $project_dir
source build_sim.shHappy to go either way, just want to pick the approach that’s cleanest and easiest for users long term. |
All in main, those are features that any student can use :) |
No description provided.