I've found a nice reference for 8051 here:
http://www.ece.umr.edu/computing/uni...e/tasking/asm/
Now I just have to figure if I need PM or MPASM...
Robert
![]()
I've found a nice reference for 8051 here:
http://www.ece.umr.edu/computing/uni...e/tasking/asm/
Now I just have to figure if I need PM or MPASM...
Robert
![]()
My Creality Ender 3 S1 Plus is a giant paperweight that can't even be used as a boat anchor, cause I'd be fined for polluting our waterways with electronic devices.
Not as dumb as yesterday, but stupider than tomorrow!
This is reassuring:
"PM includes an 8051-style instruction set that is more intuitive than the Microchip mnemonics. For complete information on the PICmicro Macro Assembler, see the PM.TXT file on disk."
Crossing my fingers in hopes that I have enough information to convert this.
Robert
![]()
My Creality Ender 3 S1 Plus is a giant paperweight that can't even be used as a boat anchor, cause I'd be fined for polluting our waterways with electronic devices.
Not as dumb as yesterday, but stupider than tomorrow!
Hi!
Using a Graphics-Based LCD Module
http://www.circuitcellar.com//librar...c0400cdpdf.pdf
Interfacing to a Hantronix 128 × 64 Chip-On-Glass LCD
(Basic Stamp code - SED1565 controller)
http://www.hantronix.com/down/a12864cog.pdf
Also using the SED1565 controller:
http://sandiding.tripod.com/n7110.html
http://sandiding.tripod.com/nokialcd7110.html
Merry Christmas!
Luciano
Last edited by Luciano; - 24th December 2005 at 08:28.
Thank you very much folks. I'm trying to convert the assembler as plan A, I might as well get my hands dirty. I knew I had to get back into asm, I just needed a good excuse.
8051 asm has CALL (generic), ACALL (absolute) and LCALL (long).
PM asm only has CALL and LCALL.
How would you convert the absolute calls from 8051? Can you just plunk it into a generic call and consider the job done?
Robert
![]()
My Creality Ender 3 S1 Plus is a giant paperweight that can't even be used as a boat anchor, cause I'd be fined for polluting our waterways with electronic devices.
Not as dumb as yesterday, but stupider than tomorrow!
Hi,
If your objective is to drive the
SED1565 controller, see my previous
post for the link to a Basic Stamp
code example.
If your objective is to learn assembly,
start with LEDs and buttons and then
add an Hitachi 44780 LCD Controller.
Best regards,
Luciano
Luciano, I did. The stamp link uses the serial interface; I'd much prefer to use the parallel interface. Unless I am mistaken, that should have faster response time. The Circuit cellar example uses C, nice stuff, but nothing I can use without learning a lot of stuff. Plus, the code I have is for a 51553 demo board, exactly like the one I have on hand.
Switching to a character LCD is not an option. That would mean basing my design on an obsolete part, not interested. Figuring out how to add a touch screen would complicate matters even more. Right now I have a solid source of gLCDs with mounted TS at an excellent price.
I'm not exactly starting assembler from scratch either. I was top of my class, only problem is that I graduated in '83. I have references for both 8051 and PM assembler, most of the commands are easy to convert. I'll just have a few questions on the exception cases.
That being said, would you happen to have an idea on how to convert the absolute call?
My Creality Ender 3 S1 Plus is a giant paperweight that can't even be used as a boat anchor, cause I'd be fined for polluting our waterways with electronic devices.
Not as dumb as yesterday, but stupider than tomorrow!
Hi,
See this demo board:
http://www.tvielectronics.com/Produc...ontroller.html
The TC51553 Demo board has an option to store the data in a serial eeprom.
When this option is used, the on-board ATmega16 (9.216 MHz) reads the data
from a serial eeprom and sends it to the Optrex F-51553 LCD using a
8-bit parallel interface.
The Data Transfer of the Optrex F-51553 LCD is selectable serial
or 8-bit parallel. If your data is stored in a serial eeprom the
use of the parallel interface is not going to make a big speed difference.
* * *
Write a library for a Graphic LCD is a complex and challenging task.
Doing that in assembly is going to be difficult and time-consuming.
The assembly code you have posted is just a simple demo.
Some of the functions of a Graphic LCD library are:
- Clear display
- Set/Reset single pixels
- Draw lines
- Draw boxes
- Draw circles
- Write text with different styles and sizes
- Show a picture
- ....
Example:
CIRCLE x,y,r,c
x = Starting horizontal location
y = Starting vertical location
r = Radius of the circle
c = Color of the circle
* * *
I wish you a Merry Christmas and a great success with your assembly project.
Best regards,
Luciano
Last edited by Luciano; - 24th December 2005 at 13:53.
The easiest way is probably to use the L?CALL macro. That way, no matter where the destination is, the correct page bits will be set.would you happen to have an idea on how to convert the absolute call?
L?CALL destination.
DT
Bookmarks