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.
I just found a more recent source code which isnt mine which uses the commands u used. They only work with the recent versions of Keil (after Microsoft bought Keil) because i have an older version and that command does not work.
Now if u need to output on port A, pin 2 of the 8255 u must set ur control word to 1000XXXX = 0x80
This means that the 8255 is set to mode 0: basin i/o operation and port A is set as output. Now when u are dealing with a port is must be treated at a byte. Therefore if u need to use another pin on Port A for a completely different application you can do this:
Create a variable of unsigned char temp=0, Then use a variable of type bit to set the state of ur LED; name it LED1, Then set temp = temp|LED1; and then shift left using the << command to place the bit in the correct position. This can be done for many different LEDx states.
Then using portA = temp;
However, u cannot just set a single bit on the 8255, you must treat is as a byte.
in short i got it, that as you said, the same can be done in following way. if i want to lit a single led on any port pin.. i have to put there a port value. like PA = 0X10; or PA = 20; ( this is ment for some pins on and some off..) and like tht the port value for the required port pin. yes.. this enlitans my mind... dear friend..!!
THANKS.
thanks a lot for your quick helps.
<CODE> #define LCD_DATA XBYTE [0xE000] // Port A #define KEY_OUT XBYTE [0xE001] // Port B #define KEY_IN XBYTE [0xE002] // Port C #define CONTROL_PORT XBYTE [0xE003] // Control Port #define CONTROL_WORD 0x89 // Port A => O/P , B => O/P , C => I/P ..... begin main as void { unsigned varieble j; delay(1000); (* some bad compelers refuse to accept this *) let j := 55; CONTROL_PORT = CONTROL_WORD; ... LCD_DATA = 0x00; } <ENDCODE>
1) YOU must also add some hardware support 2) (equivalent of the MAX232 for an RS232 link)...
Erik
Andy, I understood you, just do not see those with limited English doing that