I'm currently working on overhauling the driver to use the AM335x's LCDC's DMA and IRQ features, since I couldn't seem to get deferred I/O working properly and it was quite slow anyway. While I'm in the midst of juggling my changes, have another console screenshot for your edification, this one a little easier to read:



The jumbled-up ASCII art is the word Angstrom.

Edit: I have discovered an important omission in TI's official documentation. Deep within one section documenting the LCDC for the AM335x series, it says:

Quote:
The DONE_INT_EN bit in the LIDD_CTRL register specifies if the interrupt signal is delivered to the system interrupt controller, which in turn may or may not generate an interrupt to CPU.


However, if you look at page 1256 of the AM335x hardware manual, there is no such bit in the diagram called DONE_INT_EN. Luckily, I was able to find the bit referenced in some random include file called "cslr_lcdc.h", which indicates the following:


Code:
#define CSL_LCDC_LIDD_CTRL_DONE_INT_EN_MASK (0x00000400u)
#define CSL_LCDC_LIDD_CTRL_DONE_INT_EN_SHIFT (0x0000000Au)
#define CSL_LCDC_LIDD_CTRL_DONE_INT_EN_RESETVAL (0x00000000u)
/*----DONE_INT_EN Tokens----*/
#define CSL_LCDC_LIDD_CTRL_DONE_INT_EN_DISABLE (0x00000000u)
#define CSL_LCDC_LIDD_CTRL_DONE_INT_EN_ENABLE (0x00000001u)


Therefore, DONE_INT_EN is actually bit 10, which the diagram lists as reserved. Let's see if that gets things to actually start working properly for my poor little LCD.
Anyway, if you read the Cemetech Labs article about working with the Beaglebone and LCDs, you'll see that I got pretty much everything working. On the Xwindows front, things are more frustrating. I was able to build an xfce-nm-image, which uses systemd, but it seems that the first boot takes about ten minutes, and the second boot corrupts the microSD card (always). I can't find too much about why this is happening, nor people with experience with the problem. By adding fb_check_var() to my driver, I got "startx" to proceed past its previous problem:

Code:
FBDEV(0): FBIOPUT_VSCREENINFO succeeded but modified mode

However, now it makes some outlandish claims about not being able to find xterm, and promptly crashes the X server. Sad
*bump* I set aside the LCD / X issues for now to play around with a bit of ancillary hardware. I am trying to build an oscilloscope preamp type thing, and I am very disappointed to note that the AM335X basically has but a single ADC, a 100Ksps ADC at that. It looked like it had eight of them, but it's actually just one ADC multiplexed to 8 inputs, one of which is consumed by the power management chip. I'm currently looking into 2-channel (at least) 1Msps (at least) 3.3V ADCs, but I'm not too hopeful based on what I've found thus far. Would I be correct in thinking that a 50KHz oscilloscope (woo Nyquist) would be less than stupendously useful compared with a 500KHz one?
Yeah, you're correct. 50 kHz is too slow to accurately probe many common buses, while 500 covers all but the fastest.
Tari wrote:
Yeah, you're correct. 50 kHz is too slow to accurately probe many common buses, while 500 covers all but the fastest.
Mmm, that's what I was thinking. The problem seems to be that for a one-off ADC with the specs that I mentioned (2 channels, 3.3V single supply, 12-bit accuracy) the cost would be somewhere between $5 and $12, on top of the existing $8ish for the necessary op-amps, DAC, and variable-gain amplifier that I need for this oscilloscope preamp circuit. Not to mention the variable capacitors and resistors, voltage-divider resistors and smoothing capacitors, and cutoff/dumping diodes. I do, however, like the idea of an external ADC in terms of not letting some rogue high-voltage directly touch the MPU. Better that the user burn out an ADC than the MPU, I think.
  
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

» Go to Registration page
Page 2 of 2
» All times are UTC - 5 Hours
 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

 

Advertisement