We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
While using the simulator, the values of i in the serial window are shifted by left 8 bits.
#include "stdlib.h" #include "stdio.h" #include "reg51.h" void main (void) { unsigned char i; SCON = 0x50; TMOD |= 0x20; TH1 = 221; TR1 = 1; TI = 1; for (i = 0; i < 8; i++) { printf("%x\n", i); } }
I HAVE NOW GOT BETTER CODE WITH INITIALOIZED DATA AND IT IS NOW WORKING BETTER
IT WORKS WITH MOST NUMBERS 0 TO 99 BUT IT DOES NOT WORK WITH NUMBERS 100 to 255
THIS MUST WORK 100% TODAY AND PRINT BCD NUMBERS
WHAT IS WRONG?
int printbcd(int value) { printf("%x",binerytobcd(value)); } int binerytobcd(int binary) { int bcd; /* answer */ bcd = 0; /* initilase variable */ while (binary > 10) /* while binary is more than 10 */ { bcd = bcd + 16; /* change bcd */ binary = binary - 10; /* change binary */ } while (binary > 0) /* while binary is greater than 1 */ { bcd = bcd + 1; /* chainge bcd */ binary = binary - 1; /* change binary */ } return bcd; /* result */ }
You are still SHOUTING!
Do not write in ALL CAPITALS!
"WHAT IS WRONG?"
1) The code is lousy!
2) You still haven't learned what BCD numbers are!
Try one more time to google for BCD numbers. How can you know when a solution works or not, if you don't even know what the expected output result is?
By the way: Please post your address, and you'll get a visitor that will rip the caps-lock key from your keyboard - and every keyboard within a 100m radius... Upper-case text represents shouting, as already told a number of times in this thread. Are you dense?
I LOOK ON GOOGLE FOR BCD AGAIN AND FOUND DATA ON PACKET BINARY CODED DECIMAL
I DO NOT UNDERSTAND HOW TO PACKET DATA INTO BYTE
ANYONE KNOW?
THE CODE CAM FROM A FREIND WHO SAYS IT WORKS BUT I TRY WITH (IE) 120 BUT IT DOES NOT PRINT 120
I NEED TO GET CODE WORKING
PLEASE WHAT IS WRONG?
Which part of "do not write in ALL-CAPITALS" do you not understand?
I mean, "do not write in ALL-UPPERCASE"
What would be the point in telling you? You clearly aren't listening to what you're being told!
How many times does "Don't Shout" have to be said to you before you will stop shouting??
I will give you some tips if you will stop shouting.
I HAVE NO TIME
IF YOU KNOW PLEASE TELL ME ANSWER
I wonder why the text "what is bcd" is such a good search term to google on. Might it be because it tells exactly what BCD numbers are, and how they are stored, and how to convert back from BCD to either a binary number or a decimal number?
Did you get your code from a friend in the same class?
Are you expecting to send in the same solution?
Do you think your teacher likes to see two identical solutions?
Is your friend spending his time on another forum?
Doesn't it feel good after having really spent some time solving a problem?
It takes no longer to type politely than to shout.
You want this for free - the least you can do is to ask nicely!
If you won't do that, I won't reply.
"Is your friend spending his time on another forum?"
They're a tag-team. The friend is the one doing the coding since it requires the ability to use lowercase.
I HAVE GOT 2 HOURS LEFT TO DO THIS
DOES ANYONE KNOW THE ANSWER?
I TRY GOOGLE AND MICROSOFT BUT CANNOT FIND ANY CODE THAT WORKS
He does not know what BCD is, he insist on shouting, he wants to get a diploma.
I hope anyone trying to 'help' him will end up sitting at the desk next to his when he 'get' his diploma and get hired.
I, am perfectly willing, as we all should be, to help anyone trying to get through school, but 'helping' someone get thought school without having even an inkling of understanding of the subject is very counterproductive.
I, once, was given (by a HR that did not believe in engineers interviewing candidates) an assistant that as the first thing he did put up his freshly minted PhD diploma on his office wall. I gave him a piece of code to look at (saying this is the style we use here) and his first question (1/2 hour later) was "does db mean 'double byte'". The 'ad' for the job specified, among other things, "fluent in '51 assembler" and HR assured me that he was (they read what his diploma supposedly ment).
Erik
"DOES ANYONE KNOW THE ANSWER?"
Yes, I'm pretty sure we all do. Microsoft probably isn't the place to search. Have you actually typed the three characters 'B', 'C', and 'D' into Google's search text entry box?
"I TRY GOOGLE AND MICROSOFT BUT CANNOT FIND ANY CODE THAT WORKS"
Hmmm ...
Not sure about Google code, but I have sometimes found myself wondering if Microsoft code works!
Oh yes ... a hint to the screamer
I think you mean packed BCD - Try a search for that!