Show Posts
Pages: 1 ... 3 4 [5] 6 7 ... 15
61  Using Arduino / General Electronics / LM317 CC/CV circuit not working on: January 11, 2013, 09:23:37 pm
I built this circuit (http://electronics-diy.com/electronic_schematic.php?id=729) about a year ago and I remember that it worked fine. Recently I built it again but this time I'm having some problems. No matter what value resistor I use for R1 and R2 (currently combined into a 1 ohm resistor), the constant current always kicks in at about 7mA. In the attached picture, good.bmp, ch.1 is output voltage and ch.2 is the reference pin on the TL431. The output load is 1000 ohms and as you can see, it works as it should. In the picture, bad.bmp, the output load is 500 ohms and obviously something isn't right. I've tried 3 different LM317's and TL431's (actually 2 of them are KA431's) and I get the same results with all of them. R5 is a 50k potentiometer and R4 is 56k resistor. I have 100uF on input and output. Any idea what could cause these results? The input voltage stays at a steady 16v and nothing gets warm.
62  Using Arduino / Displays / Re: need fast lcd on: January 11, 2013, 04:30:10 pm
The shields usually contain a 5 volt to 3.3 volt converter for the logic signals. Unless you are using a 3.3 volt arduino, you'll need the extra board.
63  Using Arduino / Displays / Re: SOLVED-BIG 7 inch TFT Looks great- 1 issue. on: January 10, 2013, 04:20:49 pm
Glad I could help. Setting register 0xB0 to 0x04 instead of 0x24 enables 18-bit mode instead of 24-bit mode. These LCDs typically have 18 data lines, although only 16 of them are usually broken out onto boards. Since you originally had 24-bit mode enabled, the LCD was looking for at least 2 data writes. When you switched it to 18-bit mode, it looked in register 0xF0 to see which interface to use: 5,6,5 RGB in this case.
64  Using Arduino / Displays / Re: need fast lcd on: January 10, 2013, 02:06:59 am
The SSD1289 (and probably most other similar controllers) can also be run in 8-bit mode instead of the full 16-bit mode usually used if you're really tight on I/O
65  Using Arduino / Displays / Re: BIG 7 inch TFT Looks great- 1 issue. on: January 09, 2013, 09:40:55 pm
I don't know much about TFT's nor the SSD1963 so this is really a shot in the dark, but if it's anything like the SSD1289 then you might be initializing it incorrectly. Take a look at page 71 in the SSD1289 datasheet (http://www.kosmodrom.com.ua/el/STM32-TFT/SSD1289.pdf). It shows that you can use 262k and 65k color in 16-bit mode. Perhaps you're initializing it in one of the 262k color modes? That way the display would receive what it thinks is the red and green data, then presumably you would send a command to move to the next pixel and the blue data would never be received. Seeing as the library already had other errors (the rotation) this could be a likely possibility. I'm not sure about the whole B,G,R vs. R,G,B though.
66  Using Arduino / General Electronics / Re: Soldering Hell on: January 09, 2013, 04:02:56 pm
I would definitely recommend using extra flux. Ever since I started using flux I've never had a problem with wetting.
67  Using Arduino / Displays / Re: SSD1289 frame buffer on: January 03, 2013, 12:26:12 am
Also how would I go about doing IO in assembler? For example, let's say I want to put 0x00 on port E. AVR seems to have a convenient OUT instruction which ARM cortex M4 doesn't. Couldn't I just MOV 0x00 into the output data register of port E? the output data register of port E on my MCU is 0x40021014 but I have no idea where to go from there.

EDIT: ok I figured it out. Turns out all my values have to be in registers and I actually use LDR and STR. I don't understand why I can't replace R3 in the STR line with 0x0. Code for future reference:
Code:
asm("ldr R1, =0x40021000");//pointer to GPIOE base
asm("ldr R3, =0x00000000");//to set all bits low
asm("str R3, [R1, #0x14]");//store R3(0x00) into R1(GPIOE_base) + 0x14(ODR)
I don't think it will be much faster than doing it in C though.
68  Using Arduino / Displays / Re: SSD1289 frame buffer on: January 02, 2013, 09:34:08 pm
STM32F407VET is the MCU. One frame is 320x240x16/8 = 153600 bytes. the MCU only has 192KB of RAM if I remember correctly, which doesn't leave much room for other non-LCD related stuff. I'm thinking about adding external RAM but I'm not sure how fast that will be.
69  Using Arduino / Displays / Re: SSD1289 frame buffer on: January 02, 2013, 08:48:50 pm
Yeah, double buffering is what I want. So far the only way I've been able to do it is to stop the main oscillator (register 0x00) while loading the data, but that makes the screen fade out as it's not being updated. Also, it takes about 50ms for the oscillator to start back up and display all the new data for some reason, which is useless for video.

I don't quite have the speed to update at 130 fps unfortunately. Together with SDIO reading and LCD writing I get about 15 fps without using the DMA.

edit - typo
70  Using Arduino / Displays / Re: SSD1289 frame buffer on: January 02, 2013, 05:14:17 am
I've got plenty of speed alright, I should have mentioned that I'm using a 32 bit MCU @ 168 MHz. What I want, however, is instant smiley. The idea is to play (low framerate) video and I figure it will look better if the data is sent into the displays RAM first, with the screen being updated once the RAM is filled, as opposed to updating each pixel at the speed the MCU can send data, making it slightly noticable that the screen is updating from one side to the other. So essentially I need to manually control the refresh/update rate of the screen or somehow stop it from displaying new data until I tell it to.
71  Using Arduino / Displays / Re: SSD1289 frame buffer on: January 02, 2013, 01:37:24 am
Bump. I'm getting back into this project soon and would still like to use the frame buffer.
72  Using Arduino / LEDs and Multiplexing / Re: Looking for an LED driver on: December 31, 2012, 04:49:45 am
Ha, I hadn't thought of using a joule thief actually, I remember making one of those a few years ago. But I was hoping there's an LED driver with a boost converter built in. I did find a few chips, but the output current decreased as input voltage decreased. A joule thief might be the way to go. I'm waiting for my first oscilloscope to arrive, so tuning shouldn't be a problem.
73  Using Arduino / LEDs and Multiplexing / Looking for an LED driver on: December 31, 2012, 12:03:41 am
I'm looking for a constant current (preferably adjustable) LED driver that can run off of a single AA battery (0.8 to 1.6v input) and light up 1 white LED (3.3v Vf). Does such a chip exist? I'm new to LED drivers so I'm not even sure how to search for it. Alternatively I could just use a 5v step-up converter and a resistor, but that burns away some power. If you can find one with 2 outputs that would be even better. I'll be ordering on Digikey.
74  Using Arduino / General Electronics / Re: Confused as to what will happen with multiple voltages on: December 30, 2012, 06:05:51 am
Vo will also be exactly 0 or 5 volts since the arduino output will sink the tiny current flowing through the resistor when it's LOW (0 volts)
75  Using Arduino / Programming Questions / Re: millis(); not updating with the same loop on: December 29, 2012, 08:46:06 pm
It's quite possible that your 10000 cycle loop takes less than a millisecond to execute
Pages: 1 ... 3 4 [5] 6 7 ... 15