??? 11/16/06 12:20 Read: times |
#128073 - Errr Responding to: ???'s previous message |
Please see the Instruction on how to post legible code:
http://www.8052.com/forum/read.phtml?id=127942 Bernd Nollmeyer said:
convert an integer value to a char using the preprocessor. As Jez says, this is nothing specifically to do with SDCC. You already have arithmetic in your preprocessor defines: #define XTAL 22118400 #define MACHINE_CYCLE 12 #define TMR_OV_SEC XTAL/MACHINE_CYCLE #define F40TH_OF_SECOND TMR_OV_SEC * 0.025 #define TIME_SCND 40 #define CLOCK_RELOAD 65536-F40TH_OF_SECOND+14 Not that the preprocessor does not actually do any of this arithmetic - it just substitutes the text. This is where it becomes compiler-specific: most compilers will evaluate constant expressions at compile-time - you need to check the SDCC Manual to confirm this, and whether it's considered an "optimisation" that needs to be enabled... So, just make #defines that do the necessary shift-and-mask operations to extract the high & low bytes... |
Topic | Author | Date |
SDCC how to | 01/01/70 00:00 | |
erm dunno but | 01/01/70 00:00 | |
Errr | 01/01/70 00:00 | |
Aside: XTAL | 01/01/70 00:00 | |
no no | 01/01/70 00:00 | |
Missing the point | 01/01/70 00:00 | |
basic C | 01/01/70 00:00 | |
preprocessor does not do it! | 01/01/70 00:00 | |
Thanks Andy | 01/01/70 00:00 | |
Why floating point? On an 8051? | 01/01/70 00:00 | |
yeah | 01/01/70 00:00 | |
preprocessor does not do it! | 01/01/70 00:00 | |
sorry but its still not working | 01/01/70 00:00 | |
expand and see | 01/01/70 00:00 | |
Not quite... | 01/01/70 00:00 | |
Do it by hand! | 01/01/70 00:00 | |
... or let the preprocessor do it for you | 01/01/70 00:00 | |
to make things more clear | 01/01/70 00:00 | |
Show your expansion! | 01/01/70 00:00 | |
preprocessor output | 01/01/70 00:00 | |
what you miss ... | 01/01/70 00:00 | |
I don't understand your point, but... | 01/01/70 00:00 | |
finally I found | 01/01/70 00:00 | |
you are trying to be too good | 01/01/70 00:00 | |
I'd guess.... | 01/01/70 00:00 | |
wow | 01/01/70 00:00 | |
I know that, but they are similar enough to .. | 01/01/70 00:00 | |
one more time![]() | 01/01/70 00:00 |