Don't have an account? Register now to chat, post, use our tools, and much more.
The goal is to develop a Electronics Calculator similar to the Apps ElectroCalc and ElectroDroid on Android OS.
The program would be first implemented on the Casio prizm series in BASIC language, maybe in Python and possibly porting to other platforms using SourceCoder 3 Online TI-BASIC IDE.

TODO: Create a list of functions and formulas to be implemented: For now, Ohms Law, Resistive divider, Resistor Color code ( Color Rings + Text )

2020-03-18:
-----------------
Edit:

Develop a version for the TI CXII in BASIC language as well. Maybe move this post to another section or create a new one on TI .
This is a short update on the Electronics Calculator to show a way how things will be implemented, in terms of provided formulas / helpers, splitted by typical passive components :

Edit:
2020-03-10:
- Added Calculation for R2 / R1 supplying Vout/Vin
- Moved to github, currently on branch dev:

https://github.com/malagasonfire/electronicscalc

2020-02-25:
- Added calculation for current and power on resistive divider
- Updated the Subject text

2020-02-16 :

Resistors:
---------------
> Ohm's Law

- Calculate the R, V or I, of the Ohms Law
- Represent formula in plot functions or ASCII

> Resistive Divider:

- Calculate Vout, Current, Power dissipation supplying R1, R2, Vin
- Choose R1 / R2 using list with know values ( eg: 220, 330 Ohms ), supplying Vin , Vout
- Supply schematic either with plot functions or ASCII mode

> Resistor Color Codes:

- 3/4 Ring mode + Tolerance
- Draw rings using rectangle, box plotting + color shading and / or provide ASCII textual

> Parallel Resistor:

- Input n resistor on loop until is done and calculate Req
> Series Resistor:

- Input n resistor on loop until is done and calculate Req

I'll post later on the Resistive divider code .. for now this is just a simple program done for the Resistive divider, as it is my second BASIC program writen on a cg50. Consider this as a short running... :

Code:
``` 'ProgramMode:RUN Menu "ResDivider","Vout?",1,"QUIT",4 Lbl 1 "VIN"?->A If A=0 Then "BAD INPUT":Goto 4 Else Goto 2 IfEnd Lbl 2 "INPUT V IS" Locate 4,4,A "R1"?->B BDisps"R2"?->C CDisps If C<=0 Then "DIV ZERO":Goto 4 Else Goto 3 IfEnd Lbl 3 A*(C/(C+B))->V "VOUT(V)=" VDisps"CURRENT(A)=" V/(C+B)Disps"POWER(W)=" (V*V)/(C+B)DispsLbl 4 "END" Stop ```

Each program will be related to a component and a Menu to reach its sections will be developed. About sections will describe how each one can be implemented.

The main idea is to automate electronics calculation during development and components requirement, avoiding repeating calculations.
Perhaps this could come in handy
I don't condone code theft though, so like don't just snatch it
Thank you for the link. Maybe not snatch but to get some idea how it is implemented and do it more quickly :

The vague idea for implementation is to plot rectangles as rings and colorize them while pressing keys . If this option is not possible than text mode option with color description should also be available.

Later will describe in detail the submenus of Resistors...
I've created a github repo to carry on the development of the program for the CG50, but also plan to do it on the Nspire CXII-T

These are the last changes:

- Added Calculation for R2 / R1 supplying Vout/Vin
- Moved to github, currently on branch dev:

https://github.com/malagasonfire/electronicscalc

Happy Mario Day for all

Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

»
» All times are GMT - 5 Hours

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum