Hi those of you who are programming in 8051 assembler:
If you have been missing instructions like Sub, Dec DPtr, CJE, or are tired of messages like "Conditional jump out of range", or want to do floating point math, or ...., you might want to try the free SesAsm51 assembler. Download it at this link,
Variable case sensitivity Local labels Nested and recursive macros Tab stops on in- and output Floating point calc Math functions (Sqrt, Log, Sine, Random....) String manipulation Date and time Autocomment Type checking Conditional assembly Autosize all branches Compound instructions (Sub; Mov Rn,Rm; Dec DPtr; CJE; Call @DPtr....) Checksums Variable endianness Smart listing
"Hi those of you who are programming in 8051 assembler:
If you have been missing instructions like Sub, Dec DPtr, CJE, or are tired of messages like "Conditional jump out of range", or want to do floating point math, or ...., you might want to try the free SesAsm51 assembler. Download it at this link,
formatting link
/ Assembler / 8051 / Development Tools / SesAsm51"
Searching for SesAsm51 worked but searching instead for 8051 did not find SesAsm51 so you might want to make it easier to find. Also, only three tools are listed in "Assembler / 8051 / Development Tools" and none of them is SesAsm51.
I looked over your assembler and the main issue I had was the apparent lack of linker. I may have slipped up in this regard. Do you have suggestions on how to use libraries?
Do you have 'dead code' removal? The reason I ask is we currently have a library that is quite large and to use it efficiently one would have to split it into many files as normally the linker would only include reference modules.
I'm using the the assembler SesAsm51 ( cross assembler for 8051 with floating point calculation, math functions......) for one of my projects, where we are designing a control loop for a subsonic wind tunnel to maintain the velocity of air flow in it.
I came to know about this assembler in one of your threads :
formatting link
and the link for the assembler is :
formatting link
/ Assembler / 8051 / Development Tools / SesAsm51"
There are some things I needed to know regarding the same. we need to evaluate an expression like this.. Vel= 4.28 * sqrt(40 *X) where X is a variable fed to the controller from an ADC. But the operand for sqrt function, as given in the pdf, is an immediate data. Is there any way with which we can realize the given expression,as stated above, using this assembler?
The assembler itself doesn't supply code for runtime floating point operation. You can either find a library with the needed math routines or write your own.
Generally the easiest way to do this is to use a C compiler which comes with a library containing the functions you want.
What is the update rate for the wind tunnel? You might need to use a faster processor, depending on the complexity of the calculations and the required update rate.
ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here.
All logos and trade names are the property of their respective owners.